diff options
author | yusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-14 06:11:50 +0000 |
---|---|---|
committer | yusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-14 06:11:50 +0000 |
commit | 97a31bc1776d029e376978b858c324934326d633 (patch) | |
tree | c8fd65413fd7911147adb8dce3e6f7ce388a39df | |
parent | af6b5451ce3bc12d03781012926b575ba997bff4 (diff) | |
download | chromium_src-97a31bc1776d029e376978b858c324934326d633.zip chromium_src-97a31bc1776d029e376978b858c324934326d633.tar.gz chromium_src-97a31bc1776d029e376978b858c324934326d633.tar.bz2 |
Change Caps Lock short cut from Shift_L+Shift_R to Shift+Search.
BUG=chromium-os:23036
TEST=ran browser_tests
Review URL: http://codereview.chromium.org/8907003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114379 0039d316-1c4b-4281-b951-d872f2087c98
5 files changed, 31 insertions, 33 deletions
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd index 3de148e..075ec16 100644 --- a/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd @@ -13318,9 +13318,9 @@ Press Ctrl+Alt+Z to cancel. <message name="IDS_STATUSBAR_WIFI_SCANNING_MESSAGE" desc="Scanning for wifi networks"> Searching for Wi-Fi networks... </message> - <message name="IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SHIFT_KEYS" desc="The tooltip for the caps lock indicator button."> + <message name="IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SHIFT_AND_SEARCH_KEYS" desc="The tooltip for the caps lock indicator button."> CAPS LOCK is on. -Press both Shift keys to cancel +Press Shift + Search key to cancel </message> <message name="IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SEARCH" desc="The tooltip for the caps lock indicator button."> CAPS LOCK is on. diff --git a/chrome/browser/chromeos/status/caps_lock_menu_button.cc b/chrome/browser/chromeos/status/caps_lock_menu_button.cc index 536d521..7d273ff 100644 --- a/chrome/browser/chromeos/status/caps_lock_menu_button.cc +++ b/chrome/browser/chromeos/status/caps_lock_menu_button.cc @@ -164,14 +164,14 @@ void CapsLockMenuButton::Observe(int type, } void CapsLockMenuButton::UpdateAccessibleName() { - int id = IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SHIFT_KEYS; + int id = IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SHIFT_AND_SEARCH_KEYS; if (HasCapsLock()) id = IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SEARCH; SetAccessibleName(l10n_util::GetStringUTF16(id)); } string16 CapsLockMenuButton::GetText() const { - int id = IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SHIFT_KEYS; + int id = IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SHIFT_AND_SEARCH_KEYS; if (HasCapsLock()) id = IDS_STATUSBAR_CAPS_LOCK_ENABLED_PRESS_SEARCH; return l10n_util::GetStringUTF16(id); diff --git a/chrome/browser/chromeos/system_key_event_listener.cc b/chrome/browser/chromeos/system_key_event_listener.cc index db93792..666d32a 100644 --- a/chrome/browser/chromeos/system_key_event_listener.cc +++ b/chrome/browser/chromeos/system_key_event_listener.cc @@ -91,8 +91,7 @@ SystemKeyEventListener::SystemKeyEventListener() key_f8_ = XKeysymToKeycode(display, XK_F8); key_f9_ = XKeysymToKeycode(display, XK_F9); key_f10_ = XKeysymToKeycode(display, XK_F10); - key_left_shift_ = XKeysymToKeycode(display, XK_Shift_L); - key_right_shift_ = XKeysymToKeycode(display, XK_Shift_R); + key_search_ = XKeysymToKeycode(display, XK_Super_L); if (key_brightness_down_) GrabKey(key_brightness_down_, 0); @@ -325,11 +324,11 @@ bool SystemKeyEventListener::ProcessedXEvent(XEvent* xevent) { if (keycode) { const unsigned int state = (xevent->xkey.state & kSupportedModifiers); - // Toggle Caps Lock if both Shift keys are pressed simultaneously. - if (keycode == key_left_shift_ || keycode == key_right_shift_) { - const bool other_shift_is_held = (state & ShiftMask); + // Toggle Caps Lock if Shift and Search keys are pressed. + if (keycode == key_search_) { + const bool shift_is_held = (state & ShiftMask); const bool other_mods_are_held = (state & ~(ShiftMask | LockMask)); - if (other_shift_is_held && !other_mods_are_held) + if (shift_is_held && !other_mods_are_held) input_method_manager->GetXKeyboard()->SetCapsLockEnabled( !caps_lock_is_on_); } diff --git a/chrome/browser/chromeos/system_key_event_listener.h b/chrome/browser/chromeos/system_key_event_listener.h index 12a8d2f..b0d7cd0 100644 --- a/chrome/browser/chromeos/system_key_event_listener.h +++ b/chrome/browser/chromeos/system_key_event_listener.h @@ -96,8 +96,7 @@ class SystemKeyEventListener : public MessageLoopForUI::Observer { int32 key_f8_; int32 key_f9_; int32 key_f10_; - int32 key_left_shift_; - int32 key_right_shift_; + int32 key_search_; bool stopped_; diff --git a/chrome/browser/chromeos/system_key_event_listener_browsertest.cc b/chrome/browser/chromeos/system_key_event_listener_browsertest.cc index 40c7551..fb116da 100644 --- a/chrome/browser/chromeos/system_key_event_listener_browsertest.cc +++ b/chrome/browser/chromeos/system_key_event_listener_browsertest.cc @@ -185,11 +185,11 @@ class SystemKeyEventListenerTest : public InProcessBrowserTest { IN_PROC_BROWSER_TEST_F(SystemKeyEventListenerTest, TestCapsLock) { listener_->AddCapsLockObserver(&caps_lock_observer_); - // Press both Shift keys. Note that ProcessedXEvent() returns false even when - // the second Shift key is pressed. + // Press Shift and Search keys. Note that ProcessedXEvent() returns false + // even when Shift and Search keys are both pressed. EXPECT_FALSE(SendFakeEvent(XK_Shift_L, 0, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask, false)); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask, false)); // Enter a new message loop and wait for OnCapsLockChange() to be called. ui_test_utils::RunMessageLoop(); @@ -199,25 +199,25 @@ IN_PROC_BROWSER_TEST_F(SystemKeyEventListenerTest, TestCapsLock) { // Test all other Shift_L/R combinations. EXPECT_FALSE(SendFakeEvent(XK_Shift_L, 0, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask, true)); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask, false)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, 0, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, 0, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask, false)); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( !initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, 0, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask, true)); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask, false)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, 0, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); @@ -233,33 +233,33 @@ IN_PROC_BROWSER_TEST_F(SystemKeyEventListenerTest, TestCapsLockWithNumLock) { listener_->AddCapsLockObserver(&caps_lock_observer_); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, num_lock_mask_, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | num_lock_mask_, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | num_lock_mask_, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, false)); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | num_lock_mask_, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( !initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, num_lock_mask_, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | num_lock_mask_, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, true)); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | num_lock_mask_, false)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | num_lock_mask_, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, num_lock_mask_, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | num_lock_mask_, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | num_lock_mask_, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, false)); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | num_lock_mask_, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( !initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, num_lock_mask_, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | num_lock_mask_, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, true)); EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | num_lock_mask_, false)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | num_lock_mask_, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | num_lock_mask_, false)); ui_test_utils::RunMessageLoop(); EXPECT_EQ( initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); @@ -268,14 +268,14 @@ IN_PROC_BROWSER_TEST_F(SystemKeyEventListenerTest, TestCapsLockWithNumLock) { manager_->GetXKeyboard()->SetCapsLockEnabled(initial_caps_lock_state_); } -// Tests pressing Shift_L+R with an another modifier like Control. Caps Lock +// Tests pressing Shift+Search with an another modifier like Control. Caps Lock // status should not be changed this time. IN_PROC_BROWSER_TEST_F(SystemKeyEventListenerTest, TestCapsLockWithControl) { listener_->AddCapsLockObserver(&caps_lock_observer_); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ControlMask, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | ControlMask, true)); - EXPECT_FALSE(SendFakeEvent(XK_Shift_R, ShiftMask | ControlMask, false)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | ControlMask, true)); + EXPECT_FALSE(SendFakeEvent(XK_Super_L, ShiftMask | ControlMask, false)); EXPECT_FALSE(SendFakeEvent(XK_Shift_L, ShiftMask | ControlMask, false)); EXPECT_EQ( initial_caps_lock_state_, manager_->GetXKeyboard()->CapsLockIsEnabled()); |