diff --git a/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.cpp b/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.cpp index 634ec53f33..cb9736d2c8 100644 --- a/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.cpp +++ b/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.cpp @@ -181,7 +181,8 @@ KeyboardSettingsWidget::KeyboardSettingsWidget() keymaps_list_model.set_active_keymap(m_initial_active_keymap); m_activate_keymap_button = find_descendant_of_type_named("activate_keymap_button"); - m_activate_keymap_button->on_click = [&](auto) { + + m_activate_keymap_event = [&]() { auto& selection = m_selected_keymaps_listview->selection(); if (!selection.is_empty()) { auto& selected_keymap = keymaps_list_model.keymap_at(selection.first().row()); @@ -189,6 +190,14 @@ KeyboardSettingsWidget::KeyboardSettingsWidget() } }; + m_activate_keymap_button->on_click = [&](auto) { + m_activate_keymap_event(); + }; + + m_selected_keymaps_listview->on_activation = [&](auto) { + m_activate_keymap_event(); + }; + m_add_keymap_button = find_descendant_of_type_named("add_keymap_button"); m_add_keymap_button->on_click = [&](auto) { diff --git a/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.h b/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.h index 438aee09a7..08ef8fd11d 100644 --- a/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.h +++ b/Userland/Applications/KeyboardSettings/KeyboardSettingsWidget.h @@ -40,4 +40,6 @@ private: RefPtr m_remove_keymap_button; RefPtr m_test_typing_area; RefPtr m_clear_test_typing_area_button; + + Function m_activate_keymap_event; };