forked from AuroraMiddleware/gtk
GtkNotebook: fix crash when DnD tabs between windows
When doing DnD between windows the tab label is set as the child of the DnD info window. If this is happening the remove method of GtkNotebook should not unparent the tab label, since it's been already unparented, belongs to the DnD window and will be properly destroyed when the DnD is over. https://bugzilla.gnome.org/show_bug.cgi?id=639875
This commit is contained in:
parent
912375ff38
commit
eeb9de80e1
@ -4958,7 +4958,10 @@ gtk_notebook_real_remove (GtkNotebook *notebook,
|
||||
gtk_widget_unparent (page->child);
|
||||
|
||||
tab_label = page->tab_label;
|
||||
if (tab_label)
|
||||
/* Do not unparent the tab label if it's already in another
|
||||
hierarchy. It means we are in the middle of a DnD and it's
|
||||
already taken care of. */
|
||||
if (tab_label && NOTEBOOK_IS_TAB_LABEL_PARENT (notebook, page))
|
||||
{
|
||||
g_object_ref (tab_label);
|
||||
gtk_notebook_remove_tab_label (notebook, page);
|
||||
|
Loading…
Reference in New Issue
Block a user