Emit the QQuickCanvas::frameSwapped signal again.
authorGunnar Sletta <gunnar.sletta@nokia.com>
Tue, 20 Dec 2011 10:33:00 +0000 (11:33 +0100)
committerQt by Nokia <qt-info@nokia.com>
Tue, 20 Dec 2011 10:47:41 +0000 (11:47 +0100)
This got lost in the window manager rewrite

Change-Id: Ibaed76814ae676ce4ce3f50def196b8d67fd3df0
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
src/quick/items/qquickcanvas_p.h
src/quick/items/qquickwindowmanager.cpp

index d9d130c..6bb16ed 100644 (file)
@@ -165,6 +165,8 @@ public:
     void updateEffectiveOpacityRoot(QQuickItem *, qreal);
     void updateDirtyNode(QQuickItem *);
 
+    void fireFrameSwapped() { emit q_func()->frameSwapped(); }
+
     QSGEngine *engine;
     QSGContext *context;
     QSGRenderer *renderer;
index ea17cae..8388cc6 100644 (file)
@@ -655,6 +655,7 @@ void QQuickRenderThreadSingleContextWindowManager::run()
 #endif
 
             gl->swapBuffers(canvas);
+            canvasPrivate->fireFrameSwapped();
 #ifdef THREAD_DEBUG
             printf("                RenderThread: --- swap complete...\n");
 #endif
@@ -1159,8 +1160,10 @@ void QQuickTrivialWindowManager::renderCanvas(QQuickCanvas *canvas)
         data.grabOnly = false;
     }
 
-    if (alsoSwap)
+    if (alsoSwap) {
         gl->swapBuffers(canvas);
+        cd->fireFrameSwapped();
+    }
 
     // Might have been set during syncSceneGraph()
     if (data.updatePending)