1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-10 10:01:13 +09:00

LibGUI: Actually use the Action alternate shortcut

This adds the actual functionality to Window and Application.
This commit is contained in:
Aatos Majava 2021-06-24 12:42:50 +03:00 committed by Andreas Kling
parent 21a193ed5a
commit 3e6a5af32b
Notes: sideshowbarker 2024-07-18 11:33:51 +09:00
3 changed files with 4 additions and 2 deletions

View file

@ -113,11 +113,13 @@ void Application::quit(int exit_code)
void Application::register_global_shortcut_action(Badge<Action>, Action& action)
{
m_global_shortcut_actions.set(action.shortcut(), &action);
m_global_shortcut_actions.set(action.alternate_shortcut(), &action);
}
void Application::unregister_global_shortcut_action(Badge<Action>, Action& action)
{
m_global_shortcut_actions.remove(action.shortcut());
m_global_shortcut_actions.remove(action.alternate_shortcut());
}
Action* Application::action_for_key_event(const KeyEvent& event)

View file

@ -829,7 +829,7 @@ Action* Widget::action_for_key_event(const KeyEvent& event)
Action* found_action = nullptr;
for_each_child_of_type<Action>([&](auto& action) {
if (action.shortcut() == shortcut) {
if (action.shortcut() == shortcut || action.alternate_shortcut() == shortcut) {
found_action = &action;
return IterationDecision::Break;
}

View file

@ -982,7 +982,7 @@ Action* Window::action_for_key_event(const KeyEvent& event)
Shortcut shortcut(event.modifiers(), (KeyCode)event.key());
Action* found_action = nullptr;
for_each_child_of_type<Action>([&](auto& action) {
if (action.shortcut() == shortcut) {
if (action.shortcut() == shortcut || action.alternate_shortcut() == shortcut) {
found_action = &action;
return IterationDecision::Break;
}