Added ApplicationStateChangeEvent handling to QQuickApplication.
authorTomasz Olszak <olszak.tomasz@gmail.com>
Sat, 29 Jun 2013 14:31:37 +0000 (14:31 +0000)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Tue, 9 Jul 2013 05:45:24 +0000 (07:45 +0200)
Change-Id: I8b8965bc36b483be7287abf4485221f428a0b92a
Reviewed-by: Alan Alpert (Personal) <416365416c@gmail.com>
src/quick/util/qquickapplication.cpp

index bc8b724..2de28a9 100644 (file)
@@ -103,9 +103,15 @@ bool QQuickApplication::eventFilter(QObject *, QEvent *event)
 {
     Q_D(QQuickApplication);
     if ((event->type() == QEvent::ApplicationActivate) ||
-        (event->type() == QEvent::ApplicationDeactivate)) {
+        (event->type() == QEvent::ApplicationDeactivate) ||
+        (event->type() == QEvent::ApplicationStateChange)) {
         bool wasActive = d->isActive;
-        d->isActive = (event->type() == QEvent::ApplicationActivate);
+        if (event->type() == QEvent::ApplicationStateChange) {
+            QApplicationStateChangeEvent * e= static_cast<QApplicationStateChangeEvent*>(event);
+            d->isActive = e->applicationState() == Qt::ApplicationActive;
+        } else {
+            d->isActive = (event->type() == QEvent::ApplicationActivate);
+        }
         if (d->isActive != wasActive) {
             emit activeChanged();
         }