OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/extensions/extension_input_api.h" | 5 #include "chrome/browser/extensions/extension_input_api.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/string_util.h" | 9 #include "base/string_util.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
11 #include "chrome/browser/extensions/key_identifier_conversion_views.h" | 11 #include "chrome/browser/extensions/key_identifier_conversion_views.h" |
12 #include "chrome/browser/ui/browser.h" | 12 #include "chrome/browser/ui/browser.h" |
13 #include "chrome/browser/ui/browser_window.h" | 13 #include "chrome/browser/ui/browser_window.h" |
14 #include "chrome/browser/ui/views/frame/browser_view.h" | 14 #include "chrome/browser/ui/views/frame/browser_view.h" |
15 #include "views/events/event.h" | 15 #include "views/events/event.h" |
16 #include "views/ime/input_method.h" | 16 #include "views/ime/input_method.h" |
17 #include "views/widget/widget.h" | 17 #include "views/widget/widget.h" |
18 | 18 |
| 19 #if defined(TOUCH_UI) |
| 20 #include "content/common/notification_service.h" |
| 21 #endif |
| 22 |
19 #if defined(OS_CHROMEOS) && defined(TOUCH_UI) | 23 #if defined(OS_CHROMEOS) && defined(TOUCH_UI) |
20 #include "chrome/browser/chromeos/cros/cros_library.h" | 24 #include "chrome/browser/chromeos/cros/cros_library.h" |
21 #include "chrome/browser/chromeos/cros/input_method_library.h" | 25 #include "chrome/browser/chromeos/cros/input_method_library.h" |
22 #endif | 26 #endif |
23 | 27 |
24 namespace { | 28 namespace { |
25 | 29 |
26 // Keys. | 30 // Keys. |
27 const char kType[] = "type"; | 31 const char kType[] = "type"; |
28 const char kKeyIdentifier[] = "keyIdentifier"; | 32 const char kKeyIdentifier[] = "keyIdentifier"; |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 if (ime) { | 122 if (ime) { |
119 ime->DispatchKeyEvent(event); | 123 ime->DispatchKeyEvent(event); |
120 } else if (!widget->OnKeyEvent(event)) { | 124 } else if (!widget->OnKeyEvent(event)) { |
121 error_ = kKeyEventUnprocessedError; | 125 error_ = kKeyEventUnprocessedError; |
122 return false; | 126 return false; |
123 } | 127 } |
124 | 128 |
125 return true; | 129 return true; |
126 } | 130 } |
127 | 131 |
| 132 #if defined(TOUCH_UI) |
| 133 bool HideKeyboardFunction::RunImpl() { |
| 134 NotificationService::current()->Notify( |
| 135 NotificationType::HIDE_KEYBOARD_INVOKED, |
| 136 Source<HideKeyboardFunction>(this), |
| 137 NotificationService::NoDetails()); |
| 138 return true; |
| 139 } |
| 140 #endif |
| 141 |
128 #if defined(OS_CHROMEOS) && defined(TOUCH_UI) | 142 #if defined(OS_CHROMEOS) && defined(TOUCH_UI) |
129 // TODO(yusukes): This part should be moved to extension_input_api_chromeos.cc. | 143 // TODO(yusukes): This part should be moved to extension_input_api_chromeos.cc. |
130 bool SendHandwritingStrokeFunction::RunImpl() { | 144 bool SendHandwritingStrokeFunction::RunImpl() { |
131 chromeos::CrosLibrary* cros_library = chromeos::CrosLibrary::Get(); | 145 chromeos::CrosLibrary* cros_library = chromeos::CrosLibrary::Get(); |
132 if (!cros_library->EnsureLoaded()) { | 146 if (!cros_library->EnsureLoaded()) { |
133 error_ = kCrosLibraryNotLoadedError; | 147 error_ = kCrosLibraryNotLoadedError; |
134 return false; | 148 return false; |
135 } | 149 } |
136 | 150 |
137 // TODO(yusukes): Add a parameter for an input context ID. | 151 // TODO(yusukes): Add a parameter for an input context ID. |
(...skipping 24 matching lines...) Expand all Loading... |
162 // TODO(yusukes): Add a parameter for an input context ID. | 176 // TODO(yusukes): Add a parameter for an input context ID. |
163 int stroke_count = 0; // zero means 'clear all strokes'. | 177 int stroke_count = 0; // zero means 'clear all strokes'. |
164 if (HasOptionalArgument(0)) { | 178 if (HasOptionalArgument(0)) { |
165 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &stroke_count)); | 179 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &stroke_count)); |
166 EXTENSION_FUNCTION_VALIDATE(stroke_count >= 0); | 180 EXTENSION_FUNCTION_VALIDATE(stroke_count >= 0); |
167 } | 181 } |
168 cros_library->GetInputMethodLibrary()->CancelHandwritingStrokes(stroke_count); | 182 cros_library->GetInputMethodLibrary()->CancelHandwritingStrokes(stroke_count); |
169 return true; | 183 return true; |
170 } | 184 } |
171 #endif | 185 #endif |
OLD | NEW |