| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
currentTime() uses the total time, so when we use only the loop-local
time for the child animations, normal animations will seem to have
terminated long ago (on the previous loop).
Change-Id: I80a229f40a99569014d8082d153ad579c09fb9db
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
|
|
|
|
|
| |
Where normal animations would derive the current loop from the current
time, uncontrolled animations use an iterative approach and which was
not reset when an animation was restarted or a parent had a loop
around it.
Change-Id: Ia7a1880c8b7578463dff4c5ddeab48324bcb32ee
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
|
|
|
|
| |
An animation needs to be through all its loop cycles or
explicitly stopped before we can consider it finished.
Task-number: QTBUG-37246
Change-Id: Ia30b27448ec7a1e0d2dd8165575b8a7105caae8d
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The logic for looping uncontrolled animations in
QAbstractAnimationJob::setCurrentTime assumes that uncontrolled
animations return duration == -1, always. The logic falls apart when a
duration gets set while the animation is running. To rememdy this,
update QParallelAnimation's duration to return -1 for this case. This
is also how the sequential group's duration is implemented so these
are now using the same pattern.
Update the logic in parallel animations to flush previous loops in
updateAnimationsTime to handle the case where duration is -1. This
solves the case where we have for instance:
ParallelAnimation
Sequential
YAnimator: duration: 1000
ScriptAction ...
Sequential
Pause duration: 5000 <--- longer than yanimator
ScriptAction ...
Task-number: QTBUG-37246
Change-Id: I7a1ea547b2f3090feb8b1e87aa7ca746151736fa
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
| |
Change-Id: I0b444321667691be3e1037164d02f29ed4dfc13e
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
|
|
|
|
|
|
|
| |
If we did, it would never stop.
Change-Id: Ie9d8f1731f6fa555f8dd6a56d6967a8f8f19a9f4
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When animations were registered we made a queued connection to
'startAnimations' to start the animation driver and also set the
'startAnimationPending' state to true. In 'stopTimer' we aborted
if 'startAnimationPending' was true, presumeably to avoid stopping
just to restart shortly after.
However, if an animation is registered which triggers the invoke
and then is immediately removed again, 'startAnimationPending' will
be true with no pending animations at the time of 'stopTimer'. As
a result, the driver would not stop and the system would continue
animating and trying to render.
Change-Id: Icbb01d7129c3a1bddef08a9f2a7aee957e3d2909
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
| |
Change-Id: Ia85cb128c7410e2276bf4da02f946d3d0bf44989
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
|
|
|
|
|
|
|
|
|
| |
Fix regression introduced in Qt 5.0 when animation backend was
rewritten.
Task-number: QTBUG-36709
Change-Id: Ib8caa4bc6a38e3bb4c1d1d3961f775fdd2b342c7
Reviewed-by: Martin Jones <martin.jones@jollamobile.com>
|
|
|
|
|
| |
Change-Id: Ic0492fbe31a1e134674bc6c20381f735dd6d5b7a
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
|
|
|
|
|
|
|
|
|
|
| |
The render thread animations rely heavily on uncontrolled
animations, meaning animations with duration=-1. We support
this by adding a m_currentLoopStartTime and incrementally
counting the finish time of each uncontrolled animation.
Change-Id: I1f2ccea09aff4c51b1a7f98a2ddb58636af50557
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This introduces 6 new QML types for animating state in the
scene graph when the UI thread is blocked. The QObject property
being animated is updated after the animation completes.
It works also with the "windows" and "basic" render loops, but
offer litte benefit then compared to in the "threaded" case.
Change-Id: Ic19e47c898c0b8bd53e457db922b3c9c457c8147
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
|
|
|
|
|
|
|
|
| |
Return immediately if calling stop() results in the current object being
deleted.
Task-number: QTBUG-31247
Change-Id: I684a858bfb4cc53f415daa8cc1c4df96067daa1c
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The macro was made empty in qtbase/ba3dc5f3b56d1fab6fe37fe7ae08096d7dc68bcb
and is no longer necessary or used.
Discussed-on: http://lists.qt-project.org/pipermail/development/2013-January/009284.html
Change-Id: Ia07e99676e0134fde5e32880edb95e57c779a7ff
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Reviewed-by: Alan Alpert <aalpert@rim.com>
|
|
|
|
|
|
| |
Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
stop() might end up deleting the animationjob object so wrap
the call with a RETURN_IF_DELETED
Fixes valgrind complaining
==18380== Invalid read of size 1
==18380== at 0x5530B24: QAbstractAnimationJob::setCurrentTime(int) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380== by 0x5530BDE: QQmlAnimationTimer::updateAnimationsTime(long long) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380== by 0x65C05DC: QUnifiedTimer::updateAnimationTimers(long long) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380== by 0x65C10E3: QAnimationDriver::advanceAnimation(long long) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380== by 0x5047DB9: QQuickRenderThreadSingleContextWindowManager::event(QEvent*) (qquickthreadedwindowmanager.cpp:588)
==18380== by 0x58D7F9B: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Widgets.so.5.0.0)
==18380== by 0x58DB364: QApplication::notify(QObject*, QEvent*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Widgets.so.5.0.0)
==18380== by 0x6756B9D: QCoreApplication::notifyInternal(QObject*, QEvent*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380== by 0x6758855: QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380== by 0x679E7C2: postEventSourceDispatch(_GSource*, int (*)(void*), void*) (in /home/tsdgeos/qt5/qtbase/lib/libQt5Core.so.5.0.0)
==18380== by 0x85B7AB4: g_main_context_dispatch (gmain.c:2715)
==18380== by 0x85B7DE7: g_main_context_iterate.isra.24 (gmain.c:3290)
==18380== Address 0x1642bd48 is 88 bytes inside a block of size 128 free'd
==18380== at 0x4C2A44B: operator delete(void*) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==18380== by 0x4F0728B: QQuickBehavior::write(QVariant const&) (qquickbehavior.cpp:210)
==18380== by 0x53EB0FE: QQmlVMEMetaObject::metaCall(QMetaObject::Call, int, void**) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380== by 0x54FEA08: StoreProperty(QV8Engine*, QObject*, QQmlPropertyData*, v8::Handle<v8::Value>) (in /home/tsdgeos/qt5/qtdeclarative/lib/libQt5Qml.so.5.0.0)
==18380== by 0x79ED2CE: v8::internal::JSObject::SetPropertyWithCallback(v8::internal::Object*, v8::internal::String*, v8::internal::Object*, v8::internal::JSObject*, v8::internal::StrictModeFlag) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380== by 0x7A0AE71: v8::internal::JSObject::SetPropertyForResult(v8::internal::LookupResult*, v8::internal::String*, v8::internal::Object*, PropertyAttributes, v8::internal::StrictModeFlag) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380== by 0x7A0B2D8: v8::internal::JSReceiver::SetProperty(v8::internal::String*, v8::internal::Object*, PropertyAttributes, v8::internal::StrictModeFlag, bool) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380== by 0x79A8861: v8::internal::StoreIC::Store(v8::internal::InlineCacheState, v8::internal::StrictModeFlag, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::String>, v8::internal::Handle<v8::internal::Object>) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380== by 0x79A8DF0: v8::internal::StoreIC_Miss(v8::internal::Arguments, v8::internal::Isolate*) (in /home/tsdgeos/qt5/qtjsbackend/lib/libQt5V8.so.5.0.0)
==18380== by 0x24E8BD20618D: ???
==18380== by 0x24E8BD237AC9: ???
==18380== by 0x24E8BD2249E6: ???
Change-Id: Idcb195206d344bb526ee37f9172a6b3c029540db
Reviewed-by: Michael Brasser <michael.brasser@live.com>
|
|
|
|
|
|
|
|
|
| |
In the designer animations confuse users, if you change a state or move a
item around. Also component complete is called later by the designer.
The call in the VME is to early.
Change-Id: I49aa04edbc49fb44ddb7b52062307982865efd7e
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
|
|
|
|
|
|
|
|
| |
As of Qt5, this macro is defined to be empty; simply get rid of these leftovers.
Change-Id: Ib3a8e8eae98e2839c3db4bf34be8dcf43f49af11
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
|
|
|
|
|
| |
Change-Id: I0b0e63b572617a56874e27361479de2690644aa3
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
| |
Change copyrights and license headers from Nokia to Digia
Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
|
|
|
|
| |
Change-Id: Ia4ba88bef012cee7329244adf10c219bd763a936
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
| |
Change-Id: Ie2f003cacc99fda00b666ed194cb044a7ee3faf1
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
| |
Change-Id: I5f77cdc7a6bede547119b2a0b59b41d27cfc401a
Reviewed-by: Martin Jones <martin.jones@nokia.com>
|
|
|
|
|
|
|
|
| |
In most cases, only one animation change listener is added to animation instance,
so change QPODVector's Increment parameter from 4 to 1 can save 24 bytes (8 bytes for each listener) per animation instance.
Change-Id: Iaf50016899963689f2bf84c3dd14fcd05c306d21
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
| |
Change-Id: I1abac96754cc82c8e0e00c58a27c09b68c5075c1
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Reduce library load time by removing any exports which are not required
by existing clients.
Task-number: QTBUG-24768
Change-Id: Ia5754d6f97bb2ed46e290820a5b092f85a4bc5b0
Reviewed-by: Martin Jones <martin.jones@nokia.com>
|
|
|
|
|
|
|
|
| |
1. Add more deletion checkings in animation job code
2. Add some more asserts
Change-Id: I34772792ea4638b61eb2c3d65da5d35ce75183d7
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This read only property can be used to track the transition running
state. As all animation items inside a Transition item are just
animation defination templetes, so their running properties won't be
updated during the transition animations running, which makes it
hard to know the current running state of a transition animation.
Change-Id: If7fc0616ba384abc6bf2da67c7c639430c3d8fb9
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
|
|
|
| |
Before removing and deleting children, set the m_group to 0 to avoid potential
cycling deletions when this method is called from QAnimationGroupJob::~QAnimationGroupJob().
Change-Id: Idb6920be71fc9e033e5a76b724c9550018995035
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
|
|
|
|
| |
Add a flag and helper functions for disabling user control in QAbstractAnimationJob
class and make it synchronized with QDeclarativeAnimation class's disableUserControl
flag.
Change-Id: Ifa84ab0c78291941469c33f2cafe5f61ee718b2c
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
|
|
|
| |
Change-Id: I703c8a8904ffd760683de4ee74544dff9eb53144
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
|
|
Symbols beginning with QDeclarative are already exported
by the quick1 module.
Users can apply the bin/rename-qtdeclarative-symbols.sh
script to modify client code using the previous names of the
renamed symbols.
Task-number: QTBUG-23737
Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66
Reviewed-by: Martin Jones <martin.jones@nokia.com>
|