From 2e3b91719297bdb562f0f62202bd4646f19c1f4d Mon Sep 17 00:00:00 2001 From: Bananymous Date: Tue, 1 Apr 2025 22:59:02 +0300 Subject: [PATCH] Kernel: Cleanup PS2 mouse button event generation --- kernel/kernel/Input/PS2/Mouse.cpp | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/kernel/kernel/Input/PS2/Mouse.cpp b/kernel/kernel/Input/PS2/Mouse.cpp index 6d3f6e26..2b75adb3 100644 --- a/kernel/kernel/Input/PS2/Mouse.cpp +++ b/kernel/kernel/Input/PS2/Mouse.cpp @@ -108,21 +108,13 @@ namespace Kernel::Input m_byte_index = 0; - auto button_index_to_button = - [](int index) -> MouseButton - { - if (index == 0) - return MouseButton::Left; - if (index == 1) - return MouseButton::Right; - if (index == 2) - return MouseButton::Middle; - if (index == 3) - return MouseButton::Extra1; - if (index == 4) - return MouseButton::Extra2; - ASSERT_NOT_REACHED(); - }; + constexpr MouseButton bit_to_button[] { + MouseButton::Left, + MouseButton::Right, + MouseButton::Middle, + MouseButton::Extra1, + MouseButton::Extra2, + }; if (new_button_mask != m_button_mask) { @@ -133,7 +125,7 @@ namespace Kernel::Input MouseEvent event; event.type = MouseEventType::MouseButtonEvent; - event.button_event.button = button_index_to_button(i); + event.button_event.button = bit_to_button[i]; event.button_event.pressed = !!(new_button_mask & (1 << i)); add_event(BAN::ConstByteSpan::from(event)); }