diff options
author | Paul Olav Tvete <paul.tvete@qt.io> | 2018-06-19 14:51:08 +0200 |
---|---|---|
committer | Paul Olav Tvete <paul.tvete@qt.io> | 2018-08-08 10:44:40 +0000 |
commit | 3c072f46b17a195daf1901d0c9f9410b4007b0a7 (patch) | |
tree | daf02d062051f0f445d226d4fa708a6c5271335c /src/client/qwaylandwindow_p.h | |
parent | 19001dc7c28c750d3dbf0086f5bcac2d11ad592f (diff) |
Don't commit same buffer multiple times
In Qt we call flush() when we think the window might need to be
updated. It is also possible to trigger a flush while painting.
Two fixes:
1) If there are attempted flushes between beginPaint() and endPaint,
queue them up, and do them in endPaint().
2) Make sure we only commit the buffer once: after that the
compositor owns the buffer, and it can repaint on its own.
Change-Id: Ibf61068fa95760eb67dbc0b1d0534854114ea528
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
Diffstat (limited to 'src/client/qwaylandwindow_p.h')
-rw-r--r-- | src/client/qwaylandwindow_p.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h index 3324bf700..366548635 100644 --- a/src/client/qwaylandwindow_p.h +++ b/src/client/qwaylandwindow_p.h @@ -55,6 +55,7 @@ #include <QtCore/QMutex> #include <QtGui/QIcon> #include <QtCore/QVariant> +#include <QtCore/QLoggingCategory> #include <qpa/qplatformwindow.h> @@ -67,6 +68,8 @@ QT_BEGIN_NAMESPACE namespace QtWaylandClient { +Q_DECLARE_LOGGING_CATEGORY(lcWaylandBackingstore) + class QWaylandDisplay; class QWaylandBuffer; class QWaylandShellSurface; |