window: Handle attach widget disappearing without weak pointers

Fixes the window not emitting a "notify::attached-to" signal when the
attach-widget goes away.
This commit is contained in:
Benjamin Otte 2013-05-02 16:26:37 +02:00
parent f7ee5450e1
commit 43e6b3aa03
2 changed files with 2 additions and 5 deletions

View File

@ -11052,8 +11052,8 @@ gtk_widget_dispose (GObject *object)
g_clear_object (&priv->muxer);
g_list_free (priv->attached_windows);
priv->attached_windows = NULL;
while (priv->attached_windows)
gtk_window_set_attached_to (priv->attached_windows->data, NULL);
G_OBJECT_CLASS (gtk_widget_parent_class)->dispose (object);
}

View File

@ -2510,7 +2510,6 @@ remove_attach_widget (GtkWindow *window)
{
_gtk_widget_remove_attached_window (priv->attach_widget, window);
g_object_remove_weak_pointer (priv->attach_widget, &priv->attach_widget);
priv->attach_widget = NULL;
}
}
@ -2759,8 +2758,6 @@ gtk_window_set_attached_to (GtkWindow *window,
if (priv->attach_widget)
{
_gtk_widget_add_attached_window (priv->attach_widget, window);
g_object_add_weak_pointer (priv->attach_widget, &priv->attach_widget);
}
/* Update the style, as the widget path might change. */