scrolledwindow: Properly remove scrollbars
Instead of keeping an extra ref, then unparent+destroy+unref, don't keep an extra ref and just unparent the scrollbar when appropriate.
This commit is contained in:
@ -2246,7 +2246,6 @@ gtk_scrolled_window_set_hadjustment (GtkScrolledWindow *scrolled_window,
|
||||
priv->hscrollbar = gtk_scrollbar_new (GTK_ORIENTATION_HORIZONTAL, hadjustment);
|
||||
|
||||
gtk_widget_set_parent (priv->hscrollbar, GTK_WIDGET (scrolled_window));
|
||||
g_object_ref (priv->hscrollbar);
|
||||
gtk_widget_show (priv->hscrollbar);
|
||||
update_scrollbar_positions (scrolled_window);
|
||||
}
|
||||
@ -2314,7 +2313,6 @@ gtk_scrolled_window_set_vadjustment (GtkScrolledWindow *scrolled_window,
|
||||
priv->vscrollbar = gtk_scrollbar_new (GTK_ORIENTATION_VERTICAL, vadjustment);
|
||||
|
||||
gtk_widget_set_parent (priv->vscrollbar, GTK_WIDGET (scrolled_window));
|
||||
g_object_ref (priv->vscrollbar);
|
||||
gtk_widget_show (priv->vscrollbar);
|
||||
update_scrollbar_positions (scrolled_window);
|
||||
}
|
||||
@ -2765,8 +2763,6 @@ gtk_scrolled_window_destroy (GtkWidget *widget)
|
||||
gtk_scrolled_window_adjustment_changed,
|
||||
scrolled_window);
|
||||
gtk_widget_unparent (priv->hscrollbar);
|
||||
gtk_widget_destroy (priv->hscrollbar);
|
||||
g_object_unref (priv->hscrollbar);
|
||||
priv->hscrollbar = NULL;
|
||||
}
|
||||
if (priv->vscrollbar)
|
||||
@ -2775,8 +2771,6 @@ gtk_scrolled_window_destroy (GtkWidget *widget)
|
||||
gtk_scrolled_window_adjustment_changed,
|
||||
scrolled_window);
|
||||
gtk_widget_unparent (priv->vscrollbar);
|
||||
gtk_widget_destroy (priv->vscrollbar);
|
||||
g_object_unref (priv->vscrollbar);
|
||||
priv->vscrollbar = NULL;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user