From 50d99e131402bcf5c058e4599a8ec0aad9b2c2d2 Mon Sep 17 00:00:00 2001 From: deepend Date: Fri, 27 Feb 2026 09:19:44 -0700 Subject: [PATCH] userlist highlight: focusable treeview + palette CSS gets real :selected theme colors --- src/fe-gtk/gtkutil.c | 6 ++++++ src/fe-gtk/userlistgui.c | 1 + 2 files changed, 7 insertions(+) diff --git a/src/fe-gtk/gtkutil.c b/src/fe-gtk/gtkutil.c index 97577aa1..b00c41b4 100644 --- a/src/fe-gtk/gtkutil.c +++ b/src/fe-gtk/gtkutil.c @@ -531,6 +531,12 @@ gtkutil_apply_palette (GtkWidget *widget, const GdkRGBA *bg, const GdkRGBA *fg, } gtkutil_append_font_css (css, font_desc); g_string_append (css, " }"); + g_string_append_printf (css, ".%s *:selected {", class_name); + if (bg) + g_string_append (css, " background-color: @theme_selected_bg_color;"); + if (fg) + g_string_append (css, " color: @theme_selected_fg_color;"); + g_string_append (css, " }"); gtk_css_provider_load_from_data (provider, css->str, -1, NULL); if (new_provider) diff --git a/src/fe-gtk/userlistgui.c b/src/fe-gtk/userlistgui.c index 04b52150..06198d4e 100644 --- a/src/fe-gtk/userlistgui.c +++ b/src/fe-gtk/userlistgui.c @@ -682,6 +682,7 @@ userlist_create (GtkWidget *box) treeview = gtk_tree_view_new (); gtk_widget_set_name (treeview, "zoitechat-userlist"); + gtk_widget_set_can_focus (treeview, TRUE); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), FALSE); gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),