Bug 590959 - Set child_has_focus flag properly

Previously, this flag wasn't cleared properly when the notebook lost
focus, but only when the notebook was focussed again later.
As this flag is only used to advance correctly focus pages by grabbing
focus to the new page after switching the page, this is not good.
In particular, it can cause a focus grab when programmatically switching
the notebook page and the focus is inside a completely different widget.
This commit is contained in:
Benjamin Otte
2009-08-06 16:25:20 +02:00
parent c44b0d2f7a
commit 6e0af6c252

View File

@ -3094,8 +3094,6 @@ static gint
gtk_notebook_focus_in (GtkWidget *widget,
GdkEventFocus *event)
{
GTK_NOTEBOOK (widget)->child_has_focus = FALSE;
gtk_notebook_redraw_tabs (GTK_NOTEBOOK (widget));
return FALSE;
@ -3978,6 +3976,8 @@ gtk_notebook_set_focus_child (GtkContainer *container,
}
}
}
else
notebook->child_has_focus = FALSE;
GTK_CONTAINER_CLASS (gtk_notebook_parent_class)->set_focus_child (container, child);
}