diff options
author | Paul Olav Tvete <paul.tvete@nokia.com> | 2011-09-22 14:30:40 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-09-23 10:37:49 +0200 |
commit | 75009fb135da74f879dfced74c9a0c52cc6290dc (patch) | |
tree | 7674857890efc4d897460a3b90f94a78dc2264e2 /src/gui/kernel/qplatformscreen_qpa.h | |
parent | 2af41a655a1ceca13dd495e16ff5c1ab104dd7f9 (diff) |
Page flipping API for QPlatformScreen
Adding a page flipping API for platform plugins. This
enables Wayland compositors to show full-screen client windows directly
without copying any data - if supported by the platform.
Change-Id: I19abe366434140f9e20a0655fe7cd41ea9264fca
Reviewed-on: http://codereview.qt-project.org/5385
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Diffstat (limited to 'src/gui/kernel/qplatformscreen_qpa.h')
-rw-r--r-- | src/gui/kernel/qplatformscreen_qpa.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gui/kernel/qplatformscreen_qpa.h b/src/gui/kernel/qplatformscreen_qpa.h index 3851b1821a..9919ca5ca8 100644 --- a/src/gui/kernel/qplatformscreen_qpa.h +++ b/src/gui/kernel/qplatformscreen_qpa.h @@ -67,6 +67,17 @@ class QPlatformWindow; class QScreen; class QSurfaceFormat; +class QPlatformScreenPageFlipper : public QObject +{ + Q_OBJECT +public: + virtual bool displayBuffer(void *bufferHandle) = 0; + + signals: + void bufferDisplayed(void *bufferHandle); + void bufferReleased(void *bufferHandle); +}; + class Q_GUI_EXPORT QPlatformScreen { Q_DECLARE_PRIVATE(QPlatformScreen) @@ -95,6 +106,8 @@ public: virtual QString name() const { return QString(); } + virtual QPlatformScreenPageFlipper *pageFlipper() const; + protected: QScopedPointer<QPlatformScreenPrivate> d_ptr; |