diff options
author | Jonathan Blandford <jrb@redhat.com> | 2001-08-29 21:30:20 +0000 |
---|---|---|
committer | Jonathan Blandford <jrb@src.gnome.org> | 2001-08-29 21:30:20 +0000 |
commit | 97d9916904622a7d04fcc41fba11f6d90613b1f4 (patch) | |
tree | 106d539e34d252edea6aaa65cecc78a959fcb4c1 /gtk/gtkstyle.c | |
parent | aa4298ee708146af161ca8ebfb0d9d6eeea1fcb4 (diff) | |
download | gtk+-97d9916904622a7d04fcc41fba11f6d90613b1f4.tar.gz |
change color when the GtkTreeView loses focus.
Wed Aug 29 17:28:04 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
change color when the GtkTreeView loses focus.
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
ditto.
* gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
Diffstat (limited to 'gtk/gtkstyle.c')
-rw-r--r-- | gtk/gtkstyle.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/gtk/gtkstyle.c b/gtk/gtkstyle.c index d043663f85..89abbe191f 100644 --- a/gtk/gtkstyle.c +++ b/gtk/gtkstyle.c @@ -2946,13 +2946,16 @@ gtk_default_draw_flat_box (GtkStyle *style, { if (!strcmp ("text", detail)) gc1 = style->bg_gc[GTK_STATE_SELECTED]; - else if (!strcmp ("cell_even_sorted", detail) || - !strcmp ("cell_odd_sorted", detail) || - !strcmp ("cell_even_ruled_sorted", detail) || - !strcmp ("cell_odd_ruled_sorted", detail)) + else if (!strncmp ("cell_even", detail, strlen ("cell_even")) || + !strncmp ("cell_odd", detail, strlen ("cell_odd"))) { - freeme = get_darkened_gc (window, &style->bg[state_type], 1); - gc1 = freeme; + /* This has to be really broken; alex made me do it. -jrb */ + /* Red rum!!! REd RUM!!! */ + if (GTK_WIDGET_HAS_FOCUS (widget)) + gc1 = style->bg_gc[state_type]; + else + gc1 = style->bg_gc[GTK_STATE_ACTIVE]; + } else { @@ -2978,14 +2981,14 @@ gtk_default_draw_flat_box (GtkStyle *style, !strcmp ("cell_odd", detail) || !strcmp ("cell_even_ruled", detail)) { - gc1 = style->base_gc[state_type]; + gc1 = style->base_gc[state_type]; } else if (!strcmp ("cell_even_sorted", detail) || !strcmp ("cell_odd_sorted", detail) || !strcmp ("cell_odd_ruled", detail) || !strcmp ("cell_even_ruled_sorted", detail)) { - freeme = get_darkened_gc (window, &style->base[state_type], 1); + freeme = get_darkened_gc (window, &style->base[state_type], 1); gc1 = freeme; } else if (!strcmp ("cell_odd_ruled_sorted", detail)) |