fix regressions introduced by 29582de6 (fix for SL#1742)

GTK pops down the palette before it invokes the actions on the
menu item. We need to postpone destruction of the palette until
after all signals have propagated from the menu item to the
palette owner.

Symptoms included the "View Details" palette menu item in the Journal list
view not working.

Signed-off-by: Sascha Silbe <silbe@activitycentral.com>
Acked-by: Simon Schampijer <simon@laptop.org>
This commit is contained in:
Sascha Silbe 2011-03-03 14:30:30 +01:00
parent ca02d59e11
commit 85e714ecb1

View File

@ -643,7 +643,13 @@ class Invoker(gobject.GObject):
if self._palette is not None:
self._palette.popdown(immediate=True)
self._palette.props.invoker = None
self._palette.destroy()
# GTK pops down the palette before it invokes the actions on the
# menu item. We need to postpone destruction of the palette until
# after all signals have propagated from the menu item to the
# palette owner.
gobject.idle_add(lambda old_palette=self._palette:
old_palette.destroy(),
priority=gobject.PRIORITY_LOW)
self._palette = palette