Index: ash/sticky_keys/sticky_keys_controller.cc |
diff --git a/ash/sticky_keys/sticky_keys_controller.cc b/ash/sticky_keys/sticky_keys_controller.cc |
index 6237004f1f417f1a8793a8c0859bf0e486e69500..779b1404aa725c4bcca1f71188abebee2d3ff5e0 100644 |
--- a/ash/sticky_keys/sticky_keys_controller.cc |
+++ b/ash/sticky_keys/sticky_keys_controller.cc |
@@ -66,6 +66,7 @@ void StickyKeysController::Enable(bool enabled) { |
altgr_sticky_key_.reset(new StickyKeysHandler(ui::EF_ALTGR_DOWN)); |
ctrl_sticky_key_.reset(new StickyKeysHandler(ui::EF_CONTROL_DOWN)); |
mod3_sticky_key_.reset(new StickyKeysHandler(ui::EF_MOD3_DOWN)); |
+ search_sticky_key_.reset(new StickyKeysHandler(ui::EF_COMMAND_DOWN)); |
overlay_.reset(new StickyKeysOverlay()); |
overlay_->SetModifierVisible(ui::EF_ALTGR_DOWN, altgr_enabled_); |
@@ -99,6 +100,8 @@ bool StickyKeysController::HandleKeyEvent(const ui::KeyEvent& event, |
ctrl_sticky_key_->HandleKeyEvent( |
event, key_code, mod_down_flags, released) || |
mod3_sticky_key_->HandleKeyEvent( |
+ event, key_code, mod_down_flags, released) || |
+ search_sticky_key_->HandleKeyEvent( |
event, key_code, mod_down_flags, released); |
} |
@@ -177,7 +180,8 @@ ui::EventRewriteStatus StickyKeysController::NextDispatchEvent( |
alt_sticky_key_->GetModifierUpEvent(new_event) + |
altgr_sticky_key_->GetModifierUpEvent(new_event) + |
ctrl_sticky_key_->GetModifierUpEvent(new_event) + |
- mod3_sticky_key_->GetModifierUpEvent(new_event); |
+ mod3_sticky_key_->GetModifierUpEvent(new_event) + |
+ search_sticky_key_->GetModifierUpEvent(new_event); |
if (!new_event) |
return ui::EVENT_REWRITE_CONTINUE; |
if (remaining) |
@@ -333,6 +337,8 @@ StickyKeysHandler::KeyEventType StickyKeysHandler::TranslateKeyEvent( |
is_target_key = (modifier_flag_ == ui::EF_ALTGR_DOWN); |
} else if (key_code == ui::VKEY_OEM_8) { |
is_target_key = (modifier_flag_ == ui::EF_MOD3_DOWN); |
+ } else if (key_code == ui::VKEY_LWIN) { |
+ is_target_key = (modifier_flag_ == ui::EF_COMMAND_DOWN); |
} else { |
return type == ui::ET_KEY_PRESSED ? |
NORMAL_KEY_DOWN : NORMAL_KEY_UP; |