summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2014-11-26 18:10:43 -0800
committerJasper St. Pierre <jstpierre@mecheye.net>2014-11-26 18:10:55 -0800
commite3bf31886a7a6a67807a02ad2e87b7a03ff47822 (patch)
treef6aaa3888aacee2757cbb4bcbf12c2bc2f079d44
parent59629fa9e2aef1b03c60d8ec5e6467129c187bfa (diff)
downloadgtk+-e3bf31886a7a6a67807a02ad2e87b7a03ff47822.tar.gz
gtkentry: Optimize GtkStyleContext usage
-rw-r--r--gtk/gtkentry.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
index 4f08c91a67..4be143c5ea 100644
--- a/gtk/gtkentry.c
+++ b/gtk/gtkentry.c
@@ -6427,13 +6427,16 @@ 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_widget_get_state_flags (widget);
+ gtk_style_context_save (context);
+ state = gtk_style_context_get_state (context);
state |= GTK_STATE_FLAG_SELECTED;
+ gtk_style_context_set_state (context, state);
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
gtk_style_context_get_background_color (context, state, &selection_color);
G_GNUC_END_IGNORE_DEPRECATIONS
gtk_style_context_get_color (context, state, &text_color);
+ gtk_style_context_restore (context);
for (i = 0; i < n_ranges; ++i)
cairo_rectangle (cr,