summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandsurface_p.h
diff options
context:
space:
mode:
authorJohan Klokkhammer Helsing <johan.helsing@qt.io>2018-10-17 14:05:27 +0200
committerJohan Helsing <johan.helsing@qt.io>2018-10-18 12:11:27 +0000
commit4a328e3533f93ed65f9dc77f764b3cbe3c694266 (patch)
treec7e507cc991be9a01672972eff9ce88b56beade6 /src/compositor/compositor_api/qwaylandsurface_p.h
parent43d12496c684b5f2b08c6a8c0b994f06efc25712 (diff)
Compositor: Emit signals after applying pending surface statev5.12.0-beta3
[ChangeLog][Compositor] Fixed a bug where some signals on QWaylandSurface were emitted before all double buffered state had been applied. Restructures QWaylandSurface::commit so no signals are emitted until all state mutations are completed. Adds a test to confirm that pending state is applied at once. Also fixes opaqueRegion, which is documented to be double buffered as well, but the old implementation set it immediately. Change-Id: I1c4dfea7c83dd9ee84dc8c03e6d92e2924bf2fad Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Diffstat (limited to 'src/compositor/compositor_api/qwaylandsurface_p.h')
-rw-r--r--src/compositor/compositor_api/qwaylandsurface_p.h6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/compositor/compositor_api/qwaylandsurface_p.h b/src/compositor/compositor_api/qwaylandsurface_p.h
index e0b624fce..df868de63 100644
--- a/src/compositor/compositor_api/qwaylandsurface_p.h
+++ b/src/compositor/compositor_api/qwaylandsurface_p.h
@@ -102,9 +102,6 @@ public:
using QtWaylandServer::wl_surface::resource;
- void setSize(const QSize &size);
- void setBufferScale(int bufferScale);
-
void removeFrameCallback(QtWayland::FrameCallback *callback);
void notifyViewsAboutDestruction();
@@ -155,6 +152,7 @@ public: //member variables
bool newlyAttached;
QRegion inputRegion;
int bufferScale;
+ QRegion opaqueRegion;
} pending;
QPoint lastLocalMousePos;
@@ -168,7 +166,7 @@ public: //member variables
QRegion inputRegion;
QRegion opaqueRegion;
- QSize size;
+ QSize bufferSize;
int bufferScale = 1;
bool isCursorSurface = false;
bool destroyed = false;