summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/wayland/qwaylandwindow.h
diff options
context:
space:
mode:
authorThierry Bastian <thierry.bastian@nokia.com>2011-04-19 13:55:10 (GMT)
committerThierry Bastian <thierry.bastian@nokia.com>2011-04-19 13:55:10 (GMT)
commitf540574b44aa874af22ce8b15598b854f28517d7 (patch)
tree6e7b375107fdfeee54516ebc0cd52837a32035eb /src/plugins/platforms/wayland/qwaylandwindow.h
parent364ce5b7f5379499562b4f4f5a68da7ba068fe1e (diff)
parent8485052e3991aebf7c823b3e80fc06ccf9f08991 (diff)
downloadQt-f540574b44aa874af22ce8b15598b854f28517d7.zip
Qt-f540574b44aa874af22ce8b15598b854f28517d7.tar.gz
Qt-f540574b44aa874af22ce8b15598b854f28517d7.tar.bz2
Merge branch 'master-upstream'
Diffstat (limited to 'src/plugins/platforms/wayland/qwaylandwindow.h')
-rw-r--r--src/plugins/platforms/wayland/qwaylandwindow.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/plugins/platforms/wayland/qwaylandwindow.h b/src/plugins/platforms/wayland/qwaylandwindow.h
index 3b51ee7..1e60508 100644
--- a/src/plugins/platforms/wayland/qwaylandwindow.h
+++ b/src/plugins/platforms/wayland/qwaylandwindow.h
@@ -43,8 +43,8 @@
#define QWAYLANDWINDOW_H
#include <QtGui/QPlatformWindow>
+#include <QtCore/QWaitCondition>
-#include <stdint.h>
#include "qwaylanddisplay.h"
class QWaylandDisplay;
@@ -70,11 +70,21 @@ public:
void configure(uint32_t time, uint32_t edges,
int32_t x, int32_t y, int32_t width, int32_t height);
+ void attach(QWaylandBuffer *buffer);
+ void damage(const QRegion &region);
+
+ void waitForFrameSync();
protected:
struct wl_surface *mSurface;
- virtual void newSurfaceCreated() = 0;
+ virtual void newSurfaceCreated();
QWaylandDisplay *mDisplay;
+ QWaylandBuffer *mBuffer;
WId mWindowId;
+ bool mWaitingForFrameSync;
+ QWaitCondition mFrameSyncWait;
+
+private:
+ static void frameCallback(struct wl_surface *surface, void *data, uint32_t time);
};