Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(93)

Unified Diff: ui/base/ime/input_method.cc

Issue 8576005: IME (input method editor) support for Aura, part 3 of 3: Use ui::InputMethod in ash. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase, review Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/base/ime/input_method.cc
diff --git a/ui/base/ime/input_method.cc b/ui/base/ime/input_method.cc
new file mode 100644
index 0000000000000000000000000000000000000000..332f44437142dea836f59124f703941c5f5f4741
--- /dev/null
+++ b/ui/base/ime/input_method.cc
@@ -0,0 +1,53 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "ui/base/ime/input_method.h"
+
+namespace ui {
+
+InputMethod::~InputMethod() {
+}
+
+// We emulate Windows' WM_KEYDOWN and WM_CHAR messages. WM_CHAR events are only
+// generated for certain keys; see
+// http://msdn.microsoft.com/en-us/library/windows/desktop/ms646268.aspx.
+bool InputMethod::ShouldSendCharEventForKeyboardCode(KeyboardCode keycode) {
+ if ((keycode >= VKEY_0 && keycode <= VKEY_9) ||
+ (keycode >= VKEY_A && keycode <= VKEY_Z) ||
+ (keycode >= VKEY_NUMPAD0 && keycode <= VKEY_NUMPAD9)) {
+ return true;
+ }
+
+ switch (keycode) {
+ case VKEY_BACK:
+ case VKEY_RETURN:
+ case VKEY_ESCAPE:
+ case VKEY_SPACE:
+ case VKEY_TAB:
+ // In addition to the keys listed at MSDN, we include other
+ // graphic-character and numpad keys.
+ case VKEY_MULTIPLY:
+ case VKEY_ADD:
+ case VKEY_SUBTRACT:
+ case VKEY_DECIMAL:
+ case VKEY_DIVIDE:
+ case VKEY_OEM_1:
+ case VKEY_OEM_2:
+ case VKEY_OEM_3:
+ case VKEY_OEM_4:
+ case VKEY_OEM_5:
+ case VKEY_OEM_6:
+ case VKEY_OEM_7:
+ case VKEY_OEM_102:
+ case VKEY_OEM_PLUS:
+ case VKEY_OEM_COMMA:
+ case VKEY_OEM_MINUS:
+ case VKEY_OEM_PERIOD:
+ return true;
+ default:
+ return false;
+ }
+}
+
+} // namespace ui

Powered by Google App Engine
This is Rietveld 408576698