summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/qnx/qqnxscreen.cpp5
-rw-r--r--src/plugins/platforms/qnx/qqnxscreen.h4
2 files changed, 8 insertions, 1 deletions
diff --git a/src/plugins/platforms/qnx/qqnxscreen.cpp b/src/plugins/platforms/qnx/qqnxscreen.cpp
index 84721c9c2a..855da13681 100644
--- a/src/plugins/platforms/qnx/qqnxscreen.cpp
+++ b/src/plugins/platforms/qnx/qqnxscreen.cpp
@@ -562,8 +562,10 @@ void QQnxScreen::addUnderlayWindow(screen_window_t window)
void QQnxScreen::removeOverlayOrUnderlayWindow(screen_window_t window)
{
const int numRemoved = m_overlays.removeAll(window) + m_underlays.removeAll(window);
- if (numRemoved > 0)
+ if (numRemoved > 0) {
updateHierarchy();
+ Q_EMIT foreignWindowClosed(window);
+ }
}
void QQnxScreen::newWindowCreated(void *window)
@@ -597,6 +599,7 @@ void QQnxScreen::newWindowCreated(void *window)
addUnderlayWindow(windowHandle);
else
addOverlayWindow(windowHandle);
+ Q_EMIT foreignWindowCreated(windowHandle);
}
}
}
diff --git a/src/plugins/platforms/qnx/qqnxscreen.h b/src/plugins/platforms/qnx/qqnxscreen.h
index 6e8c2c6a60..42c490d443 100644
--- a/src/plugins/platforms/qnx/qqnxscreen.h
+++ b/src/plugins/platforms/qnx/qqnxscreen.h
@@ -98,6 +98,10 @@ public:
QPlatformCursor *cursor() const;
+Q_SIGNALS:
+ void foreignWindowCreated(void *window);
+ void foreignWindowClosed(void *window);
+
public Q_SLOTS:
void setRotation(int rotation);
void newWindowCreated(void *window);