summaryrefslogtreecommitdiffstats
path: root/win8/metro_driver/chrome_app_view_ash.h
diff options
context:
space:
mode:
authoryukawa@chromium.org <yukawa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-13 08:51:56 +0000
committeryukawa@chromium.org <yukawa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-13 08:51:56 +0000
commitf45eb9cbb423bddaacfa84992a5a6fdef395993a (patch)
treee7e0dc88acb3e810188134aade1851806a44275a /win8/metro_driver/chrome_app_view_ash.h
parent9f13938449350a6f118b7cadd7a70055d1a74b05 (diff)
downloadchromium_src-f45eb9cbb423bddaacfa84992a5a6fdef395993a.zip
chromium_src-f45eb9cbb423bddaacfa84992a5a6fdef395993a.tar.gz
chromium_src-f45eb9cbb423bddaacfa84992a5a6fdef395993a.tar.bz2
Ash: Tell the browser process of the visibility of IME's popup UI
This is one of supplemental CLs to port full Desktop IME features into Ash mode. Rationale: Some components in Chrome are interested in whether an IME is showing its own popup window such as the candidate window. OmniBox is one example (see Issue 326774). W3C IME API on which kochi@ is currently working also relies on this information. Implementation memo: This CL uses SetWinEventHook API to monitor the some accessibility events that are generated by IMEs. The parameters passed to SetWinEventHook are carefully chosen so the delegate is called back on the UI thread even when an IME generates the accessibility events on a background thread (actually MS-IME on Windows 8.1 seems to be doing this). BUG=238585, 326774 TEST=manually done on Windows 8.1 with MS-IME Japanese Review URL: https://codereview.chromium.org/101333006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240555 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'win8/metro_driver/chrome_app_view_ash.h')
-rw-r--r--win8/metro_driver/chrome_app_view_ash.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/win8/metro_driver/chrome_app_view_ash.h b/win8/metro_driver/chrome_app_view_ash.h
index 7517502..f657792 100644
--- a/win8/metro_driver/chrome_app_view_ash.h
+++ b/win8/metro_driver/chrome_app_view_ash.h
@@ -15,6 +15,7 @@
#include "base/strings/string16.h"
#include "ui/events/event_constants.h"
#include "win8/metro_driver/direct3d_helper.h"
+#include "win8/metro_driver/ime/ime_popup_observer.h"
#include "win8/metro_driver/ime/input_source_observer.h"
#include "win8/metro_driver/ime/text_service_delegate.h"
@@ -46,6 +47,7 @@ struct MetroViewerHostMsg_SaveAsDialogParams;
class ChromeAppViewAsh
: public mswr::RuntimeClass<winapp::Core::IFrameworkView>,
+ public metro_driver::ImePopupObserver,
public metro_driver::InputSourceObserver,
public metro_driver::TextServiceDelegate {
public:
@@ -105,6 +107,9 @@ class ChromeAppViewAsh
private:
+ // ImePopupObserver overrides.
+ virtual void OnImePopupChanged(ImePopupObserver::EventType event) OVERRIDE;
+
// InputSourceObserver overrides.
virtual void OnInputSourceChanged() OVERRIDE;