Fixes to startDelay
Bug: 15991758
Don't update the UI thread with final value until after
startDelay
Change-Id: Ie8bffb5a3ace353ec1d82943a4efcbd01c42c28f
diff --git a/libs/hwui/AnimatorManager.cpp b/libs/hwui/AnimatorManager.cpp
index 6a10cf8..27b0893 100644
--- a/libs/hwui/AnimatorManager.cpp
+++ b/libs/hwui/AnimatorManager.cpp
@@ -25,6 +25,7 @@
using namespace std;
static void unref(BaseRenderNodeAnimator* animator) {
+ animator->detach();
animator->decStrong(0);
}
@@ -39,7 +40,7 @@
void AnimatorManager::addAnimator(const sp<BaseRenderNodeAnimator>& animator) {
animator->incStrong(0);
- animator->onAttached(&mParent);
+ animator->attach(&mParent);
mNewAnimators.push_back(animator.get());
}
@@ -58,7 +59,7 @@
move_all(mNewAnimators, mAnimators);
}
for (vector<BaseRenderNodeAnimator*>::iterator it = mAnimators.begin(); it != mAnimators.end(); it++) {
- (*it)->pushStaging(&mParent, info);
+ (*it)->pushStaging(info);
}
}
@@ -68,7 +69,7 @@
: mTarget(target), mInfo(info) {}
bool operator() (BaseRenderNodeAnimator* animator) {
- bool remove = animator->animate(&mTarget, mInfo);
+ bool remove = animator->animate(mInfo);
if (remove) {
animator->decStrong(0);
}