summaryrefslogtreecommitdiff
path: root/gtk/gtkcolorbutton.c
diff options
context:
space:
mode:
authorJuan Pablo Ugarte <juanpablougarte@gmail.com>2014-05-05 15:22:52 -0300
committerJuan Pablo Ugarte <juanpablougarte@gmail.com>2014-05-05 15:31:50 -0300
commitb9f91bcd8ce1548c8cfb65ac1d52d1a53c73132a (patch)
tree955498310e92f93965921d50aff8eb5e06998536 /gtk/gtkcolorbutton.c
parent748b2bf5aea6162ada2fb614e3f75f08925da198 (diff)
downloadgtk+-b9f91bcd8ce1548c8cfb65ac1d52d1a53c73132a.tar.gz
GtkColorButton: Fix recursion loop in "use-alpha" set_property()
Diffstat (limited to 'gtk/gtkcolorbutton.c')
-rw-r--r--gtk/gtkcolorbutton.c29
1 files changed, 17 insertions, 12 deletions
diff --git a/gtk/gtkcolorbutton.c b/gtk/gtkcolorbutton.c
index 776c8eab51..661c5c6fc3 100644
--- a/gtk/gtkcolorbutton.c
+++ b/gtk/gtkcolorbutton.c
@@ -767,6 +767,21 @@ gtk_color_button_get_rgba (GtkColorButton *button,
*rgba = button->priv->rgba;
}
+static void
+set_use_alpha (GtkColorButton *button, gboolean use_alpha)
+{
+ use_alpha = (use_alpha != FALSE);
+
+ if (button->priv->use_alpha != use_alpha)
+ {
+ button->priv->use_alpha = use_alpha;
+
+ gtk_widget_queue_draw (button->priv->draw_area);
+
+ g_object_notify (G_OBJECT (button), "use-alpha");
+ }
+}
+
/**
* gtk_color_button_set_use_alpha:
* @button: a #GtkColorButton
@@ -783,17 +798,7 @@ gtk_color_button_set_use_alpha (GtkColorButton *button,
gboolean use_alpha)
{
g_return_if_fail (GTK_IS_COLOR_BUTTON (button));
-
- use_alpha = (use_alpha != FALSE);
-
- if (button->priv->use_alpha != use_alpha)
- {
- button->priv->use_alpha = use_alpha;
-
- gtk_widget_queue_draw (button->priv->draw_area);
-
- g_object_notify (G_OBJECT (button), "use-alpha");
- }
+ set_use_alpha (button, use_alpha);
}
/**
@@ -874,7 +879,7 @@ gtk_color_button_set_property (GObject *object,
switch (param_id)
{
case PROP_USE_ALPHA:
- gtk_color_chooser_set_use_alpha (GTK_COLOR_CHOOSER (button), g_value_get_boolean (value));
+ set_use_alpha (button, g_value_get_boolean (value));
break;
case PROP_TITLE:
gtk_color_button_set_title (button, g_value_get_string (value));