summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows/qwindowscontext.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2011-08-24 09:30:29 +0200
committerFriedemann Kleint <Friedemann.Kleint@nokia.com>2011-08-24 11:16:19 +0200
commit1b2dae36d32bc4d37fa8a12653becd810101f82e (patch)
tree95a1d3159d1a3003528731b7c4987c2ba92f95be /src/plugins/platforms/windows/qwindowscontext.cpp
parentf5777742126d5fb025522d1528d7e12d7239a03f (diff)
Add Input context for Windows.
Change-Id: I20b97e863bf1198b9ad810bb5a25652327f626c9 Reviewed-on: http://codereview.qt.nokia.com/3463 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Oliver Wolff <oliver.wolff@nokia.com>
Diffstat (limited to 'src/plugins/platforms/windows/qwindowscontext.cpp')
-rw-r--r--src/plugins/platforms/windows/qwindowscontext.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/plugins/platforms/windows/qwindowscontext.cpp b/src/plugins/platforms/windows/qwindowscontext.cpp
index d62cbfb4c6..c77a111490 100644
--- a/src/plugins/platforms/windows/qwindowscontext.cpp
+++ b/src/plugins/platforms/windows/qwindowscontext.cpp
@@ -46,6 +46,7 @@
#include "qwindowsmousehandler.h"
#include "qtwindowsglobal.h"
#include "qwindowsmime.h"
+#include "qwindowsinputcontext.h"
#include <QtGui/QWindow>
#include <QtGui/QWindowSystemInterface>
@@ -72,6 +73,7 @@ int QWindowsContext::verboseBackingStore = 0;
int QWindowsContext::verboseFonts = 0;
int QWindowsContext::verboseGL = 0;
int QWindowsContext::verboseOLE = 0;
+int QWindowsContext::verboseInputMethods = 0;
// Get verbosity of components from "foo:2,bar:3"
static inline int componentVerbose(const char *v, const char *keyWord)
@@ -240,6 +242,7 @@ QWindowsContext::QWindowsContext(bool isOpenGL) :
QWindowsContext::verboseFonts = componentVerbose(v, "fonts");
QWindowsContext::verboseGL = componentVerbose(v, "gl");
QWindowsContext::verboseOLE = componentVerbose(v, "ole");
+ QWindowsContext::verboseInputMethods = componentVerbose(v, "im");
}
}
@@ -603,8 +606,21 @@ bool QWindowsContext::windowsProc(HWND hwnd, UINT message,
case QtWindows::DeactivateWindowEvent:
QWindowSystemInterface::handleWindowActivated(0);
return true;
+ case QtWindows::InputMethodStartCompositionEvent:
+ return QWindowsInputContext::instance()->startComposition(hwnd);
+ case QtWindows::InputMethodCompositionEvent:
+ return QWindowsInputContext::instance()->composition(hwnd, lParam);
+ case QtWindows::InputMethodEndCompositionEvent:
+ return QWindowsInputContext::instance()->endComposition(hwnd);
+ case QtWindows::InputMethodRequest:
+ return QWindowsInputContext::instance()->handleIME_Request(wParam, lParam, result);
+ case QtWindows::InputMethodOpenCandidateWindowEvent:
+ case QtWindows::InputMethodCloseCandidateWindowEvent:
+ // TODO: Release/regrab mouse if a popup has mouse grab.
+ return false;
case QtWindows::ClipboardEvent:
case QtWindows::DestroyEvent:
+
case QtWindows::UnknownEvent:
return false;
default: