| Index: chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
|
| diff --git a/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc b/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
|
| index 61fc8090bda2744cc0f28ad9f0ce679c3bb80aca..332fe1f6ad02ecc2adf08938c8ee300dfc76f7a9 100644
|
| --- a/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
|
| +++ b/chrome/browser/extensions/api/virtual_keyboard_private/chrome_virtual_keyboard_delegate.cc
|
| @@ -6,6 +6,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "ash/shell.h"
|
| #include "base/command_line.h"
|
| #include "base/metrics/histogram.h"
|
| #include "base/metrics/user_metrics_action.h"
|
| @@ -58,6 +59,7 @@ bool ChromeVirtualKeyboardDelegate::GetKeyboardConfig(
|
| DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
| results->SetString("layout", keyboard::GetKeyboardLayout());
|
| results->SetBoolean("a11ymode", keyboard::GetAccessibilityKeyboardEnabled());
|
| + results->SetBoolean("hotrodmode", keyboard::GetHotrodKeyboardEnabled());
|
| scoped_ptr<base::ListValue> features(new base::ListValue());
|
| features->AppendString(GenerateFeatureFlag(
|
| "floatingvirtualkeyboard", keyboard::IsFloatingVirtualKeyboardEnabled()));
|
| @@ -102,6 +104,18 @@ bool ChromeVirtualKeyboardDelegate::OnKeyboardLoaded() {
|
| return true;
|
| }
|
|
|
| +void ChromeVirtualKeyboardDelegate::SetHotrodKeyboard(bool enable) {
|
| + if (keyboard::GetHotrodKeyboardEnabled() == enable)
|
| + return;
|
| +
|
| + keyboard::SetHotrodKeyboardEnabled(enable);
|
| + // This reloads virtual keyboard even if it exists. This ensures virtual
|
| + // keyboard gets the correct state of the hotrod keyboard through
|
| + // chrome.virtualKeyboardPrivate.getKeyboardConfig.
|
| + if (enable && keyboard::IsKeyboardEnabled())
|
| + ash::Shell::GetInstance()->CreateKeyboard();
|
| +}
|
| +
|
| bool ChromeVirtualKeyboardDelegate::LockKeyboard(bool state) {
|
| DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
| keyboard::KeyboardController* controller =
|
|
|