summaryrefslogtreecommitdiffstats
path: root/core/java/android/view
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2012-06-12 17:23:28 -0700
committerChris Craik <ccraik@google.com>2012-06-12 17:55:18 -0700
commitcb82b942c89bf69b6c03e2f4951f519c1be115dc (patch)
treed7e77e38ba1f80fee67cf1dc8c7b7fa21ba4f4ea /core/java/android/view
parent1b159f66eed528f9cda04a316a1958a7ce79ee48 (diff)
downloadframeworks_base-cb82b942c89bf69b6c03e2f4951f519c1be115dc.zip
frameworks_base-cb82b942c89bf69b6c03e2f4951f519c1be115dc.tar.gz
frameworks_base-cb82b942c89bf69b6c03e2f4951f519c1be115dc.tar.bz2
Fix attachFunctor path to ignore delay
Don't defer functor invocation when calling attach functor directly. bug:6653638 Change-Id: Ifffc027df16612f380f39b82b7d0a4411d53b4ea
Diffstat (limited to 'core/java/android/view')
-rw-r--r--core/java/android/view/HardwareRenderer.java9
1 files changed, 5 insertions, 4 deletions
diff --git a/core/java/android/view/HardwareRenderer.java b/core/java/android/view/HardwareRenderer.java
index 0ae6b56..cb5a5e7 100644
--- a/core/java/android/view/HardwareRenderer.java
+++ b/core/java/android/view/HardwareRenderer.java
@@ -1211,15 +1211,16 @@ public abstract class HardwareRenderer {
}
if ((status & DisplayList.STATUS_INVOKE) != 0) {
- scheduleFunctors(attachInfo);
+ scheduleFunctors(attachInfo, true);
}
}
- private void scheduleFunctors(View.AttachInfo attachInfo) {
+ private void scheduleFunctors(View.AttachInfo attachInfo, boolean delayed) {
mFunctorsRunnable.attachInfo = attachInfo;
if (!attachInfo.mHandler.hasCallbacks(mFunctorsRunnable)) {
// delay the functor callback by a few ms so it isn't polled constantly
- attachInfo.mHandler.postDelayed(mFunctorsRunnable, FUNCTOR_PROCESS_DELAY);
+ attachInfo.mHandler.postDelayed(mFunctorsRunnable,
+ delayed ? FUNCTOR_PROCESS_DELAY : 0);
}
}
@@ -1234,7 +1235,7 @@ public abstract class HardwareRenderer {
boolean attachFunctor(View.AttachInfo attachInfo, int functor) {
if (mCanvas != null) {
mCanvas.attachFunctor(functor);
- scheduleFunctors(attachInfo);
+ scheduleFunctors(attachInfo, false);
return true;
}
return false;