diff options
Diffstat (limited to 'chrome/browser/chromeos/input_method/input_method_manager_impl.cc')
-rw-r--r-- | chrome/browser/chromeos/input_method/input_method_manager_impl.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc index c0082d0..7f2fa95 100644 --- a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc +++ b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc @@ -698,7 +698,8 @@ bool InputMethodManagerImpl::SwitchToNextInputMethod() { return true; } -bool InputMethodManagerImpl::SwitchToPreviousInputMethod() { +bool InputMethodManagerImpl::SwitchToPreviousInputMethod( + const ui::Accelerator& accelerator) { // Sanity check. if (active_input_method_ids_.empty()) { DVLOG(1) << "active input method is empty"; @@ -710,6 +711,9 @@ bool InputMethodManagerImpl::SwitchToPreviousInputMethod() { if (active_input_method_ids_.size() == 1) return false; + if (accelerator.type() == ui::ET_KEY_RELEASED) + return true; + if (previous_input_method_.id().empty() || previous_input_method_.id() == current_input_method_.id()) { return SwitchToNextInputMethod(); |