| Index: chrome/browser/chromeos/events/event_rewriter_unittest.cc
|
| diff --git a/chrome/browser/chromeos/events/event_rewriter_unittest.cc b/chrome/browser/chromeos/events/event_rewriter_unittest.cc
|
| index 47e80101c4df06120846b2d40846ed4ded6bc99e..21cc47919479ff26d3249d7ed06faf2ffcc77e6e 100644
|
| --- a/chrome/browser/chromeos/events/event_rewriter_unittest.cc
|
| +++ b/chrome/browser/chromeos/events/event_rewriter_unittest.cc
|
| @@ -1027,6 +1027,11 @@ TEST_F(EventRewriterTest, TestRewriteDiamondKey) {
|
| {ui::VKEY_F15, ui::EF_NONE},
|
| {ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN}},
|
|
|
| + {KeyTestCase::TEST_VKEY,
|
| + ui::ET_KEY_RELEASED,
|
| + {ui::VKEY_F15, ui::EF_NONE},
|
| + {ui::VKEY_CONTROL, ui::EF_NONE}},
|
| +
|
| // However, Mod2Mask should not be rewritten to CtrlMask when
|
| // --has-chromeos-diamond-key is not specified.
|
| {KeyTestCase::TEST_VKEY,
|
| @@ -1060,6 +1065,21 @@ TEST_F(EventRewriterTest, TestRewriteDiamondKeyWithFlag) {
|
| ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN, ui::ET_KEY_PRESSED),
|
| GetRewrittenEventAsString(
|
| &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Check that Control is applied to a subsequent key press.
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_A, ui::EF_CONTROL_DOWN, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Release F15
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_CONTROL, ui::EF_NONE, ui::ET_KEY_RELEASED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_RELEASED));
|
| + // Check that Control is no longer applied to a subsequent key press.
|
| + EXPECT_EQ(
|
| + GetExpectedResultAsString(ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
|
|
| IntegerPrefMember diamond;
|
| diamond.Init(prefs::kLanguageRemapDiamondKeyTo, &prefs);
|
| @@ -1069,6 +1089,11 @@ TEST_F(EventRewriterTest, TestRewriteDiamondKeyWithFlag) {
|
| ui::VKEY_UNKNOWN, ui::EF_NONE, ui::ET_KEY_PRESSED),
|
| GetRewrittenEventAsString(
|
| &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Check that no modifier is applied to another key.
|
| + EXPECT_EQ(
|
| + GetExpectedResultAsString(ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
|
|
| diamond.SetValue(chromeos::input_method::kControlKey);
|
|
|
| @@ -1076,6 +1101,21 @@ TEST_F(EventRewriterTest, TestRewriteDiamondKeyWithFlag) {
|
| ui::VKEY_CONTROL, ui::EF_CONTROL_DOWN, ui::ET_KEY_PRESSED),
|
| GetRewrittenEventAsString(
|
| &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Check that Control is applied to a subsequent key press.
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_A, ui::EF_CONTROL_DOWN, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Release F15
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_CONTROL, ui::EF_NONE, ui::ET_KEY_RELEASED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_RELEASED));
|
| + // Check that Control is no longer applied to a subsequent key press.
|
| + EXPECT_EQ(
|
| + GetExpectedResultAsString(ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
|
|
| diamond.SetValue(chromeos::input_method::kAltKey);
|
|
|
| @@ -1083,6 +1123,21 @@ TEST_F(EventRewriterTest, TestRewriteDiamondKeyWithFlag) {
|
| ui::VKEY_MENU, ui::EF_ALT_DOWN, ui::ET_KEY_PRESSED),
|
| GetRewrittenEventAsString(
|
| &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Check that Alt is applied to a subsequent key press.
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_A, ui::EF_ALT_DOWN, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Release F15
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_MENU, ui::EF_NONE, ui::ET_KEY_RELEASED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_RELEASED));
|
| + // Check that Alt is no longer applied to a subsequent key press.
|
| + EXPECT_EQ(
|
| + GetExpectedResultAsString(ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
|
|
| diamond.SetValue(chromeos::input_method::kCapsLockKey);
|
|
|
| @@ -1091,6 +1146,22 @@ TEST_F(EventRewriterTest, TestRewriteDiamondKeyWithFlag) {
|
| ui::ET_KEY_PRESSED),
|
| GetRewrittenEventAsString(
|
| &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Check that Caps is applied to a subsequent key press.
|
| + EXPECT_EQ(GetExpectedResultAsString(ui::VKEY_A,
|
| + ui::EF_CAPS_LOCK_DOWN | ui::EF_MOD3_DOWN,
|
| + ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
| + // Release F15
|
| + EXPECT_EQ(GetExpectedResultAsString(
|
| + ui::VKEY_CAPITAL, ui::EF_NONE, ui::ET_KEY_RELEASED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_F15, ui::EF_NONE, ui::ET_KEY_RELEASED));
|
| + // Check that Control is no longer applied to a subsequent key press.
|
| + EXPECT_EQ(
|
| + GetExpectedResultAsString(ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED),
|
| + GetRewrittenEventAsString(
|
| + &rewriter, ui::VKEY_A, ui::EF_NONE, ui::ET_KEY_PRESSED));
|
|
|
| *CommandLine::ForCurrentProcess() = original_cl;
|
| }
|
|
|