summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2020-01-08 10:34:04 -0500
committerMatthias Clasen <mclasen@redhat.com>2020-01-08 10:40:44 -0500
commit173952cbc8dd7eec08bca97a1d322473aafb027f (patch)
treec63151dbee22767962df4286e1fca09cb40fba98
parentea810f176be50471a8f5b5a798aa551ef96bc717 (diff)
downloadgtk+-173952cbc8dd7eec08bca97a1d322473aafb027f.tar.gz
fixed layout: Actually set child transforms
The code was unintentionally appending to the existing child transform, leading to ever-moving children when you call gtk_fixed_put.
-rw-r--r--gtk/gtkfixedlayout.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gtk/gtkfixedlayout.c b/gtk/gtkfixedlayout.c
index 86de960f42..e5c90f15ab 100644
--- a/gtk/gtkfixedlayout.c
+++ b/gtk/gtkfixedlayout.c
@@ -182,7 +182,8 @@ gtk_fixed_layout_child_set_transform (GtkFixedLayoutChild *child,
g_return_if_fail (GTK_IS_FIXED_LAYOUT_CHILD (child));
- child->transform = gsk_transform_transform (child->transform, transform);
+ gsk_transform_unref (child->transform);
+ child->transform = gsk_transform_ref (transform);
layout = gtk_layout_child_get_layout_manager (GTK_LAYOUT_CHILD (child));
gtk_layout_manager_layout_changed (layout);