From 98ebfaa20e225cc958d2d2d9fb13a7e66cb7acd8 Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Thu, 7 Oct 2021 16:18:00 +0100 Subject: [PATCH] malcontent-control: Focus controls rather than user selector When showing the controls, focus them first rather than the user selector. The correct user is probably already selected. This has the added benefit of not drawing attention to the ugly focus rectangle on the user selector. Signed-off-by: Philip Withnall --- malcontent-control/application.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/malcontent-control/application.c b/malcontent-control/application.c index 0ba20be..6ef2452 100644 --- a/malcontent-control/application.c +++ b/malcontent-control/application.c @@ -414,7 +414,7 @@ update_main_stack (MctApplication *self) mct_user_controls_set_user (self->user_controls, selected_user); new_page_name = "controls"; - new_focus_widget = GTK_WIDGET (self->user_selector); + new_focus_widget = GTK_WIDGET (self->user_controls); } else { @@ -426,7 +426,12 @@ update_main_stack (MctApplication *self) gtk_stack_set_visible_child_name (self->main_stack, new_page_name); if (new_focus_widget != NULL && !g_str_equal (old_page_name, new_page_name)) - gtk_widget_grab_focus (new_focus_widget); + { + if (gtk_widget_get_can_focus (new_focus_widget)) + gtk_widget_grab_focus (new_focus_widget); + else + gtk_widget_child_focus (new_focus_widget, GTK_DIR_TAB_FORWARD); + } } static void