[meld] meldwindow: Work around broken UIManager life cycle again (bgo#779880)



commit 0498e7047b1b4d6a351e5f374059b90aa179a9c8
Author: Kai Willadsen <kai willadsen gmail com>
Date:   Sat Mar 11 09:55:07 2017 +1000

    meldwindow: Work around broken UIManager life cycle again (bgo#779880)
    
    This is very similar to bgo#755407, and the "fix" is basically the same,
    even though the reproduction is different. This looks like it was
    reintroduced when we removed the tabs menu, because the code that was
    previously calling ensure_update() was removed along with the tab menu
    recreation.
    
    This was fine in most cases, but resurfaced with closing the second of
    multiple windows. I have no desire to find out why, and there's no
    chance of getting this fixed in GTK+, thus this hack.

 meld/meldwindow.py |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
---
diff --git a/meld/meldwindow.py b/meld/meldwindow.py
index 4078c69..ce9dbd8 100644
--- a/meld/meldwindow.py
+++ b/meld/meldwindow.py
@@ -512,6 +512,9 @@ class MeldWindow(gnomeglade.Component):
         if not self.has_pages():
             self.on_switch_page(self.notebook, page, -1)
             self._update_page_action_sensitivity()
+            # Synchronise UIManager state; this shouldn't be necessary,
+            # but upstream aren't touching UIManager bugs.
+            self.ui.ensure_update()
             if self.should_close:
                 cancelled = self.widget.emit(
                     'delete-event', Gdk.Event.new(Gdk.EventType.DELETE))


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]