[gtk+/gtk-3-10] GtkRevealer: Fix size allocation with disabled animation
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/gtk-3-10] GtkRevealer: Fix size allocation with disabled animation
- Date: Mon, 2 Dec 2013 02:48:20 +0000 (UTC)
commit 90e4690111835f88383e0ccbd8f9cb7ae20a85ce
Author: Matthias Clasen <mclasen redhat com>
Date: Sun Dec 1 21:45:17 2013 -0500
GtkRevealer: Fix size allocation with disabled animation
When animation is disabled, we use 'none' as the effective
transition type. So far, this transition type failed to change
the size request, causing the revealer to always take up the
space of the child, even when the child is not shown.
https://bugzilla.gnome.org/show_bug.cgi?id=719568
gtk/gtkrevealer.c | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/gtk/gtkrevealer.c b/gtk/gtkrevealer.c
index 3987158..ed435ec 100644
--- a/gtk/gtkrevealer.c
+++ b/gtk/gtkrevealer.c
@@ -741,7 +741,8 @@ gtk_revealer_real_get_preferred_height (GtkWidget *widget,
GTK_WIDGET_CLASS (gtk_revealer_parent_class)->get_preferred_height (widget, &minimum_height,
&natural_height);
transition = effective_transition (revealer);
- if (transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP ||
+ if (transition == GTK_REVEALER_TRANSITION_TYPE_NONE ||
+ transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP ||
transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN)
natural_height = round (natural_height * priv->current_pos);
@@ -768,7 +769,8 @@ gtk_revealer_real_get_preferred_height_for_width (GtkWidget *widget,
GTK_WIDGET_CLASS (gtk_revealer_parent_class)->get_preferred_height_for_width (widget, width,
&minimum_height, &natural_height);
transition = effective_transition (revealer);
- if (transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP ||
+ if (transition == GTK_REVEALER_TRANSITION_TYPE_NONE ||
+ transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP ||
transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN)
natural_height = round (natural_height * priv->current_pos);
@@ -794,7 +796,8 @@ gtk_revealer_real_get_preferred_width (GtkWidget *widget,
GTK_WIDGET_CLASS (gtk_revealer_parent_class)->get_preferred_width (widget, &minimum_width, &natural_width);
transition = effective_transition (revealer);
- if (transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT ||
+ if (transition == GTK_REVEALER_TRANSITION_TYPE_NONE ||
+ transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT ||
transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT)
natural_width = round (natural_width * priv->current_pos);
@@ -821,7 +824,8 @@ gtk_revealer_real_get_preferred_width_for_height (GtkWidget *widget,
GTK_WIDGET_CLASS (gtk_revealer_parent_class)->get_preferred_width_for_height (widget, height,
&minimum_width, &natural_width);
transition = effective_transition (revealer);
- if (transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT ||
+ if (transition == GTK_REVEALER_TRANSITION_TYPE_NONE ||
+ transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT ||
transition == GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT)
natural_width = round (natural_width * priv->current_pos);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]