summaryrefslogtreecommitdiff
path: root/gtk/gtkframe.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2020-05-03 11:39:58 -0400
committerMatthias Clasen <mclasen@redhat.com>2020-05-04 07:37:25 -0400
commit77cf6cd406ff0ce3d693b5c1a6ebb02681833c34 (patch)
treebc0d0ff48d29dbaa3652c7cb415d7ba4c2ed511a /gtk/gtkframe.c
parent0b4a1bb62fd3382ce0a4783a42a2d3bfada9a396 (diff)
downloadgtk+-77cf6cd406ff0ce3d693b5c1a6ebb02681833c34.tar.gz
frame: Don't queue a resize if xalign changes
We only need to allocate children in this case. While we touch it, rewrite the setter to modern style.
Diffstat (limited to 'gtk/gtkframe.c')
-rw-r--r--gtk/gtkframe.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/gtk/gtkframe.c b/gtk/gtkframe.c
index 26880beb20..6381e6974d 100644
--- a/gtk/gtkframe.c
+++ b/gtk/gtkframe.c
@@ -461,16 +461,12 @@ gtk_frame_set_label_align (GtkFrame *frame,
g_return_if_fail (GTK_IS_FRAME (frame));
xalign = CLAMP (xalign, 0.0, 1.0);
+ if (priv->label_xalign == xalign)
+ return;
- g_object_freeze_notify (G_OBJECT (frame));
- if (xalign != priv->label_xalign)
- {
- priv->label_xalign = xalign;
- g_object_notify_by_pspec (G_OBJECT (frame), frame_props[PROP_LABEL_XALIGN]);
- }
-
- g_object_thaw_notify (G_OBJECT (frame));
- gtk_widget_queue_resize (GTK_WIDGET (frame));
+ priv->label_xalign = xalign;
+ g_object_notify_by_pspec (G_OBJECT (frame), frame_props[PROP_LABEL_XALIGN]);
+ gtk_widget_queue_allocate (GTK_WIDGET (frame));
}
/**