summaryrefslogtreecommitdiff
path: root/gtk/gtkentry.c
diff options
context:
space:
mode:
authorRui Matos <tiagomatos@gmail.com>2011-12-17 19:29:16 +0000
committerRui Matos <tiagomatos@gmail.com>2011-12-19 19:21:16 +0000
commit754eabeb19aef2561199647e9e044fa6edeb985c (patch)
treef087b49a8333c6bd8aa3e978c9fd270b170973a9 /gtk/gtkentry.c
parenta0fd344217ff72636f5e0d04fe97aab66d068c20 (diff)
downloadgtk+-754eabeb19aef2561199647e9e044fa6edeb985c.tar.gz
entry: Use the widget state flags as a base for drawing icons and text
Diffstat (limited to 'gtk/gtkentry.c')
-rw-r--r--gtk/gtkentry.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index d0c237271a..3d76e8c728 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -2461,9 +2461,11 @@ gtk_entry_prepare_context_for_icon (GtkEntry *entry,
GtkStateFlags state;
widget = GTK_WIDGET (entry);
- state = GTK_STATE_FLAG_NORMAL;
+ state = gtk_widget_get_state_flags (widget);
+
+ state &= ~(GTK_STATE_FLAG_PRELIGHT);
- if (!gtk_widget_is_sensitive (widget) || icon_info->insensitive)
+ if ((state & GTK_STATE_FLAG_INSENSITIVE) || icon_info->insensitive)
state |= GTK_STATE_FLAG_INSENSITIVE;
else if (icon_info->prelight)
state |= GTK_STATE_FLAG_PRELIGHT;
@@ -5717,10 +5719,8 @@ draw_text_with_color (GtkEntry *entry,
pango_layout_get_pixel_extents (layout, NULL, &logical_rect);
gtk_entry_get_pixel_ranges (entry, &ranges, &n_ranges);
- state = GTK_STATE_FLAG_SELECTED;
-
- if (gtk_widget_has_focus (widget))
- state |= GTK_STATE_FLAG_FOCUSED;
+ state = gtk_widget_get_state_flags (widget);
+ state |= GTK_STATE_FLAG_SELECTED;
gtk_style_context_get_background_color (context, state, &selection_color);
gtk_style_context_get_color (context, state, &text_color);