summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorMatthias Clasen <matthiasc@src.gnome.org>2008-12-31 02:44:46 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2008-12-31 02:44:46 +0000
commitc60dba617c5ddbf32fed0c65fd85f2c3249c64f3 (patch)
treebc4f40137cf83bc2a6373046d9fc5ce562a03e01 /gtk
parent1b314676009b86a87ebf0afdf59718b17fe8bba2 (diff)
downloadgtk+-c60dba617c5ddbf32fed0c65fd85f2c3249c64f3.tar.gz
AVoid size allocation loops
svn path=/trunk/; revision=22019
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtkentry.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 7da90a2e11..b2a38f0c7f 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -2488,8 +2488,6 @@ gtk_entry_realize (GtkWidget *widget)
realize_icon_info (widget, i);
}
}
-
- gtk_widget_queue_resize (widget);
}
static void
@@ -6191,8 +6189,6 @@ gtk_entry_ensure_pixbuf (GtkEntry *entry,
if (GDK_IS_WINDOW (icon_info->window))
gdk_window_show (icon_info->window);
-
- gtk_widget_queue_resize (GTK_WIDGET (entry));
}
@@ -7088,6 +7084,9 @@ gtk_entry_set_icon_from_pixbuf (GtkEntry *entry,
gtk_entry_ensure_pixbuf (entry, icon_pos);
+ if (GTK_WIDGET_VISIBLE (entry))
+ gtk_widget_queue_resize (GTK_WIDGET (entry));
+
g_object_thaw_notify (G_OBJECT (entry));
}
@@ -7149,6 +7148,9 @@ gtk_entry_set_icon_from_stock (GtkEntry *entry,
gtk_entry_ensure_pixbuf (entry, icon_pos);
+ if (GTK_WIDGET_VISIBLE (entry))
+ gtk_widget_queue_resize (GTK_WIDGET (entry));
+
g_object_thaw_notify (G_OBJECT (entry));
}
@@ -7213,6 +7215,9 @@ gtk_entry_set_icon_from_icon_name (GtkEntry *entry,
gtk_entry_ensure_pixbuf (entry, icon_pos);
+ if (GTK_WIDGET_VISIBLE (entry))
+ gtk_widget_queue_resize (GTK_WIDGET (entry));
+
g_object_thaw_notify (G_OBJECT (entry));
}
@@ -7274,6 +7279,9 @@ gtk_entry_set_icon_from_gicon (GtkEntry *entry,
gtk_entry_ensure_pixbuf (entry, icon_pos);
+ if (GTK_WIDGET_VISIBLE (entry))
+ gtk_widget_queue_resize (GTK_WIDGET (entry));
+
g_object_thaw_notify (G_OBJECT (entry));
}