From 4633c2681c5b4ce7c6d57c42c01e7843c7836720 Mon Sep 17 00:00:00 2001 From: Gunnar Sletta <gunnar.sletta@nokia.com> Date: Thu, 28 Apr 2011 09:13:06 +0200 Subject: [PATCH] Added a runtime option to enable consistent timing for animations --- src/declarative/items/qsgcanvas.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/declarative/items/qsgcanvas.cpp b/src/declarative/items/qsgcanvas.cpp index 5fc5c76d1d..5d5c49d981 100644 --- a/src/declarative/items/qsgcanvas.cpp +++ b/src/declarative/items/qsgcanvas.cpp @@ -48,6 +48,8 @@ #include <private/qsgrenderer_p.h> #include <private/qsgflashnode_p.h> +#include <private/qabstractanimation_p.h> + #include <QtGui/qpainter.h> #include <QtGui/qgraphicssceneevent.h> #include <QtGui/qmatrix4x4.h> @@ -60,6 +62,7 @@ QT_BEGIN_NAMESPACE DEFINE_BOOL_CONFIG_OPTION(qmlThreadedRenderer, QML_THREADED_RENDERER) +DEFINE_BOOL_CONFIG_OPTION(qmlFixedAnimationStep, QML_FIXED_ANIMATION_STEP) /* Focus behavior @@ -332,8 +335,8 @@ void QSGCanvasPrivate::renderSceneGraph() #ifdef FRAME_TIMING - int pixel; - glReadPixels(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, &pixel); +// int pixel; +// glReadPixels(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, &pixel); readbackTime = frameTimer.elapsed(); #endif @@ -477,6 +480,8 @@ QSGCanvasPrivate::~QSGCanvasPrivate() void QSGCanvasPrivate::init(QSGCanvas *c) { + QUnifiedTimer::instance(true)->setConsistentTiming(qmlFixedAnimationStep()); + q_ptr = c; Q_Q(QSGCanvas); -- GitLab