diff options
Diffstat (limited to 'src/gui/BreadCrumbs.cpp')
-rw-r--r-- | src/gui/BreadCrumbs.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/gui/BreadCrumbs.cpp b/src/gui/BreadCrumbs.cpp index 447b06ba..c62a1e06 100644 --- a/src/gui/BreadCrumbs.cpp +++ b/src/gui/BreadCrumbs.cpp @@ -33,8 +33,8 @@ BreadCrumbs::BreadCrumbs(App& app) , _full_path("/") , _enable_signal(true) { - app.client()->signal_object_deleted().connect( - sigc::mem_fun(this, &BreadCrumbs::object_destroyed)); + app.client()->signal_message().connect( + sigc::mem_fun(this, &BreadCrumbs::message)); set_can_focus(false); } @@ -180,6 +180,14 @@ BreadCrumbs::breadcrumb_clicked(BreadCrumb* crumb) } void +BreadCrumbs::message(const Message& msg) +{ + if (const Del* const del = boost::get<Del>(&msg)) { + object_destroyed(del->uri); + } +} + +void BreadCrumbs::object_destroyed(const Raul::URI& uri) { for (auto i = _breadcrumbs.begin(); i != _breadcrumbs.end(); ++i) { |