diff options
-rw-r--r-- | libempathy-gtk/empathy-contact-list-view.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/libempathy-gtk/empathy-contact-list-view.c b/libempathy-gtk/empathy-contact-list-view.c index 1b11309f3..4679e06f8 100644 --- a/libempathy-gtk/empathy-contact-list-view.c +++ b/libempathy-gtk/empathy-contact-list-view.c @@ -951,29 +951,28 @@ contact_list_view_cell_set_background (EmpathyContactListView *view, gboolean is_group, gboolean is_active) { - GdkColor color; - GtkStyle *style; + if (!is_group && is_active) { + GdkRGBA color; + GtkStyleContext *style; - style = gtk_widget_get_style (GTK_WIDGET (view)); + style = gtk_widget_get_style_context (GTK_WIDGET (view)); - if (!is_group && is_active) { - color = style->bg[GTK_STATE_SELECTED]; + gtk_style_context_get_background_color (style, GTK_STATE_FLAG_SELECTED, + &color); /* Here we take the current theme colour and add it to * the colour for white and average the two. This * gives a colour which is inline with the theme but * slightly whiter. */ - color.red = (color.red + (style->white).red) / 2; - color.green = (color.green + (style->white).green) / 2; - color.blue = (color.blue + (style->white).blue) / 2; + empathy_make_color_whiter (&color); g_object_set (cell, - "cell-background-gdk", &color, + "cell-background-rgba", &color, NULL); } else { g_object_set (cell, - "cell-background-gdk", NULL, + "cell-background-rgba", NULL, NULL); } } |