OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/chromeos/input_method/input_method_manager_impl.h" | 5 #include "chrome/browser/chromeos/input_method/input_method_manager_impl.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include <algorithm> // std::find | 9 #include <algorithm> // std::find |
10 #include <memory> | 10 #include <memory> |
11 #include <set> | 11 #include <set> |
12 #include <sstream> | 12 #include <sstream> |
13 #include <utility> | 13 #include <utility> |
14 | 14 |
15 #include "ash/shell.h" | |
15 #include "base/bind.h" | 16 #include "base/bind.h" |
16 #include "base/hash.h" | 17 #include "base/hash.h" |
17 #include "base/location.h" | 18 #include "base/location.h" |
18 #include "base/metrics/histogram_macros.h" | 19 #include "base/metrics/histogram_macros.h" |
19 #include "base/metrics/sparse_histogram.h" | 20 #include "base/metrics/sparse_histogram.h" |
20 #include "base/strings/string_split.h" | 21 #include "base/strings/string_split.h" |
21 #include "base/strings/string_util.h" | 22 #include "base/strings/string_util.h" |
22 #include "base/strings/stringprintf.h" | 23 #include "base/strings/stringprintf.h" |
23 #include "base/sys_info.h" | 24 #include "base/sys_info.h" |
24 #include "chrome/browser/browser_process.h" | 25 #include "chrome/browser/browser_process.h" |
(...skipping 1181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1206 if (is_ime_menu_activated_ == state_->menu_activated) | 1207 if (is_ime_menu_activated_ == state_->menu_activated) |
1207 return; | 1208 return; |
1208 | 1209 |
1209 is_ime_menu_activated_ = state_->menu_activated; | 1210 is_ime_menu_activated_ = state_->menu_activated; |
1210 FOR_EACH_OBSERVER(InputMethodManager::ImeMenuObserver, ime_menu_observers_, | 1211 FOR_EACH_OBSERVER(InputMethodManager::ImeMenuObserver, ime_menu_observers_, |
1211 ImeMenuActivationChanged(is_ime_menu_activated_)); | 1212 ImeMenuActivationChanged(is_ime_menu_activated_)); |
1212 UMA_HISTOGRAM_BOOLEAN("InputMethod.ImeMenu.ActivationChanged", | 1213 UMA_HISTOGRAM_BOOLEAN("InputMethod.ImeMenu.ActivationChanged", |
1213 is_ime_menu_activated_); | 1214 is_ime_menu_activated_); |
1214 } | 1215 } |
1215 | 1216 |
1217 void InputMethodManagerImpl::ShowInputViewWithUrl( | |
Shu Chen
2016/09/11 08:33:25
Is there any reason why this interface/implement i
Azure Wei
2016/09/12 13:12:57
If 'on-screen keyboard' hasn't been enabled, we ne
| |
1218 const std::string& appended_url) { | |
1219 GURL current_url = keyboard::GetOverrideContentUrl(); | |
1220 GURL input_view_url = | |
1221 GetActiveIMEState()->GetCurrentInputMethod().input_view_url(); | |
1222 if (current_url != input_view_url) | |
1223 return; | |
1224 GURL overriden_url = GURL(current_url.spec() + appended_url); | |
1225 keyboard::SetOverrideContentUrl(overriden_url); | |
1226 | |
1227 keyboard::KeyboardController* keyboard_controller = | |
1228 keyboard::KeyboardController::GetInstance(); | |
1229 if (keyboard_controller) { | |
1230 keyboard_controller->ShowKeyboard(false); | |
1231 return; | |
1232 } | |
1233 | |
1234 if (keyboard::IsKeyboardEnabled()) | |
1235 return; | |
1236 | |
1237 // Forcibly enables the a11y onscreen keyboard if there is on keyboard enabled | |
1238 // for now. And re-disables it after showing once. | |
1239 keyboard::SetAccessibilityKeyboardEnabled(true); | |
1240 ash::Shell::GetInstance()->CreateKeyboard(); | |
1241 keyboard_controller = keyboard::KeyboardController::GetInstance(); | |
1242 if (!keyboard_controller) { | |
1243 keyboard::SetAccessibilityKeyboardEnabled(false); | |
1244 } | |
1245 keyboard_controller->ShowKeyboard(false); | |
1246 keyboard::SetAccessibilityKeyboardEnabled(false); | |
1247 } | |
1248 | |
1216 } // namespace input_method | 1249 } // namespace input_method |
1217 } // namespace chromeos | 1250 } // namespace chromeos |
OLD | NEW |