|
@@ -244,8 +244,6 @@ static Web::UIEvents::KeyModifier get_modifiers_from_qt_key_event(QKeyEvent cons
|
|
|
modifiers |= Web::UIEvents::KeyModifier::Mod_Super;
|
|
|
if (event.modifiers().testFlag(Qt::ShiftModifier))
|
|
|
modifiers |= Web::UIEvents::KeyModifier::Mod_Shift;
|
|
|
- if (event.modifiers().testFlag(Qt::AltModifier))
|
|
|
- modifiers |= Web::UIEvents::KeyModifier::Mod_AltGr;
|
|
|
if (event.modifiers().testFlag(Qt::KeypadModifier))
|
|
|
modifiers |= Web::UIEvents::KeyModifier::Mod_Keypad;
|
|
|
return modifiers;
|
|
@@ -264,8 +262,12 @@ static Web::UIEvents::KeyCode get_keycode_from_qt_key_event(QKeyEvent const& eve
|
|
|
Web::UIEvents::KeyCode serenity_key;
|
|
|
};
|
|
|
|
|
|
+ // FIXME: Qt does not differentiate between left-and-right modifier keys. Unfortunately, it seems like we would have
|
|
|
+ // to inspect event.nativeScanCode() / event.nativeVirtualKey() to do so, which has platform-dependent values.
|
|
|
+ // For now, we default to left keys.
|
|
|
+
|
|
|
// https://doc.qt.io/qt-6/qt.html#Key-enum
|
|
|
- constexpr Mapping mappings[] = {
|
|
|
+ static constexpr Mapping mappings[] = {
|
|
|
{ Qt::Key_0, Web::UIEvents::Key_0 },
|
|
|
{ Qt::Key_1, Web::UIEvents::Key_1 },
|
|
|
{ Qt::Key_2, Web::UIEvents::Key_2 },
|
|
@@ -277,7 +279,7 @@ static Web::UIEvents::KeyCode get_keycode_from_qt_key_event(QKeyEvent const& eve
|
|
|
{ Qt::Key_8, Web::UIEvents::Key_8 },
|
|
|
{ Qt::Key_9, Web::UIEvents::Key_9 },
|
|
|
{ Qt::Key_A, Web::UIEvents::Key_A },
|
|
|
- { Qt::Key_Alt, Web::UIEvents::Key_Alt },
|
|
|
+ { Qt::Key_Alt, Web::UIEvents::Key_LeftAlt },
|
|
|
{ Qt::Key_Ampersand, Web::UIEvents::Key_Ampersand },
|
|
|
{ Qt::Key_Apostrophe, Web::UIEvents::Key_Apostrophe },
|
|
|
{ Qt::Key_AsciiCircum, Web::UIEvents::Key_Circumflex },
|
|
@@ -296,7 +298,7 @@ static Web::UIEvents::KeyCode get_keycode_from_qt_key_event(QKeyEvent const& eve
|
|
|
{ Qt::Key_CapsLock, Web::UIEvents::Key_CapsLock },
|
|
|
{ Qt::Key_Colon, Web::UIEvents::Key_Colon },
|
|
|
{ Qt::Key_Comma, Web::UIEvents::Key_Comma },
|
|
|
- { Qt::Key_Control, Web::UIEvents::Key_Control },
|
|
|
+ { Qt::Key_Control, Web::UIEvents::Key_LeftControl },
|
|
|
{ Qt::Key_D, Web::UIEvents::Key_D },
|
|
|
{ Qt::Key_Delete, Web::UIEvents::Key_Delete },
|
|
|
{ Qt::Key_Dollar, Web::UIEvents::Key_Dollar },
|
|
@@ -334,7 +336,7 @@ static Web::UIEvents::KeyCode get_keycode_from_qt_key_event(QKeyEvent const& eve
|
|
|
{ Qt::Key_Less, Web::UIEvents::Key_LessThan },
|
|
|
{ Qt::Key_M, Web::UIEvents::Key_M },
|
|
|
{ Qt::Key_Menu, Web::UIEvents::Key_Menu },
|
|
|
- { Qt::Key_Meta, Web::UIEvents::Key_Super },
|
|
|
+ { Qt::Key_Meta, Web::UIEvents::Key_LeftSuper },
|
|
|
{ Qt::Key_Minus, Web::UIEvents::Key_Minus },
|
|
|
{ Qt::Key_N, Web::UIEvents::Key_N },
|
|
|
{ Qt::Key_NumberSign, Web::UIEvents::Key_Hashtag },
|
|
@@ -362,8 +364,8 @@ static Web::UIEvents::KeyCode get_keycode_from_qt_key_event(QKeyEvent const& eve
|
|
|
{ Qt::Key_Shift, Web::UIEvents::Key_LeftShift },
|
|
|
{ Qt::Key_Slash, Web::UIEvents::Key_Slash },
|
|
|
{ Qt::Key_Space, Web::UIEvents::Key_Space },
|
|
|
- { Qt::Key_Super_L, Web::UIEvents::Key_Super },
|
|
|
- { Qt::Key_Super_R, Web::UIEvents::Key_Super },
|
|
|
+ { Qt::Key_Super_L, Web::UIEvents::Key_LeftSuper },
|
|
|
+ { Qt::Key_Super_R, Web::UIEvents::Key_RightSuper },
|
|
|
{ Qt::Key_SysReq, Web::UIEvents::Key_SysRq },
|
|
|
{ Qt::Key_T, Web::UIEvents::Key_T },
|
|
|
{ Qt::Key_Tab, Web::UIEvents::Key_Tab },
|