Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(374)

Unified Diff: ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc

Issue 2481413006: Checks the DomKey in the non-printable map to determine whether a key event is non-character. (Closed)
Patch Set: Checks the DomKey in the non-printable map to determine whether a key event is non-character. Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc
diff --git a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc
index 16b55d8d5abe979bd21a333358191acab3c29d75..e318ccb359f1ba120f14d8c18237b83c58ffdcaf 100644
--- a/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc
+++ b/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc
@@ -46,6 +46,7 @@ class VkTestXkbKeyboardLayoutEngine : public XkbKeyboardLayoutEngine {
};
struct KeysymEntry {
DomCode dom_code;
+ int flags;
xkb_keysym_t keysym;
base::char16 character;
};
@@ -803,31 +804,34 @@ TEST_F(XkbLayoutEngineVkTest, KeyboardCodeForNonPrintable) {
VkTestXkbKeyboardLayoutEngine::KeysymEntry test;
KeyboardCode key_code;
} kVkeyTestCase[] = {
- {{DomCode::CONTROL_LEFT, XKB_KEY_Control_L}, VKEY_CONTROL},
- {{DomCode::CONTROL_RIGHT, XKB_KEY_Control_R}, VKEY_CONTROL},
- {{DomCode::SHIFT_LEFT, XKB_KEY_Shift_L}, VKEY_SHIFT},
- {{DomCode::SHIFT_RIGHT, XKB_KEY_Shift_R}, VKEY_SHIFT},
- {{DomCode::META_LEFT, XKB_KEY_Super_L}, VKEY_LWIN},
- {{DomCode::META_RIGHT, XKB_KEY_Super_R}, VKEY_LWIN},
- {{DomCode::ALT_LEFT, XKB_KEY_Alt_L}, VKEY_MENU},
- {{DomCode::ALT_RIGHT, XKB_KEY_Alt_R}, VKEY_MENU},
- {{DomCode::ALT_RIGHT, XKB_KEY_ISO_Level3_Shift}, VKEY_ALTGR},
- {{DomCode::DIGIT1, XKB_KEY_1}, VKEY_1},
- {{DomCode::NUMPAD1, XKB_KEY_KP_1}, VKEY_1},
- {{DomCode::CAPS_LOCK, XKB_KEY_Caps_Lock}, VKEY_CAPITAL},
- {{DomCode::ENTER, XKB_KEY_Return}, VKEY_RETURN},
- {{DomCode::NUMPAD_ENTER, XKB_KEY_KP_Enter}, VKEY_RETURN},
- {{DomCode::SLEEP, XKB_KEY_XF86Sleep}, VKEY_SLEEP},
+ {{DomCode::CONTROL_LEFT, EF_NONE, XKB_KEY_Control_L}, VKEY_CONTROL},
+ {{DomCode::CONTROL_RIGHT, EF_NONE, XKB_KEY_Control_R}, VKEY_CONTROL},
+ {{DomCode::SHIFT_LEFT, EF_NONE, XKB_KEY_Shift_L}, VKEY_SHIFT},
+ {{DomCode::SHIFT_RIGHT, EF_NONE, XKB_KEY_Shift_R}, VKEY_SHIFT},
+ {{DomCode::META_LEFT, EF_NONE, XKB_KEY_Super_L}, VKEY_LWIN},
+ {{DomCode::META_RIGHT, EF_NONE, XKB_KEY_Super_R}, VKEY_LWIN},
+ {{DomCode::ALT_LEFT, EF_NONE, XKB_KEY_Alt_L}, VKEY_MENU},
+ {{DomCode::ALT_RIGHT, EF_NONE, XKB_KEY_Alt_R}, VKEY_MENU},
+ {{DomCode::ALT_RIGHT, EF_NONE, XKB_KEY_ISO_Level3_Shift}, VKEY_ALTGR},
+ {{DomCode::DIGIT1, EF_NONE, XKB_KEY_1}, VKEY_1},
+ {{DomCode::NUMPAD1, EF_NONE, XKB_KEY_KP_1}, VKEY_1},
+ {{DomCode::CAPS_LOCK, EF_NONE, XKB_KEY_Caps_Lock}, VKEY_CAPITAL},
+ {{DomCode::ENTER, EF_NONE, XKB_KEY_Return}, VKEY_RETURN},
+ {{DomCode::NUMPAD_ENTER, EF_NONE, XKB_KEY_KP_Enter}, VKEY_RETURN},
+ {{DomCode::SLEEP, EF_NONE, XKB_KEY_XF86Sleep}, VKEY_SLEEP},
// Verify that number pad digits produce located VKEY codes.
- {{DomCode::NUMPAD0, XKB_KEY_KP_0, '0'}, VKEY_NUMPAD0},
- {{DomCode::NUMPAD9, XKB_KEY_KP_9, '9'}, VKEY_NUMPAD9},
+ {{DomCode::NUMPAD0, EF_NONE, XKB_KEY_KP_0, '0'}, VKEY_NUMPAD0},
+ {{DomCode::NUMPAD9, EF_NONE, XKB_KEY_KP_9, '9'}, VKEY_NUMPAD9},
+ // Verify AltGr+V & AltGr+W on de(neo) layout.
+ {{DomCode::US_W, EF_ALTGR_DOWN, XKB_KEY_BackSpace, 8}, VKEY_BACKSPACE},
+ {{DomCode::US_V, EF_ALTGR_DOWN, XKB_KEY_Return, 13}, VKEY_ENTER},
};
for (const auto& e : kVkeyTestCase) {
SCOPED_TRACE(static_cast<int>(e.test.dom_code));
layout_engine_->SetEntry(&e.test);
DomKey dom_key = DomKey::NONE;
KeyboardCode key_code = VKEY_UNKNOWN;
- EXPECT_TRUE(layout_engine_->Lookup(e.test.dom_code, EF_NONE, &dom_key,
+ EXPECT_TRUE(layout_engine_->Lookup(e.test.dom_code, e.test.flags, &dom_key,
&key_code));
EXPECT_EQ(e.key_code, key_code);
}
« no previous file with comments | « ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698