summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/plugins/platforms/eglfs/qeglfswindow.cpp17
-rw-r--r--src/plugins/platforms/eglfs/qeglfswindow.h2
2 files changed, 18 insertions, 1 deletions
diff --git a/src/plugins/platforms/eglfs/qeglfswindow.cpp b/src/plugins/platforms/eglfs/qeglfswindow.cpp
index 25da588519..298592bae3 100644
--- a/src/plugins/platforms/eglfs/qeglfswindow.cpp
+++ b/src/plugins/platforms/eglfs/qeglfswindow.cpp
@@ -51,8 +51,13 @@ QEglFSWindow::QEglFSWindow(QWindow *w)
static int serialNo = 0;
m_winid = ++serialNo;
#ifdef QEGL_EXTRA_DEBUG
- qWarning("QEglWindow %p: %p %p 0x%x\n", this, w, screen, uint(m_winid));
+ qWarning("QEglWindow %p: %p 0x%x\n", this, w, uint(m_winid));
#endif
+
+ QRect screenGeometry(screen()->availableGeometry());
+ if (w->geometry() != screenGeometry) {
+ QWindowSystemInterface::handleGeometryChange(w, screenGeometry);
+ }
}
void QEglFSWindow::setGeometry(const QRect &)
@@ -69,4 +74,14 @@ WId QEglFSWindow::winId() const
return m_winid;
}
+void QEglFSWindow::setVisible(bool visible)
+{
+ if (visible) {
+ QWindowSystemInterface::handleMapEvent(window());
+ } else {
+ QWindowSystemInterface::handleUnmapEvent(window());
+ }
+
+}
+
QT_END_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/qeglfswindow.h b/src/plugins/platforms/eglfs/qeglfswindow.h
index 09f553d3b7..32a6e71683 100644
--- a/src/plugins/platforms/eglfs/qeglfswindow.h
+++ b/src/plugins/platforms/eglfs/qeglfswindow.h
@@ -58,6 +58,8 @@ public:
void setGeometry(const QRect &);
WId winId() const;
+ void setVisible(bool visible);
+
private:
WId m_winid;
};