+Tue Oct 5 21:00:54 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change
+ and applied owen's leaner conditional flag update which should be good
+ enough to preserve resizing flag invariants.
+
2004-10-05 Matthias Clasen <mclasen@redhat.com>
* NEWS: Updates
+Tue Oct 5 21:00:54 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change
+ and applied owen's leaner conditional flag update which should be good
+ enough to preserve resizing flag invariants.
+
2004-10-05 Matthias Clasen <mclasen@redhat.com>
* NEWS: Updates
+Tue Oct 5 21:00:54 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change
+ and applied owen's leaner conditional flag update which should be good
+ enough to preserve resizing flag invariants.
+
2004-10-05 Matthias Clasen <mclasen@redhat.com>
* NEWS: Updates
+Tue Oct 5 21:00:54 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): reverted my last change
+ and applied owen's leaner conditional flag update which should be good
+ enough to preserve resizing flag invariants.
+
2004-10-05 Matthias Clasen <mclasen@redhat.com>
* NEWS: Updates
g_return_if_fail (GTK_IS_WIDGET (widget));
alloc_needed = GTK_WIDGET_ALLOC_NEEDED (widget);
- GTK_PRIVATE_UNSET_FLAG (widget, GTK_ALLOC_NEEDED);
+ if (!GTK_WIDGET_REQUEST_NEEDED (widget)) /* Preserve request/allocate ordering */
+ GTK_PRIVATE_UNSET_FLAG (widget, GTK_ALLOC_NEEDED);
old_allocation = widget->allocation;
real_allocation = *allocation;
old_allocation.y != real_allocation.y);
if (!alloc_needed && !size_changed && !position_changed)
- {
- if (GTK_WIDGET_REQUEST_NEEDED (widget))
- { /* another resize has been queued */
- gtk_widget_queue_resize (widget);
- }
- return;
- }
+ return;
g_signal_emit (widget, widget_signals[SIZE_ALLOCATE], 0, &real_allocation);
gtk_widget_invalidate_widget_windows (widget->parent, invalidate);
gdk_region_destroy (invalidate);
}
-
- if (GTK_WIDGET_REQUEST_NEEDED (widget))
- { /* another resize has been queued */
- gtk_widget_queue_resize (widget);
- }
}
/**