summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/qnx/qqnxbpseventfilter.cpp20
-rw-r--r--src/plugins/platforms/qnx/qqnxnavigatoreventhandler.cpp18
-rw-r--r--src/plugins/platforms/qnx/qqnxnavigatoreventhandler.h4
-rw-r--r--src/plugins/platforms/qnx/qqnxnavigatoreventnotifier.cpp4
4 files changed, 46 insertions, 0 deletions
diff --git a/src/plugins/platforms/qnx/qqnxbpseventfilter.cpp b/src/plugins/platforms/qnx/qqnxbpseventfilter.cpp
index 647e1a692f..089d5681d6 100644
--- a/src/plugins/platforms/qnx/qqnxbpseventfilter.cpp
+++ b/src/plugins/platforms/qnx/qqnxbpseventfilter.cpp
@@ -191,6 +191,26 @@ bool QQnxBpsEventFilter::handleNavigatorEvent(bps_event_t *event)
m_navigatorEventHandler->handleExit();
break;
+ case NAVIGATOR_WINDOW_ACTIVE: {
+ #if defined(QQNXBPSEVENTFILTER_DEBUG)
+ qDebug() << "QQNX: Navigator WINDOW ACTIVE event";
+ #endif
+
+ const QByteArray id(navigator_event_get_groupid(event));
+ m_navigatorEventHandler->handleWindowGroupActivated(id);
+ break;
+ }
+
+ case NAVIGATOR_WINDOW_INACTIVE: {
+ #if defined(QQNXBPSEVENTFILTER_DEBUG)
+ qDebug() << "QQNX: Navigator WINDOW INACTIVE event";
+ #endif
+
+ const QByteArray id(navigator_event_get_groupid(event));
+ m_navigatorEventHandler->handleWindowGroupDeactivated(id);
+ break;
+ }
+
default:
#if defined(QQNXBPSEVENTFILTER_DEBUG)
qDebug() << "QQNX: Unhandled navigator event. code=" << bps_event_get_code(event);
diff --git a/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.cpp b/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.cpp
index 72227c6089..41b4a2f301 100644
--- a/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.cpp
+++ b/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.cpp
@@ -95,4 +95,22 @@ void QQnxNavigatorEventHandler::handleExit()
QCoreApplication::quit();
}
+void QQnxNavigatorEventHandler::handleWindowGroupActivated(const QByteArray &id)
+{
+#if defined(QQNXNAVIGATOREVENTHANDLER_DEBUG)
+ qDebug() << Q_FUNC_INFO << id;
+#endif
+
+ Q_EMIT windowGroupActivated(id);
+}
+
+void QQnxNavigatorEventHandler::handleWindowGroupDeactivated(const QByteArray &id)
+{
+#if defined(QQNXNAVIGATOREVENTHANDLER_DEBUG)
+ qDebug() << Q_FUNC_INFO << id;
+#endif
+
+ Q_EMIT windowGroupDeactivated(id);
+}
+
QT_END_NAMESPACE
diff --git a/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.h b/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.h
index 58a1ac8cb3..363374153b 100644
--- a/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.h
+++ b/src/plugins/platforms/qnx/qqnxnavigatoreventhandler.h
@@ -56,9 +56,13 @@ public:
void handleOrientationChange(int angle);
void handleSwipeDown();
void handleExit();
+ void handleWindowGroupActivated(const QByteArray &id);
+ void handleWindowGroupDeactivated(const QByteArray &id);
Q_SIGNALS:
void rotationChanged(int angle);
+ void windowGroupActivated(const QByteArray &id);
+ void windowGroupDeactivated(const QByteArray &id);
};
QT_END_NAMESPACE
diff --git a/src/plugins/platforms/qnx/qqnxnavigatoreventnotifier.cpp b/src/plugins/platforms/qnx/qqnxnavigatoreventnotifier.cpp
index d5220c936e..23e2167a25 100644
--- a/src/plugins/platforms/qnx/qqnxnavigatoreventnotifier.cpp
+++ b/src/plugins/platforms/qnx/qqnxnavigatoreventnotifier.cpp
@@ -197,6 +197,10 @@ void QQnxNavigatorEventNotifier::handleMessage(const QByteArray &msg, const QByt
m_eventHandler->handleSwipeDown();
} else if (msg == "exit") {
m_eventHandler->handleExit();
+ } else if (msg == "windowActive") {
+ m_eventHandler->handleWindowGroupActivated(dat);
+ } else if (msg == "windowInactive") {
+ m_eventHandler->handleWindowGroupDeactivated(dat);
}
}