From b64c450507d22ac74bcadd7faffbb4c1cd588424 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Buclin?= Date: Mon, 31 Jul 2017 23:10:44 +0200 Subject: Make sure to unset the context menu before destroying it (mga#20911) --- NEWS | 2 ++ mgaapplet | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 44e1bf47..8cd05606 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,5 @@ +- fix the context menu in mgaapplet + Version 3.24 - 7 July 2017, Thomas Backlund - translation updates diff --git a/mgaapplet b/mgaapplet index 8b79e045..48fca0d4 100755 --- a/mgaapplet +++ b/mgaapplet @@ -233,8 +233,7 @@ go2State('delayed'); # seems to be some latency with DBus and/or DBusMenu, and when this method # is called too early, it seems to be blocked. So we add a timer here to call # it again to make sure that right-click events will be correctly handled by -# DBusMenu. If the registration fails again, then the 'context_menu' signal -# will be emitted and caught above (mga#20540). +# DBusMenu. Glib::Timeout->add(100, sub { $icon->set_context_menu($menu); 0 }) if $is_plasma; Glib::Timeout->add_seconds(1, sub { @@ -735,6 +734,8 @@ sub go2State { warn ">> ERR:$@" if $@; } + # Unset the context menu before destroying it. + $icon->set_context_menu() if $is_plasma; $menu->destroy if $menu; $menu = Gtk3::Menu->new; foreach (@arr) { -- cgit v1.2.1