aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/scenegraph/qsgwindowsrenderloop.cpp
diff options
context:
space:
mode:
authorGunnar Sletta <gunnar@sletta.org>2014-09-30 11:26:45 +0200
committerGunnar Sletta <gunnar@sletta.org>2014-10-16 13:58:08 +0200
commit0ce63c97e6deee95c276214eb45b40244de82c7e (patch)
tree5651e0e811c74eeb935d050bf43caa3ba3beaa1e /src/quick/scenegraph/qsgwindowsrenderloop.cpp
parent4a83ef27d54d40d4224d8cee063447c9b1f7488a (diff)
Introduced QQuickCustomRenderStage.
The purpose of this concept is to make it possible to plug in an external rendering stage, like replacing the GL rendering with a composition step performed by a hardware compositor in QtCompositor. Change-Id: I994b93af443f68a77ca73cf310b5910c49e014c3 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Diffstat (limited to 'src/quick/scenegraph/qsgwindowsrenderloop.cpp')
-rw-r--r--src/quick/scenegraph/qsgwindowsrenderloop.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quick/scenegraph/qsgwindowsrenderloop.cpp b/src/quick/scenegraph/qsgwindowsrenderloop.cpp
index 11e3376af5..56626e8e42 100644
--- a/src/quick/scenegraph/qsgwindowsrenderloop.cpp
+++ b/src/quick/scenegraph/qsgwindowsrenderloop.cpp
@@ -414,7 +414,8 @@ void QSGWindowsRenderLoop::renderWindow(QQuickWindow *window)
QSG_RENDER_TIMING_SAMPLE(QQuickProfiler::SceneGraphRenderLoopFrame, time_rendered);
RLDEBUG(" - swapping");
- m_gl->swapBuffers(window);
+ if (!d->customRenderStage || !d->customRenderStage->swap())
+ m_gl->swapBuffers(window);
QSG_RENDER_TIMING_SAMPLE(QQuickProfiler::SceneGraphRenderLoopFrame, time_swapped);
RLDEBUG(" - frameDone");