forked from AuroraMiddleware/gtk
cellrendererpixbuf: Don't eat states
Even when not following states, blacklist the states we don't follow instead of whitelisting the ones we do. This way, we don't accidentally eat new ones like the text direction flags. Fixes a bug where text direction wasn't available when rendering stock items. https://bugzilla.gnome.org/show_bug.cgi?id=702423
This commit is contained in:
parent
502d7644fe
commit
fa3b803de9
@ -531,13 +531,10 @@ gtk_cell_renderer_pixbuf_render (GtkCellRenderer *cell,
|
||||
context = gtk_widget_get_style_context (widget);
|
||||
gtk_style_context_save (context);
|
||||
|
||||
state = GTK_STATE_FLAG_NORMAL;
|
||||
|
||||
if (priv->follow_state)
|
||||
state = gtk_cell_renderer_get_state (cell, widget, flags);
|
||||
else if (!gtk_widget_get_sensitive (widget) ||
|
||||
!gtk_cell_renderer_get_sensitive (cell))
|
||||
state |= GTK_STATE_FLAG_INSENSITIVE;
|
||||
|
||||
if (!priv->follow_state)
|
||||
state &= ~(GTK_STATE_FLAG_FOCUSED | GTK_STATE_FLAG_PRELIGHT | GTK_STATE_FLAG_SELECTED);
|
||||
|
||||
gtk_style_context_set_state (context, state);
|
||||
gtk_style_context_add_class (context, GTK_STYLE_CLASS_IMAGE);
|
||||
|
Loading…
Reference in New Issue
Block a user