OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/chromeos/events/event_rewriter.h" | 5 #include "chrome/browser/chromeos/events/event_rewriter.h" |
6 | 6 |
7 #include <X11/keysym.h> | 7 #include <X11/keysym.h> |
8 #include <X11/XF86keysym.h> | 8 #include <X11/XF86keysym.h> |
9 #include <X11/Xlib.h> | 9 #include <X11/Xlib.h> |
10 #undef Bool | 10 #undef Bool |
(...skipping 1842 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1853 TEST_F(EventRewriterTest, TestRewriteCapsLockMod3InUse) { | 1853 TEST_F(EventRewriterTest, TestRewriteCapsLockMod3InUse) { |
1854 // Remap CapsLock to Control. | 1854 // Remap CapsLock to Control. |
1855 TestingPrefServiceSyncable prefs; | 1855 TestingPrefServiceSyncable prefs; |
1856 chromeos::Preferences::RegisterProfilePrefs(prefs.registry()); | 1856 chromeos::Preferences::RegisterProfilePrefs(prefs.registry()); |
1857 IntegerPrefMember control; | 1857 IntegerPrefMember control; |
1858 control.Init(prefs::kLanguageRemapCapsLockKeyTo, &prefs); | 1858 control.Init(prefs::kLanguageRemapCapsLockKeyTo, &prefs); |
1859 control.SetValue(chromeos::input_method::kControlKey); | 1859 control.SetValue(chromeos::input_method::kControlKey); |
1860 | 1860 |
1861 EventRewriter rewriter; | 1861 EventRewriter rewriter; |
1862 rewriter.set_pref_service_for_testing(&prefs); | 1862 rewriter.set_pref_service_for_testing(&prefs); |
1863 input_method_manager_mock_->SetCurrentInputMethodId("xkb:de:neo:ger"); | 1863 input_method_manager_mock_->set_mod3_used(true); |
1864 | 1864 |
1865 // Press CapsLock+a. Confirm that Mod3Mask is NOT rewritten to ControlMask | 1865 // Press CapsLock+a. Confirm that Mod3Mask is NOT rewritten to ControlMask |
1866 // when Mod3Mask is already in use by the current XKB layout. | 1866 // when Mod3Mask is already in use by the current XKB layout. |
1867 EXPECT_EQ(GetExpectedResultAsString(ui::VKEY_A, | 1867 EXPECT_EQ(GetExpectedResultAsString(ui::VKEY_A, |
1868 0, | 1868 0, |
1869 ui::ET_KEY_PRESSED, | 1869 ui::ET_KEY_PRESSED, |
1870 keycode_a_, | 1870 keycode_a_, |
1871 Mod3Mask, | 1871 Mod3Mask, |
1872 KeyPress), | 1872 KeyPress), |
1873 GetRewrittenEventAsString(&rewriter, | 1873 GetRewrittenEventAsString(&rewriter, |
1874 ui::VKEY_A, | 1874 ui::VKEY_A, |
1875 0, | 1875 0, |
1876 ui::ET_KEY_PRESSED, | 1876 ui::ET_KEY_PRESSED, |
1877 keycode_a_, | 1877 keycode_a_, |
1878 Mod3Mask)); | 1878 Mod3Mask)); |
1879 | 1879 |
1880 input_method_manager_mock_->SetCurrentInputMethodId("xkb:us::eng"); | 1880 input_method_manager_mock_->set_mod3_used(false); |
1881 } | 1881 } |
1882 | 1882 |
1883 TEST_F(EventRewriterTest, TestRewriteExtendedKeys) { | 1883 TEST_F(EventRewriterTest, TestRewriteExtendedKeys) { |
1884 TestingPrefServiceSyncable prefs; | 1884 TestingPrefServiceSyncable prefs; |
1885 chromeos::Preferences::RegisterProfilePrefs(prefs.registry()); | 1885 chromeos::Preferences::RegisterProfilePrefs(prefs.registry()); |
1886 EventRewriter rewriter; | 1886 EventRewriter rewriter; |
1887 rewriter.set_pref_service_for_testing(&prefs); | 1887 rewriter.set_pref_service_for_testing(&prefs); |
1888 | 1888 |
1889 struct { | 1889 struct { |
1890 ui::KeyboardCode input; | 1890 ui::KeyboardCode input; |
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2456 { | 2456 { |
2457 ui::ScopedXI2Event xev; | 2457 ui::ScopedXI2Event xev; |
2458 xev.InitGenericButtonEvent(11, ui::ET_MOUSE_RELEASED, kLeftAndAltFlag); | 2458 xev.InitGenericButtonEvent(11, ui::ET_MOUSE_RELEASED, kLeftAndAltFlag); |
2459 ui::MouseEvent release(xev); | 2459 ui::MouseEvent release(xev); |
2460 RewriteMouseEvent(&rewriter, &release); | 2460 RewriteMouseEvent(&rewriter, &release); |
2461 EXPECT_TRUE(ui::EF_RIGHT_MOUSE_BUTTON & release.flags()); | 2461 EXPECT_TRUE(ui::EF_RIGHT_MOUSE_BUTTON & release.flags()); |
2462 } | 2462 } |
2463 } | 2463 } |
2464 | 2464 |
2465 } // namespace chromeos | 2465 } // namespace chromeos |
OLD | NEW |