summaryrefslogtreecommitdiffstats
path: root/src/widgets
diff options
context:
space:
mode:
authorSamuel Rødal <samuel.rodal@nokia.com>2011-09-29 18:02:54 +0200
committerQt by Nokia <qt-info@nokia.com>2011-10-05 12:49:29 +0200
commit11070a090a9cc77d02315a3cb39eaf628bd9bfe7 (patch)
treef9ea6781a9694e991136ffb78fb1f1382cbe2c92 /src/widgets
parent253497b7446c7d723aa3bdd7152e25d6852f2604 (diff)
Added QWindow::isActive() and focus in / out events.
Renamed QGuiApplication::activeWindow() to QGuiApplication::focusWindow(), implemented QWindow::isActive() as a style hint, and added focus in / out events. Change-Id: I71866e76c5a817def3e17bcc20a4fc32081a0e7a Reviewed-on: http://codereview.qt-project.org/5811 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Diffstat (limited to 'src/widgets')
-rw-r--r--src/widgets/kernel/qapplication_qpa.cpp2
-rw-r--r--src/widgets/kernel/qwidgetwindow_qpa.cpp6
2 files changed, 7 insertions, 1 deletions
diff --git a/src/widgets/kernel/qapplication_qpa.cpp b/src/widgets/kernel/qapplication_qpa.cpp
index 29ac94bfb1..8732a194e8 100644
--- a/src/widgets/kernel/qapplication_qpa.cpp
+++ b/src/widgets/kernel/qapplication_qpa.cpp
@@ -157,7 +157,7 @@ void QApplicationPrivate::notifyActiveWindowChange(QWindow *previous)
{
Q_UNUSED(previous);
Q_Q(QApplication);
- QWindow *wnd = QGuiApplicationPrivate::active_window;
+ QWindow *wnd = QGuiApplicationPrivate::focus_window;
if (inPopupMode()) // some delayed focus event to ignore
return;
QWidget *tlw = qt_tlw_for_window(wnd);
diff --git a/src/widgets/kernel/qwidgetwindow_qpa.cpp b/src/widgets/kernel/qwidgetwindow_qpa.cpp
index ee5cd7482e..2265fb55fb 100644
--- a/src/widgets/kernel/qwidgetwindow_qpa.cpp
+++ b/src/widgets/kernel/qwidgetwindow_qpa.cpp
@@ -79,6 +79,12 @@ bool QWidgetWindow::event(QEvent *event)
handleEnterLeaveEvent(event);
return true;
+ // these should not be sent to QWidget, the corresponding events
+ // are sent by QApplicationPrivate::notifyActiveWindowChange()
+ case QEvent::FocusIn:
+ case QEvent::FocusOut:
+ return false;
+
case QEvent::KeyPress:
case QEvent::KeyRelease:
handleKeyEvent(static_cast<QKeyEvent *>(event));