diff options
author | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2013-05-22 13:26:31 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-05-23 12:49:39 +0200 |
commit | 15fbc0112d260f680cb940c3bae531cb44a3895c (patch) | |
tree | fed95a1e9de4d64d6645dd99184dda1836d5a7bc /src | |
parent | 8078a04e1950d1e9957c3b3c3ea8e6e0c3d34b80 (diff) |
Suppress "Click to focus" for widget windows.
Calling requestActivate() on native child widgets
can cause focus problems (keyboard input going to
widgets that don't handle it,etc).
Breakage introduced by:
4675681b5e88b178adbdef775ac6a4b1e573458 .
Task-number: QTBUG-30922
Change-Id: I4efdfef6bffc89fe62156d248f05ed99c58bf794
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/platforms/windows/qwindowsmousehandler.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/platforms/windows/qwindowsmousehandler.cpp b/src/plugins/platforms/windows/qwindowsmousehandler.cpp index dd16ea1c6f..fd00a07d6c 100644 --- a/src/plugins/platforms/windows/qwindowsmousehandler.cpp +++ b/src/plugins/platforms/windows/qwindowsmousehandler.cpp @@ -237,8 +237,8 @@ bool QWindowsMouseHandler::translateMouseEvent(QWindow *window, HWND hwnd, platformWindow->setFlag(QWindowsWindow::AutoMouseCapture); if (QWindowsContext::verboseEvents) qDebug() << "Automatic mouse capture " << window; - // Implement "Click to focus" for native child windows. - if (!window->isTopLevel() && QGuiApplication::focusWindow() != window) + // Implement "Click to focus" for native child windows (unless it is a native widget window). + if (!window->isTopLevel() && !window->inherits("QWidgetWindow") && QGuiApplication::focusWindow() != window) window->requestActivate(); } else if (platformWindow->hasMouseCapture() && platformWindow->testFlag(QWindowsWindow::AutoMouseCapture) |