diff options
author | Laszlo Agocs <laszlo.agocs@digia.com> | 2014-08-20 11:48:02 +0200 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@digia.com> | 2014-08-25 17:40:23 +0200 |
commit | a4f50269f82695fbd0dd344f87b4b355feff4333 (patch) | |
tree | 7ae4b01a38b483c6446d5ee4dda1ac09a9bd4f9f /src/gui/kernel/qwindow_p.h | |
parent | 86886566410cf7cc4587b3fbb851b3615067cca4 (diff) |
Support QOpenGLWidget and QQuickWidget on Android
It gets somewhat complicated due to the fact that a RasterGLSurface window
(i.e. any widget window since 5.3) may behave either like an OpenGLSurface
or a RasterSurface, and the expected behavior may change on each backingstore
sync.
This does not fit designs where the platform window implementation is separated
and there is different behavior for raster and GL windows.
Therefore QAndroidPlatformOpenGLWindow is now made capable of behaving like the
raster one, based on a flag communicated from the widget stack via QWindowPrivate
(since the plugin knows nothing about widgets).
This means that widget windows that do not have renderToTexture children (QOpenGLWidget,
QQuickWidget) will go through the raster path, while the ones that have will behave
like an OpenGL window with the actual rendering happening in
QPlatformBackingStore::composeAndFlush().
The surface type is RasterGLSurface in both cases nonetheless.
Task-number: QTBUG-37907
Change-Id: I6f9261fc0fd993afcda7f30d379c5410069033d3
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Diffstat (limited to 'src/gui/kernel/qwindow_p.h')
-rw-r--r-- | src/gui/kernel/qwindow_p.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index 0c58745735..808181d48c 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -100,6 +100,7 @@ public: , cursor(Qt::ArrowCursor) , hasCursor(false) #endif + , compositing(false) { isWindow = true; } @@ -175,6 +176,8 @@ public: QCursor cursor; bool hasCursor; #endif + + bool compositing; }; |