widget: Compare adjusted sizes in size_allocate
authorTimm Bäder <mail@baedert.org>
Sun, 6 Oct 2019 16:11:08 +0000 (18:11 +0200)
committerTimm Bäder <mail@baedert.org>
Wed, 9 Oct 2019 14:57:22 +0000 (16:57 +0200)
gtk/gtkwidget.c

index 8880faba97771ab48f2e091866a5f4421420d8d7..4ba950f1e534dca123e98d95d2a347cc04ad04a9 100644 (file)
@@ -4342,8 +4342,6 @@ gtk_widget_allocate (GtkWidget    *widget,
   priv->alloc_needed = FALSE;
 
   baseline_changed = priv->allocated_size_baseline != baseline;
-  size_changed = (priv->allocated_width != width ||
-                  priv->allocated_height != height);
   transform_changed = !gsk_transform_equal (priv->allocated_transform, transform);
 
   gsk_transform_unref (priv->allocated_transform);
@@ -4400,6 +4398,8 @@ gtk_widget_allocate (GtkWidget    *widget,
                                      &natural_height,
                                      &adjusted.y,
                                      &adjusted.height);
+  size_changed = (priv->width != adjusted.width) || (priv->height != adjusted.height);
+
   if (baseline >= 0)
     baseline -= priv->margin.top;