diff options
Diffstat (limited to 'gtk/gtkcellrenderertext.c')
-rw-r--r-- | gtk/gtkcellrenderertext.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gtk/gtkcellrenderertext.c b/gtk/gtkcellrenderertext.c index 6cd6347e44..fbb39e59f1 100644 --- a/gtk/gtkcellrenderertext.c +++ b/gtk/gtkcellrenderertext.c @@ -1225,9 +1225,16 @@ gtk_cell_renderer_text_render (GtkCellRenderer *cell, gtk_cell_renderer_text_get_size (cell, widget, cell_area, &x_offset, &y_offset, NULL, NULL); if ((flags & GTK_CELL_RENDERER_SELECTED) == GTK_CELL_RENDERER_SELECTED) - state = GTK_STATE_SELECTED; + { + if (GTK_WIDGET_HAS_FOCUS (widget)) + state = GTK_STATE_SELECTED; + else + state = GTK_STATE_ACTIVE; + } else - state = GTK_STATE_NORMAL; + { + state = GTK_STATE_NORMAL; + } if (celltext->background_set && state != GTK_STATE_SELECTED) { |