summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gui/embedded/qwindowsystem_qws.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gui/embedded/qwindowsystem_qws.cpp b/src/gui/embedded/qwindowsystem_qws.cpp
index 894cace..487dc73 100644
--- a/src/gui/embedded/qwindowsystem_qws.cpp
+++ b/src/gui/embedded/qwindowsystem_qws.cpp
@@ -3885,8 +3885,13 @@ void QWSServerPrivate::request_region(int wid, const QString &surfaceKey,
const bool wasOpaque = changingw->opaque;
- changingw->createSurface(surfaceKey, surfaceData);
QWSWindowSurface *surface = changingw->windowSurface();
+ if (!surface) {
+ changingw->createSurface(surfaceKey, surfaceData);
+ surface = changingw->windowSurface();
+ } else {
+ surface->setPermanentState(surfaceData);
+ }
changingw->opaque = surface->isOpaque();