summaryrefslogtreecommitdiffstats
path: root/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
diff options
context:
space:
mode:
authorGiulio Camuffo <giulio.camuffo@jollamobile.com>2014-04-16 11:02:30 +0300
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-22 09:14:32 +0200
commit48126502434c0c966a744e113b4a420656d8c206 (patch)
tree93d33a1d738c3b9b0cd264766e8e356b515485c5 /src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
parent17b37f7e907d10d028b70f43b8afc80a384519a4 (diff)
Egl surfaces can now be invalidated, make sure to recreate them
Change-Id: Ifae97cc4538989bc45641bda5ce2ec8a7d8980ce Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Diffstat (limited to 'src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp')
-rw-r--r--src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
index 306f08507..fc7aca384 100644
--- a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
@@ -64,7 +64,7 @@ QWaylandEglWindow::QWaylandEglWindow(QWindow *window)
, m_resize(false)
, m_format(q_glFormatFromConfig(m_clientBufferIntegration->eglDisplay(), m_eglConfig))
{
- setGeometry(window->geometry());
+ create();
}
QWaylandEglWindow::~QWaylandEglWindow()
@@ -87,9 +87,14 @@ QWaylandWindow::WindowType QWaylandEglWindow::windowType() const
void QWaylandEglWindow::setGeometry(const QRect &rect)
{
QWaylandWindow::setGeometry(rect);
+ create();
+}
+void QWaylandEglWindow::create()
+{
createDecoration();
QMargins margins = frameMargins();
+ QRect rect = geometry();
QSize sizeWithMargins = rect.size() + QSize(margins.left() + margins.right(), margins.top() + margins.bottom());
// wl_egl_windows must have both width and height > 0