Commit 87c6e55d authored by Yuichiro Hanada's avatar Yuichiro Hanada Committed by Commit Bot

Migrate EventRewriterChromeOS to new API (1/n).

All usages of the old RewriteEvent() method are removed from
event_rewriter_unittest.cc by this CL.

Bug: 1049489
Test: unit_tests
Change-Id: Id11990b3fa421df6de8d6ddefd60c96dae95b573
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2041151Reviewed-by: default avatarKevin Schoedel <kpschoedel@chromium.org>
Commit-Queue: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/heads/master@{#739197}
parent 50eccbff
...@@ -40,12 +40,42 @@ ...@@ -40,12 +40,42 @@
#include "ui/events/keycodes/dom/keycode_converter.h" #include "ui/events/keycodes/dom/keycode_converter.h"
#include "ui/events/test/events_test_utils.h" #include "ui/events/test/events_test_utils.h"
#include "ui/events/test/test_event_processor.h" #include "ui/events/test/test_event_processor.h"
#include "ui/events/test/test_event_rewriter_continuation.h"
#include "ui/wm/core/window_util.h" #include "ui/wm/core/window_util.h"
namespace { namespace {
constexpr int kKeyboardDeviceId = 123; constexpr int kKeyboardDeviceId = 123;
class TestEventRewriterContinuation
: public ui::test::TestEventRewriterContinuation {
public:
TestEventRewriterContinuation() = default;
~TestEventRewriterContinuation() override = default;
TestEventRewriterContinuation(const TestEventRewriterContinuation&) = delete;
TestEventRewriterContinuation& operator=(
const TestEventRewriterContinuation&) = delete;
ui::EventDispatchDetails SendEvent(const ui::Event* event) override {
passthrough_events.push_back(ui::Event::Clone(*event));
return ui::EventDispatchDetails();
}
ui::EventDispatchDetails SendEventFinally(const ui::Event* event) override {
rewritten_events.push_back(ui::Event::Clone(*event));
return ui::EventDispatchDetails();
}
ui::EventDispatchDetails DiscardEvent() override {
return ui::EventDispatchDetails();
}
std::vector<std::unique_ptr<ui::Event>> rewritten_events;
std::vector<std::unique_ptr<ui::Event>> passthrough_events;
base::WeakPtrFactory<TestEventRewriterContinuation> weak_ptr_factory_{this};
};
std::string GetExpectedResultAsString(ui::EventType ui_type, std::string GetExpectedResultAsString(ui::EventType ui_type,
ui::KeyboardCode ui_keycode, ui::KeyboardCode ui_keycode,
ui::DomCode code, ui::DomCode code,
...@@ -63,21 +93,20 @@ std::string GetKeyEventAsString(const ui::KeyEvent& keyevent) { ...@@ -63,21 +93,20 @@ std::string GetKeyEventAsString(const ui::KeyEvent& keyevent) {
keyevent.GetDomKey()); keyevent.GetDomKey());
} }
std::string GetRewrittenEventAsString( std::string GetRewrittenEventAsString(ui::EventRewriter* const rewriter,
const std::unique_ptr<ui::EventRewriterChromeOS>& rewriter, ui::EventType ui_type,
ui::EventType ui_type, ui::KeyboardCode ui_keycode,
ui::KeyboardCode ui_keycode, ui::DomCode code,
ui::DomCode code, int ui_flags, // ui::EventFlags
int ui_flags, // ui::EventFlags ui::DomKey key,
ui::DomKey key, int device_id = kKeyboardDeviceId) {
int device_id = kKeyboardDeviceId) {
ui::KeyEvent event(ui_type, ui_keycode, code, ui_flags, key, ui::KeyEvent event(ui_type, ui_keycode, code, ui_flags, key,
ui::EventTimeForNow()); ui::EventTimeForNow());
event.set_source_device_id(device_id); event.set_source_device_id(device_id);
std::unique_ptr<ui::Event> new_event; TestEventRewriterContinuation continuation;
rewriter->RewriteEvent(event, &new_event); rewriter->RewriteEvent(event, continuation.weak_ptr_factory_.GetWeakPtr());
if (new_event) if (!continuation.rewritten_events.empty())
return GetKeyEventAsString(*new_event->AsKeyEvent()); return GetKeyEventAsString(*continuation.rewritten_events[0]->AsKeyEvent());
return GetKeyEventAsString(event); return GetKeyEventAsString(event);
} }
...@@ -100,9 +129,8 @@ std::string GetTestCaseAsString(ui::EventType ui_type, ...@@ -100,9 +129,8 @@ std::string GetTestCaseAsString(ui::EventType ui_type,
} }
// Tests a single stateless key rewrite operation. // Tests a single stateless key rewrite operation.
void CheckKeyTestCase( void CheckKeyTestCase(ui::EventRewriter* const rewriter,
const std::unique_ptr<ui::EventRewriterChromeOS>& rewriter, const KeyTestCase& test) {
const KeyTestCase& test) {
SCOPED_TRACE("\nSource: " + GetTestCaseAsString(test.type, test.input)); SCOPED_TRACE("\nSource: " + GetTestCaseAsString(test.type, test.input));
std::string expected = GetTestCaseAsString(test.type, test.expected); std::string expected = GetTestCaseAsString(test.type, test.expected);
EXPECT_EQ(expected, EXPECT_EQ(expected,
...@@ -139,6 +167,8 @@ class EventRewriterTest : public ChromeAshTestBase { ...@@ -139,6 +167,8 @@ class EventRewriterTest : public ChromeAshTestBase {
chromeos::input_method::Shutdown(); chromeos::input_method::Shutdown();
} }
ui::EventRewriter* rewriter() { return rewriter_.get(); }
protected: protected:
void TestRewriteNumPadKeys(); void TestRewriteNumPadKeys();
void TestRewriteNumPadKeysOnAppleKeyboard(); void TestRewriteNumPadKeysOnAppleKeyboard();
...@@ -218,7 +248,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControl) { ...@@ -218,7 +248,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControl) {
}; };
for (const auto& test : pc_keyboard_tests) for (const auto& test : pc_keyboard_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// An Apple keyboard reusing the ID, zero. // An Apple keyboard reusing the ID, zero.
rewriter_->KeyboardDeviceAddedForTesting(kKeyboardDeviceId, "Apple Keyboard"); rewriter_->KeyboardDeviceAddedForTesting(kKeyboardDeviceId, "Apple Keyboard");
...@@ -266,7 +296,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControl) { ...@@ -266,7 +296,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControl) {
}; };
for (const auto& test : apple_keyboard_tests) for (const auto& test : apple_keyboard_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Now simulate the user remapped the Command key back to Search. // Now simulate the user remapped the Command key back to Search.
IntegerPrefMember command; IntegerPrefMember command;
...@@ -304,7 +334,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControl) { ...@@ -304,7 +334,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControl) {
}; };
for (const auto& test : command_remapped_to_search_tests) for (const auto& test : command_remapped_to_search_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) { TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) {
...@@ -359,7 +389,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) { ...@@ -359,7 +389,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) {
kKeyboardDeviceId}, kKeyboardDeviceId},
}; };
for (const auto& test : default_internal_search_tests) for (const auto& test : default_internal_search_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Test external Keyboard. // Test external Keyboard.
KeyTestCase default_external_meta_tests[] = { KeyTestCase default_external_meta_tests[] = {
...@@ -397,7 +427,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) { ...@@ -397,7 +427,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) {
}; };
rewriter_->set_last_keyboard_device_id_for_testing(kKeyboardDeviceId + 1); rewriter_->set_last_keyboard_device_id_for_testing(kKeyboardDeviceId + 1);
for (const auto& test : default_external_meta_tests) for (const auto& test : default_external_meta_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Both preferences for internal Search and external Meta are independent, // Both preferences for internal Search and external Meta are independent,
// even if one or both are modified. // even if one or both are modified.
...@@ -448,7 +478,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) { ...@@ -448,7 +478,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) {
}; };
rewriter_->set_last_keyboard_device_id_for_testing(kKeyboardDeviceId); rewriter_->set_last_keyboard_device_id_for_testing(kKeyboardDeviceId);
for (const auto& test : remapped_internal_search_tests) for (const auto& test : remapped_internal_search_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Test external keyboard. // Test external keyboard.
KeyTestCase remapped_external_search_tests[] = { KeyTestCase remapped_external_search_tests[] = {
...@@ -485,7 +515,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) { ...@@ -485,7 +515,7 @@ TEST_F(EventRewriterTest, TestRewriteExternalMetaKey) {
}; };
rewriter_->set_last_keyboard_device_id_for_testing(kKeyboardDeviceId + 1); rewriter_->set_last_keyboard_device_id_for_testing(kKeyboardDeviceId + 1);
for (const auto& test : remapped_external_search_tests) for (const auto& test : remapped_external_search_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
// For crbug.com/133896. // For crbug.com/133896.
...@@ -509,7 +539,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControlWithControlRemapped) { ...@@ -509,7 +539,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControlWithControlRemapped) {
}; };
for (const auto& test : pc_keyboard_tests) for (const auto& test : pc_keyboard_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// An Apple keyboard reusing the ID, zero. // An Apple keyboard reusing the ID, zero.
rewriter_->KeyboardDeviceAddedForTesting(kKeyboardDeviceId, "Apple Keyboard"); rewriter_->KeyboardDeviceAddedForTesting(kKeyboardDeviceId, "Apple Keyboard");
...@@ -534,7 +564,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControlWithControlRemapped) { ...@@ -534,7 +564,7 @@ TEST_F(EventRewriterTest, TestRewriteCommandToControlWithControlRemapped) {
}; };
for (const auto& test : apple_keyboard_tests) for (const auto& test : apple_keyboard_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
void EventRewriterTest::TestRewriteNumPadKeys() { void EventRewriterTest::TestRewriteNumPadKeys() {
...@@ -707,7 +737,7 @@ void EventRewriterTest::TestRewriteNumPadKeys() { ...@@ -707,7 +737,7 @@ void EventRewriterTest::TestRewriteNumPadKeys() {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteNumPadKeys) { TEST_F(EventRewriterTest, TestRewriteNumPadKeys) {
...@@ -742,7 +772,7 @@ void EventRewriterTest::TestRewriteNumPadKeysOnAppleKeyboard() { ...@@ -742,7 +772,7 @@ void EventRewriterTest::TestRewriteNumPadKeysOnAppleKeyboard() {
ui::DomKey::Constant<'1'>::Character}}}; ui::DomKey::Constant<'1'>::Character}}};
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteNumPadKeysOnAppleKeyboard) { TEST_F(EventRewriterTest, TestRewriteNumPadKeysOnAppleKeyboard) {
...@@ -793,7 +823,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersNoRemap) { ...@@ -793,7 +823,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersNoRemap) {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersNoRemapMultipleKeys) { TEST_F(EventRewriterTest, TestRewriteModifiersNoRemapMultipleKeys) {
...@@ -852,7 +882,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersNoRemapMultipleKeys) { ...@@ -852,7 +882,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersNoRemapMultipleKeys) {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersDisableSome) { TEST_F(EventRewriterTest, TestRewriteModifiersDisableSome) {
...@@ -924,7 +954,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersDisableSome) { ...@@ -924,7 +954,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersDisableSome) {
}; };
for (const auto& test : disabled_modifier_tests) for (const auto& test : disabled_modifier_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Remap Alt to Control. // Remap Alt to Control.
IntegerPrefMember alt; IntegerPrefMember alt;
...@@ -949,7 +979,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersDisableSome) { ...@@ -949,7 +979,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersDisableSome) {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapToControl) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapToControl) {
...@@ -971,7 +1001,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToControl) { ...@@ -971,7 +1001,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToControl) {
}; };
for (const auto& test : s_tests) for (const auto& test : s_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Remap Alt to Control too. // Remap Alt to Control too.
IntegerPrefMember alt; IntegerPrefMember alt;
...@@ -1022,7 +1052,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToControl) { ...@@ -1022,7 +1052,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToControl) {
}; };
for (const auto& test : sa_tests) for (const auto& test : sa_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapToEscape) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapToEscape) {
...@@ -1043,7 +1073,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToEscape) { ...@@ -1043,7 +1073,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToEscape) {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapEscapeToAlt) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapEscapeToAlt) {
...@@ -1067,7 +1097,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapEscapeToAlt) { ...@@ -1067,7 +1097,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapEscapeToAlt) {
}; };
for (const auto& test : e2a_tests) for (const auto& test : e2a_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapAltToControl) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapAltToControl) {
...@@ -1101,7 +1131,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapAltToControl) { ...@@ -1101,7 +1131,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapAltToControl) {
}; };
for (const auto& test : a2c_tests) for (const auto& test : a2c_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapUnderEscapeControlAlt) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapUnderEscapeControlAlt) {
...@@ -1162,7 +1192,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapUnderEscapeControlAlt) { ...@@ -1162,7 +1192,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapUnderEscapeControlAlt) {
}; };
for (const auto& test : c2s_tests) for (const auto& test : c2s_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TEST_F(EventRewriterTest,
...@@ -1220,7 +1250,7 @@ TEST_F(EventRewriterTest, ...@@ -1220,7 +1250,7 @@ TEST_F(EventRewriterTest,
}; };
for (const auto& test : s2b_tests) for (const auto& test : s2b_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapBackspaceToEscape) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapBackspaceToEscape) {
...@@ -1241,7 +1271,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapBackspaceToEscape) { ...@@ -1241,7 +1271,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapBackspaceToEscape) {
}; };
for (const auto& test : b2e_tests) for (const auto& test : b2e_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
...@@ -1260,7 +1290,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { ...@@ -1260,7 +1290,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
EXPECT_EQ(GetExpectedResultAsString( EXPECT_EQ(GetExpectedResultAsString(
ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_MOD3_DOWN | ui::EF_CAPS_LOCK_ON, ui::DomKey::CAPS_LOCK), ui::EF_MOD3_DOWN | ui::EF_CAPS_LOCK_ON, ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_PRESSED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_PRESSED,
ui::VKEY_LWIN, ui::DomCode::META_LEFT, ui::VKEY_LWIN, ui::DomCode::META_LEFT,
ui::EF_COMMAND_DOWN, ui::DomKey::META)); ui::EF_COMMAND_DOWN, ui::DomKey::META));
EXPECT_FALSE(ime_keyboard.caps_lock_is_enabled_); EXPECT_FALSE(ime_keyboard.caps_lock_is_enabled_);
...@@ -1269,7 +1299,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { ...@@ -1269,7 +1299,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL,
ui::DomCode::CAPS_LOCK, ui::EF_NONE, ui::DomCode::CAPS_LOCK, ui::EF_NONE,
ui::DomKey::CAPS_LOCK), ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_RELEASED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_RELEASED,
ui::VKEY_LWIN, ui::DomCode::META_LEFT, ui::VKEY_LWIN, ui::DomCode::META_LEFT,
ui::EF_NONE, ui::DomKey::META)); ui::EF_NONE, ui::DomKey::META));
EXPECT_TRUE(ime_keyboard.caps_lock_is_enabled_); EXPECT_TRUE(ime_keyboard.caps_lock_is_enabled_);
...@@ -1278,7 +1308,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { ...@@ -1278,7 +1308,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
EXPECT_EQ(GetExpectedResultAsString( EXPECT_EQ(GetExpectedResultAsString(
ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK), ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_PRESSED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_PRESSED,
ui::VKEY_LWIN, ui::DomCode::META_LEFT, ui::VKEY_LWIN, ui::DomCode::META_LEFT,
ui::EF_COMMAND_DOWN | ui::EF_CAPS_LOCK_ON, ui::EF_COMMAND_DOWN | ui::EF_CAPS_LOCK_ON,
ui::DomKey::META)); ui::DomKey::META));
...@@ -1288,7 +1318,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { ...@@ -1288,7 +1318,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL,
ui::DomCode::CAPS_LOCK, ui::EF_NONE, ui::DomCode::CAPS_LOCK, ui::EF_NONE,
ui::DomKey::CAPS_LOCK), ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_RELEASED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_RELEASED,
ui::VKEY_LWIN, ui::DomCode::META_LEFT, ui::VKEY_LWIN, ui::DomCode::META_LEFT,
ui::EF_NONE, ui::DomKey::META)); ui::EF_NONE, ui::DomKey::META));
EXPECT_FALSE(ime_keyboard.caps_lock_is_enabled_); EXPECT_FALSE(ime_keyboard.caps_lock_is_enabled_);
...@@ -1297,7 +1327,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { ...@@ -1297,7 +1327,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
EXPECT_EQ(GetExpectedResultAsString( EXPECT_EQ(GetExpectedResultAsString(
ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK), ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_PRESSED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_PRESSED,
ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN,
ui::DomKey::CAPS_LOCK)); ui::DomKey::CAPS_LOCK));
...@@ -1307,7 +1337,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) { ...@@ -1307,7 +1337,7 @@ TEST_F(EventRewriterTest, TestRewriteModifiersRemapToCapsLock) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL,
ui::DomCode::CAPS_LOCK, ui::EF_NONE, ui::DomCode::CAPS_LOCK, ui::EF_NONE,
ui::DomKey::CAPS_LOCK), ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_RELEASED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_RELEASED,
ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_NONE, ui::DomKey::CAPS_LOCK)); ui::EF_NONE, ui::DomKey::CAPS_LOCK));
EXPECT_TRUE(ime_keyboard.caps_lock_is_enabled_); EXPECT_TRUE(ime_keyboard.caps_lock_is_enabled_);
...@@ -1325,7 +1355,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) { ...@@ -1325,7 +1355,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) {
EXPECT_EQ(GetExpectedResultAsString( EXPECT_EQ(GetExpectedResultAsString(
ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::ET_KEY_PRESSED, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK), ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_PRESSED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_PRESSED,
ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK)); ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK));
EXPECT_FALSE(ime_keyboard.caps_lock_is_enabled_); EXPECT_FALSE(ime_keyboard.caps_lock_is_enabled_);
...@@ -1333,7 +1363,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) { ...@@ -1333,7 +1363,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CAPITAL,
ui::DomCode::CAPS_LOCK, ui::EF_NONE, ui::DomCode::CAPS_LOCK, ui::EF_NONE,
ui::DomKey::CAPS_LOCK), ui::DomKey::CAPS_LOCK),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_RELEASED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_RELEASED,
ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK)); ui::EF_MOD3_DOWN, ui::DomKey::CAPS_LOCK));
EXPECT_TRUE(ime_keyboard.caps_lock_is_enabled_); EXPECT_TRUE(ime_keyboard.caps_lock_is_enabled_);
...@@ -1347,7 +1377,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) { ...@@ -1347,7 +1377,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_PRESSED, ui::VKEY_CONTROL, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_PRESSED, ui::VKEY_CONTROL,
ui::DomCode::CONTROL_LEFT, ui::DomCode::CONTROL_LEFT,
ui::EF_CONTROL_DOWN, ui::DomKey::CONTROL), ui::EF_CONTROL_DOWN, ui::DomKey::CONTROL),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_PRESSED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_PRESSED,
ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN, ui::EF_CAPS_LOCK_ON | ui::EF_MOD3_DOWN,
ui::DomKey::CAPS_LOCK)); ui::DomKey::CAPS_LOCK));
...@@ -1356,7 +1386,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) { ...@@ -1356,7 +1386,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLock) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CONTROL, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_RELEASED, ui::VKEY_CONTROL,
ui::DomCode::CONTROL_LEFT, ui::EF_NONE, ui::DomCode::CONTROL_LEFT, ui::EF_NONE,
ui::DomKey::CONTROL), ui::DomKey::CONTROL),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_RELEASED, GetRewrittenEventAsString(rewriter(), ui::ET_KEY_RELEASED,
ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK, ui::VKEY_CAPITAL, ui::DomCode::CAPS_LOCK,
ui::EF_NONE, ui::DomKey::CAPS_LOCK)); ui::EF_NONE, ui::DomKey::CAPS_LOCK));
} }
...@@ -1397,7 +1427,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLockToControl) { ...@@ -1397,7 +1427,7 @@ TEST_F(EventRewriterTest, TestRewriteCapsLockToControl) {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteCapsLockMod3InUse) { TEST_F(EventRewriterTest, TestRewriteCapsLockMod3InUse) {
...@@ -1415,9 +1445,9 @@ TEST_F(EventRewriterTest, TestRewriteCapsLockMod3InUse) { ...@@ -1415,9 +1445,9 @@ TEST_F(EventRewriterTest, TestRewriteCapsLockMod3InUse) {
EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_PRESSED, ui::VKEY_A, EXPECT_EQ(GetExpectedResultAsString(ui::ET_KEY_PRESSED, ui::VKEY_A,
ui::DomCode::US_A, ui::EF_NONE, ui::DomCode::US_A, ui::EF_NONE,
ui::DomKey::Constant<'a'>::Character), ui::DomKey::Constant<'a'>::Character),
GetRewrittenEventAsString(rewriter_, ui::ET_KEY_PRESSED, ui::VKEY_A, GetRewrittenEventAsString(
ui::DomCode::US_A, ui::EF_NONE, rewriter(), ui::ET_KEY_PRESSED, ui::VKEY_A, ui::DomCode::US_A,
ui::DomKey::Constant<'a'>::Character)); ui::EF_NONE, ui::DomKey::Constant<'a'>::Character));
input_method_manager_mock_->set_mod3_used(false); input_method_manager_mock_->set_mod3_used(false);
} }
...@@ -1549,7 +1579,7 @@ TEST_F(EventRewriterTest, TestRewriteExtendedKeys) { ...@@ -1549,7 +1579,7 @@ TEST_F(EventRewriterTest, TestRewriteExtendedKeys) {
ui::DomKey::INSERT}}}; ui::DomKey::INSERT}}};
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteFunctionKeys) { TEST_F(EventRewriterTest, TestRewriteFunctionKeys) {
...@@ -1860,7 +1890,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeys) { ...@@ -1860,7 +1890,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeys) {
{ui::VKEY_F12, ui::DomCode::F12, ui::EF_NONE, ui::DomKey::F12}}}; {ui::VKEY_F12, ui::DomCode::F12, ui::EF_NONE, ui::DomKey::F12}}};
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteFunctionKeysLayout2) { TEST_F(EventRewriterTest, TestRewriteFunctionKeysLayout2) {
...@@ -2022,7 +2052,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysLayout2) { ...@@ -2022,7 +2052,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysLayout2) {
{ui::VKEY_F12, ui::DomCode::F12, ui::EF_ALT_DOWN, ui::DomKey::F12}}}; {ui::VKEY_F12, ui::DomCode::F12, ui::EF_ALT_DOWN, ui::DomKey::F12}}};
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteFunctionKeysWilcoLayouts) { TEST_F(EventRewriterTest, TestRewriteFunctionKeysWilcoLayouts) {
...@@ -2332,10 +2362,10 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysWilcoLayouts) { ...@@ -2332,10 +2362,10 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysWilcoLayouts) {
ui::EventRewriterChromeOS::kKbdTopRowLayoutWilco); ui::EventRewriterChromeOS::kKbdTopRowLayoutWilco);
// Standard key tests using Wilco 1.0 keyboard // Standard key tests using Wilco 1.0 keyboard
for (const auto& test : wilcoStandardTests) for (const auto& test : wilcoStandardTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Wilco 1.0 specific key tests // Wilco 1.0 specific key tests
for (const auto& test : wilco1Tests) for (const auto& test : wilco1Tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Run key test cases for Drallion (Wilco 1.5) keyboard layout // Run key test cases for Drallion (Wilco 1.5) keyboard layout
rewriter_->KeyboardDeviceAddedForTesting( rewriter_->KeyboardDeviceAddedForTesting(
...@@ -2343,10 +2373,10 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysWilcoLayouts) { ...@@ -2343,10 +2373,10 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysWilcoLayouts) {
ui::EventRewriterChromeOS::kKbdTopRowLayoutDrallion); ui::EventRewriterChromeOS::kKbdTopRowLayoutDrallion);
// Standard key tests using Drallion keyboard layout // Standard key tests using Drallion keyboard layout
for (const auto& test : wilcoStandardTests) for (const auto& test : wilcoStandardTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Drallion specific key tests // Drallion specific key tests
for (const auto& test : drallionTests) for (const auto& test : drallionTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteActionKeysWilcoLayouts) { TEST_F(EventRewriterTest, TestRewriteActionKeysWilcoLayouts) {
...@@ -2502,10 +2532,10 @@ TEST_F(EventRewriterTest, TestRewriteActionKeysWilcoLayouts) { ...@@ -2502,10 +2532,10 @@ TEST_F(EventRewriterTest, TestRewriteActionKeysWilcoLayouts) {
ui::EventRewriterChromeOS::kKbdTopRowLayoutWilco); ui::EventRewriterChromeOS::kKbdTopRowLayoutWilco);
// Standard key tests using Wilco 1.0 keyboard // Standard key tests using Wilco 1.0 keyboard
for (const auto& test : wilcoStandardTests) for (const auto& test : wilcoStandardTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Wilco 1.0 specific key tests // Wilco 1.0 specific key tests
for (const auto& test : wilco1Tests) for (const auto& test : wilco1Tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Run key test cases for Drallion (Wilco 1.5) keyboard layout // Run key test cases for Drallion (Wilco 1.5) keyboard layout
rewriter_->KeyboardDeviceAddedForTesting( rewriter_->KeyboardDeviceAddedForTesting(
...@@ -2513,10 +2543,10 @@ TEST_F(EventRewriterTest, TestRewriteActionKeysWilcoLayouts) { ...@@ -2513,10 +2543,10 @@ TEST_F(EventRewriterTest, TestRewriteActionKeysWilcoLayouts) {
ui::EventRewriterChromeOS::kKbdTopRowLayoutDrallion); ui::EventRewriterChromeOS::kKbdTopRowLayoutDrallion);
// Standard key tests using Drallion keyboard layout // Standard key tests using Drallion keyboard layout
for (const auto& test : wilcoStandardTests) for (const auto& test : wilcoStandardTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Drallion specific key tests // Drallion specific key tests
for (const auto& test : drallionTests) for (const auto& test : drallionTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestTopRowAsFnKeysForKeyboardWilcoLayouts) { TEST_F(EventRewriterTest, TestTopRowAsFnKeysForKeyboardWilcoLayouts) {
...@@ -2679,10 +2709,10 @@ TEST_F(EventRewriterTest, TestTopRowAsFnKeysForKeyboardWilcoLayouts) { ...@@ -2679,10 +2709,10 @@ TEST_F(EventRewriterTest, TestTopRowAsFnKeysForKeyboardWilcoLayouts) {
ui::EventRewriterChromeOS::kKbdTopRowLayoutWilco); ui::EventRewriterChromeOS::kKbdTopRowLayoutWilco);
// Standard key tests using Wilco 1.0 keyboard // Standard key tests using Wilco 1.0 keyboard
for (const auto& test : wilcoStandardTests) for (const auto& test : wilcoStandardTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Wilco 1.0 specific key tests // Wilco 1.0 specific key tests
for (const auto& test : wilco1Tests) for (const auto& test : wilco1Tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Run key test cases for Drallion (Wilco 1.5) keyboard layout // Run key test cases for Drallion (Wilco 1.5) keyboard layout
rewriter_->KeyboardDeviceAddedForTesting( rewriter_->KeyboardDeviceAddedForTesting(
...@@ -2690,10 +2720,10 @@ TEST_F(EventRewriterTest, TestTopRowAsFnKeysForKeyboardWilcoLayouts) { ...@@ -2690,10 +2720,10 @@ TEST_F(EventRewriterTest, TestTopRowAsFnKeysForKeyboardWilcoLayouts) {
ui::EventRewriterChromeOS::kKbdTopRowLayoutDrallion); ui::EventRewriterChromeOS::kKbdTopRowLayoutDrallion);
// Standard key tests using Drallion keyboard layout // Standard key tests using Drallion keyboard layout
for (const auto& test : wilcoStandardTests) for (const auto& test : wilcoStandardTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Drallion specific key tests // Drallion specific key tests
for (const auto& test : drallionTests) for (const auto& test : drallionTests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteFunctionKeysInvalidLayout) { TEST_F(EventRewriterTest, TestRewriteFunctionKeysInvalidLayout) {
...@@ -2725,7 +2755,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysInvalidLayout) { ...@@ -2725,7 +2755,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysInvalidLayout) {
ui::DomKey::BRIGHTNESS_UP}}}; ui::DomKey::BRIGHTNESS_UP}}};
for (const auto& test : invalid_layout_tests) for (const auto& test : invalid_layout_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
// Adding a keyboard with a valid layout will take effect. // Adding a keyboard with a valid layout will take effect.
rewriter_->KeyboardDeviceAddedForTesting( rewriter_->KeyboardDeviceAddedForTesting(
...@@ -2754,7 +2784,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysInvalidLayout) { ...@@ -2754,7 +2784,7 @@ TEST_F(EventRewriterTest, TestRewriteFunctionKeysInvalidLayout) {
ui::DomKey::MEDIA_PLAY_PAUSE}}}; ui::DomKey::MEDIA_PLAY_PAUSE}}};
for (const auto& test : layout2_tests) for (const auto& test : layout2_tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteExtendedKeysWithSearchRemapped) { TEST_F(EventRewriterTest, TestRewriteExtendedKeysWithSearchRemapped) {
...@@ -2782,7 +2812,7 @@ TEST_F(EventRewriterTest, TestRewriteExtendedKeysWithSearchRemapped) { ...@@ -2782,7 +2812,7 @@ TEST_F(EventRewriterTest, TestRewriteExtendedKeysWithSearchRemapped) {
}; };
for (const auto& test : tests) for (const auto& test : tests)
CheckKeyTestCase(rewriter_, test); CheckKeyTestCase(rewriter(), test);
} }
TEST_F(EventRewriterTest, TestRewriteKeyEventSentByXSendEvent) { TEST_F(EventRewriterTest, TestRewriteKeyEventSentByXSendEvent) {
...@@ -2799,11 +2829,15 @@ TEST_F(EventRewriterTest, TestRewriteKeyEventSentByXSendEvent) { ...@@ -2799,11 +2829,15 @@ TEST_F(EventRewriterTest, TestRewriteKeyEventSentByXSendEvent) {
ui::KeyEvent keyevent(ui::ET_KEY_PRESSED, ui::VKEY_CONTROL, ui::KeyEvent keyevent(ui::ET_KEY_PRESSED, ui::VKEY_CONTROL,
ui::DomCode::CONTROL_LEFT, ui::EF_FINAL, ui::DomCode::CONTROL_LEFT, ui::EF_FINAL,
ui::DomKey::CONTROL, ui::EventTimeForNow()); ui::DomKey::CONTROL, ui::EventTimeForNow());
std::unique_ptr<ui::Event> new_event; TestEventRewriterContinuation continuation;
// Control should NOT be remapped to Alt if EF_FINAL is set. // Control should NOT be remapped to Alt if EF_FINAL is set.
EXPECT_EQ(ui::EVENT_REWRITE_CONTINUE, rewriter()->RewriteEvent(keyevent,
rewriter_->RewriteEvent(keyevent, &new_event)); continuation.weak_ptr_factory_.GetWeakPtr());
EXPECT_FALSE(new_event); EXPECT_TRUE(continuation.rewritten_events.empty());
EXPECT_EQ(1u, continuation.passthrough_events.size());
EXPECT_TRUE(continuation.passthrough_events[0]->IsKeyEvent());
const auto* result = continuation.passthrough_events[0]->AsKeyEvent();
EXPECT_EQ(ui::VKEY_CONTROL, result->key_code());
} }
} }
...@@ -2823,12 +2857,13 @@ TEST_F(EventRewriterTest, TestRewriteNonNativeEvent) { ...@@ -2823,12 +2857,13 @@ TEST_F(EventRewriterTest, TestRewriteNonNativeEvent) {
ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH, kTouchId)); ui::PointerDetails(ui::EventPointerType::POINTER_TYPE_TOUCH, kTouchId));
press.set_flags(ui::EF_CONTROL_DOWN); press.set_flags(ui::EF_CONTROL_DOWN);
std::unique_ptr<ui::Event> new_event; TestEventRewriterContinuation continuation;
rewriter_->RewriteEvent(press, &new_event); rewriter()->RewriteEvent(press, continuation.weak_ptr_factory_.GetWeakPtr());
EXPECT_TRUE(new_event); EXPECT_TRUE(continuation.passthrough_events.empty());
EXPECT_EQ(1u, continuation.rewritten_events.size());
// Control should be remapped to Alt. // Control should be remapped to Alt.
EXPECT_EQ(ui::EF_ALT_DOWN, EXPECT_EQ(ui::EF_ALT_DOWN, continuation.rewritten_events[0]->flags() &
new_event->flags() & (ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN)); (ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN));
} }
// Keeps a buffer of handled events. // Keeps a buffer of handled events.
...@@ -2877,11 +2912,6 @@ class EventRewriterAshTest : public ChromeAshTestBase { ...@@ -2877,11 +2912,6 @@ class EventRewriterAshTest : public ChromeAshTestBase {
user_manager_enabler_(base::WrapUnique(fake_user_manager_)) {} user_manager_enabler_(base::WrapUnique(fake_user_manager_)) {}
~EventRewriterAshTest() override {} ~EventRewriterAshTest() override {}
bool RewriteFunctionKeys(const ui::Event& event,
std::unique_ptr<ui::Event>* rewritten_event) {
return rewriter_->RewriteEvent(event, rewritten_event);
}
ui::EventDispatchDetails Send(ui::Event* event) { ui::EventDispatchDetails Send(ui::Event* event) {
return source_.Send(event); return source_.Send(event);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment