Initialize the size of a <fix-widget>.
authorMatt Birkholz <matt@birkholz.chandler.az.us>
Fri, 30 Sep 2011 01:34:52 +0000 (18:34 -0700)
committerMatt Birkholz <matt@birkholz.chandler.az.us>
Fri, 30 Sep 2011 01:34:52 +0000 (18:34 -0700)
Realize signals often arrive before allocation signals.

src/gtk/fix-layout.scm

index fb867ccf1328e03c21d3591a558c588affcbe8dd..b55006d76836e536091146240e9ad3363b62d9a4 100644 (file)
@@ -70,7 +70,9 @@ USA.
   (let ((alien (gobject-alien widget)))
     (let ((w (->requisition-fixnum width))
          (h (->requisition-fixnum height)))
-      (C-call "gtk_widget_set_size_request" alien w h))
+      (C-call "gtk_widget_set_size_request" alien w h)
+      ;; Init. size, for a realize signal arriving before an allocation.
+      (set-fix-rect-size! (fix-widget-geometry widget) w h))
     (C-call "gtk_widget_set_has_window" alien 1)) ; WILL have when realized
 
   (set-gtk-object-destroy-callback! widget)