[gtk+] GtkStack: Avoid some unnecessary complication
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] GtkStack: Avoid some unnecessary complication
- Date: Tue, 23 Jun 2015 10:45:25 +0000 (UTC)
commit 7ce96cb6ac28eeb62e003dcb9e0a8ce7d48e09e0
Author: Matthias Clasen <mclasen redhat com>
Date: Tue Jun 23 06:44:31 2015 -0400
GtkStack: Avoid some unnecessary complication
We already have an in-destruction flag, so use it.
gtk/gtkstack.c | 19 +++----------------
1 files changed, 3 insertions(+), 16 deletions(-)
---
diff --git a/gtk/gtkstack.c b/gtk/gtkstack.c
index e1e4f3b..b2f265b 100644
--- a/gtk/gtkstack.c
+++ b/gtk/gtkstack.c
@@ -142,7 +142,6 @@ typedef struct {
GtkStackTransitionType active_transition_type;
- gboolean destroying;
} GtkStackPrivate;
static GParamSpec *stack_props[LAST_PROP] = { NULL, };
@@ -176,7 +175,6 @@ static void gtk_stack_get_preferred_width_for_height (GtkWidget *widget,
gint height,
gint *minimum_width,
gint *natural_width);
-static void gtk_stack_destroy (GtkWidget *widget);
static void gtk_stack_finalize (GObject *obj);
static void gtk_stack_get_property (GObject *object,
guint property_id,
@@ -402,7 +400,6 @@ gtk_stack_class_init (GtkStackClass *klass)
widget_class->get_preferred_width = gtk_stack_get_preferred_width;
widget_class->get_preferred_width_for_height = gtk_stack_get_preferred_width_for_height;
widget_class->compute_expand = gtk_stack_compute_expand;
- widget_class->destroy = gtk_stack_destroy;
container_class->add = gtk_stack_add;
container_class->remove = gtk_stack_remove;
@@ -1017,8 +1014,9 @@ set_visible_child (GtkStack *stack,
gboolean contains_focus = FALSE;
/* if we are being destroyed, do not bother with transitions
- * and notifications */
- if (priv->destroying)
+ * and notifications
+ */
+ if (gtk_widget_in_destruction (widget))
return;
/* If none, pick first visible */
@@ -1852,17 +1850,6 @@ gtk_stack_compute_expand (GtkWidget *widget,
}
static void
-gtk_stack_destroy (GtkWidget *widget)
-{
- GtkStack *stack = GTK_STACK (widget);
- GtkStackPrivate *priv = gtk_stack_get_instance_private (stack);
-
- priv->destroying = TRUE;
-
- GTK_WIDGET_CLASS (gtk_stack_parent_class)->destroy (widget);
-}
-
-static void
gtk_stack_draw_crossfade (GtkWidget *widget,
cairo_t *cr)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]