[gedit] snippets: get manager size from configure event



commit 8e37516fe95bee70243c485246252758466ec110
Author: Ignacio Casal Quinteiro <icq gnome org>
Date:   Mon Apr 1 19:13:31 2013 +0200

    snippets: get manager size from configure event

 plugins/snippets/snippets/manager.py    |   11 +++++++++++
 plugins/snippets/snippets/shareddata.py |    2 +-
 2 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/plugins/snippets/snippets/manager.py b/plugins/snippets/snippets/manager.py
index 4eb98c7..7ff7342 100644
--- a/plugins/snippets/snippets/manager.py
+++ b/plugins/snippets/snippets/manager.py
@@ -46,11 +46,15 @@ class Manager(Gtk.Dialog, Gtk.Buildable):
         def __init__(self):
                 self.snippet = None
                 self._temp_export = None
+                self._size = (0, 0)
 
                 self.key_press_id = 0
                 self.dnd_target_list = Gtk.TargetList.new([])
                 self.dnd_target_list.add(Gdk.atom_intern("text/uri-list", True), 0, self.TARGET_URI)
 
+        def get_final_size(self):
+                return self._size
+
         def get_language_snippets(self, path, name = None):
                 library = Library()
 
@@ -325,6 +329,13 @@ class Manager(Gtk.Dialog, Gtk.Buildable):
                 lst = entry.drag_dest_get_target_list()
                 lst.add_uri_targets(self.TARGET_URI)
 
+        def do_configure_event(self, event):
+                if self.get_realized():
+                        alloc = self.get_allocation()
+                        self._size = (alloc.width, alloc.height)
+
+                return Gtk.Dialog.do_configure_event(self, event)
+
         def __getitem__(self, key):
                 return self.builder.get_object(key)
 
diff --git a/plugins/snippets/snippets/shareddata.py b/plugins/snippets/snippets/shareddata.py
index 3f41a12..f3268ac 100644
--- a/plugins/snippets/snippets/shareddata.py
+++ b/plugins/snippets/snippets/shareddata.py
@@ -60,7 +60,7 @@ class SharedData(object, metaclass=Singleton):
             return None
 
     def manager_destroyed(self, dlg):
-        self.dlg_default_size = [dlg.get_allocation().width, dlg.get_allocation().height]
+        self.dlg_default_size = dlg.get_final_size()
         self.dlg = None
 
     def show_manager(self, window, datadir):


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