From af27b37b084d46bb7084633b56feaf3bb6a3ac48 Mon Sep 17 00:00:00 2001 From: jian liang Date: Wed, 13 Feb 2013 11:50:37 +0800 Subject: Activate window before replay mouse press event MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Activate the window of the widget under mouse pointer before replay mouse press event. Change-Id: I9e699374accf108aa49b2a3c73d5e76631100dfd Reviewed-by: Friedemann Kleint Reviewed-by: Samuel Rødal Reviewed-by: Gunnar Sletta --- src/widgets/kernel/qwidgetwindow.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp index d7b9d8c5fb..c543303024 100644 --- a/src/widgets/kernel/qwidgetwindow.cpp +++ b/src/widgets/kernel/qwidgetwindow.cpp @@ -356,6 +356,12 @@ void QWidgetWindow::handleMouseEvent(QMouseEvent *event) // the popup disappeared, replay the mouse press event QWidget *w = QApplication::widgetAt(event->globalPos()); if (w && !QApplicationPrivate::isBlockedByModal(w)) { + // activate window of the widget under mouse pointer + if (!w->isActiveWindow()) { + w->activateWindow(); + w->raise(); + } + QWindow *win = w->windowHandle(); if (!win) win = w->nativeParentWidget()->windowHandle(); -- cgit v1.2.3