summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/input_method/input_method_manager_impl.cc
diff options
context:
space:
mode:
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.cc6
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();