]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkoffscreenwindow.c
stylecontext: Do invalidation on first resize container
[~andy/gtk] / gtk / gtkoffscreenwindow.c
index 9a86e2ba9c4014c9b14437ef8e47133628ac25fd..8e9f23f02ce997649891ec1aa933c16e88b80851 100644 (file)
@@ -183,7 +183,7 @@ gtk_offscreen_window_realize (GtkWidget *widget)
   window = gdk_window_new (gtk_widget_get_parent_window (widget),
                            &attributes, attributes_mask);
   gtk_widget_set_window (widget, window);
-  gdk_window_set_user_data (window, widget);
+  gtk_widget_register_window (widget, window);
 
   child = gtk_bin_get_child (bin);
   if (child)
@@ -220,13 +220,10 @@ static void
 gtk_offscreen_window_show (GtkWidget *widget)
 {
   gboolean need_resize;
-  GtkContainer *container;
 
   _gtk_widget_set_visible_flag (widget, TRUE);
 
-  container = GTK_CONTAINER (widget);
-  need_resize = _gtk_container_get_need_resize (container) || !gtk_widget_get_realized (widget);
-  _gtk_container_set_need_resize (container, FALSE);
+  need_resize = _gtk_widget_get_alloc_needed (widget) || !gtk_widget_get_realized (widget);
 
   if (need_resize)
     gtk_offscreen_window_resize (widget);