summaryrefslogtreecommitdiffstats
path: root/ui/keyboard/keyboard_controller_proxy.h
diff options
context:
space:
mode:
authorbshe@chromium.org <bshe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-18 18:10:25 +0000
committerbshe@chromium.org <bshe@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-18 18:10:25 +0000
commit57213a6f6acbd4adca2a7a696e2611855671580f (patch)
treeee1dc560b7f01e3ca6d4d5ace2f534042249f0f9 /ui/keyboard/keyboard_controller_proxy.h
parent6ec7331a12e98900b26722a9a3a2fa0fa400b890 (diff)
downloadchromium_src-57213a6f6acbd4adca2a7a696e2611855671580f.zip
chromium_src-57213a6f6acbd4adca2a7a696e2611855671580f.tar.gz
chromium_src-57213a6f6acbd4adca2a7a696e2611855671580f.tar.bz2
Use system virtual keyboard at password field
BUG=352360 Review URL: https://codereview.chromium.org/196653017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257695 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/keyboard/keyboard_controller_proxy.h')
-rw-r--r--ui/keyboard/keyboard_controller_proxy.h23
1 files changed, 19 insertions, 4 deletions
diff --git a/ui/keyboard/keyboard_controller_proxy.h b/ui/keyboard/keyboard_controller_proxy.h
index d8b7f3d3..21701ca 100644
--- a/ui/keyboard/keyboard_controller_proxy.h
+++ b/ui/keyboard/keyboard_controller_proxy.h
@@ -82,6 +82,21 @@ class KEYBOARD_EXPORT KeyboardControllerProxy {
// window).
virtual void EnsureCaretInWorkArea();
+ // Loads system virtual keyboard. Noop if the current virtual keyboard is
+ // system virtual keyboard.
+ virtual void LoadSystemKeyboard();
+
+ // Reloads virtual keyboard URL if the current keyboard's web content URL is
+ // different. The URL can be different if user switch from password field to
+ // any other type input field.
+ // At password field, the system virtual keyboard is forced to load even if
+ // the current IME provides a customized virtual keyboard. This is needed to
+ // prevent IME virtual keyboard logging user's password. Once user switch to
+ // other input fields, the virtual keyboard should switch back to the IME
+ // provided keyboard, or keep using the system virtual keyboard if IME doesn't
+ // provide one.
+ virtual void ReloadKeyboardIfNeeded();
+
protected:
// Gets the BrowserContext to use for creating the WebContents hosting the
// keyboard.
@@ -94,11 +109,11 @@ class KEYBOARD_EXPORT KeyboardControllerProxy {
virtual void SetupWebContents(content::WebContents* contents);
private:
- // Reloads the web contents to the valid url from GetValidUrl().
- void ReloadContents();
+ // Loads the web contents for the given |url|.
+ void LoadContents(const GURL& url);
- // Gets the valid url from default url or override url.
- const GURL& GetValidUrl();
+ // Gets the virtual keyboard URL (either the default URL or IME override URL).
+ const GURL& GetVirtualKeyboardUrl();
const GURL default_url_;
GURL override_url_;