Commit 26b03332 authored by Debarshi Ray's avatar Debarshi Ray

GtkStackSwitcher: Don't emit notify::visible-child when setting a stack

Synchronizing the visible child with the switcher's toggle buttons can
lead to GtkButton::clicked being emitted twice. Once for the button
that was active before, and once for the button that we just activated.
This leads to notify::visible-child being called twice and one of
them is with the wrong child.

Let's deal with this in the same way we handle the visible child
changing underneath us.

https://bugzilla.gnome.org/show_bug.cgi?id=749021
parent 6a51ac59
......@@ -300,7 +300,9 @@ populate_switcher (GtkStackSwitcher *self)
if (widget)
{
button = g_hash_table_lookup (priv->buttons, widget);
priv->in_child_changed = TRUE;
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE);
priv->in_child_changed = FALSE;
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment