summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/platforms/qnx/qqnxwindow.cpp8
-rw-r--r--src/plugins/platforms/qnx/qqnxwindow.h2
2 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/platforms/qnx/qqnxwindow.cpp b/src/plugins/platforms/qnx/qqnxwindow.cpp
index 2b41631d06..85c3e495f8 100644
--- a/src/plugins/platforms/qnx/qqnxwindow.cpp
+++ b/src/plugins/platforms/qnx/qqnxwindow.cpp
@@ -240,6 +240,9 @@ void QQnxWindow::setVisible(bool visible)
root->updateVisibility(root->m_visible);
window()->requestActivateWindow();
+
+ if (window()->isTopLevel() && visible)
+ QWindowSystemInterface::handleExposeEvent(window(), window()->geometry());
}
void QQnxWindow::updateVisibility(bool parentVisible)
@@ -278,6 +281,11 @@ void QQnxWindow::setOpacity(qreal level)
// the transparency will look wrong...
}
+bool QQnxWindow::isExposed() const
+{
+ return m_visible;
+}
+
void QQnxWindow::setBufferSize(const QSize &size)
{
#if defined(QQNXWINDOW_DEBUG)
diff --git a/src/plugins/platforms/qnx/qqnxwindow.h b/src/plugins/platforms/qnx/qqnxwindow.h
index 63e71c0bf8..fc27c128b6 100644
--- a/src/plugins/platforms/qnx/qqnxwindow.h
+++ b/src/plugins/platforms/qnx/qqnxwindow.h
@@ -73,6 +73,8 @@ public:
void setVisible(bool visible);
void setOpacity(qreal level);
+ bool isExposed() const;
+
WId winId() const { return (WId)m_window; }
screen_window_t nativeHandle() const { return m_window; }