summaryrefslogtreecommitdiff
path: root/core/java/android/view/ScrollCaptureTargetResolver.java
diff options
context:
space:
mode:
authorMark Renouf <mrenouf@google.com>2020-12-09 17:25:28 -0500
committerMark Renouf <mrenouf@google.com>2020-12-16 02:09:03 -0500
commitf2c137464f8550da358f58054e8610c7fc6f6487 (patch)
tree8ba5aac5a524896577fd4f83205488bb167598a8 /core/java/android/view/ScrollCaptureTargetResolver.java
parentade199be34ee3637d5a4f9bc7321eec952d188c9 (diff)
Fixes use of elapsedRealtime vs uptimeMillis
This was breaking timeouts in most cases. Test: atest ScrollCaptureTargetResolverTest Bug: 148131831 Change-Id: I212039e6d98c77528346405b1003aa295e96f957
Diffstat (limited to 'core/java/android/view/ScrollCaptureTargetResolver.java')
-rw-r--r--core/java/android/view/ScrollCaptureTargetResolver.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/core/java/android/view/ScrollCaptureTargetResolver.java b/core/java/android/view/ScrollCaptureTargetResolver.java
index 5106534694a1..e4316bbc9397 100644
--- a/core/java/android/view/ScrollCaptureTargetResolver.java
+++ b/core/java/android/view/ScrollCaptureTargetResolver.java
@@ -182,9 +182,8 @@ public class ScrollCaptureTargetResolver {
}
mResult = chooseTarget(mResult, target);
boolean finish = mPendingBoundsRequests == 0
- || SystemClock.elapsedRealtime() >= mDeadlineMillis;
+ || SystemClock.uptimeMillis() >= mDeadlineMillis;
if (finish) {
- System.err.println("We think we're done, or timed out");
mPendingBoundsRequests = 0;
mWhenComplete.accept(mResult);
synchronized (mLock) {
@@ -233,7 +232,7 @@ public class ScrollCaptureTargetResolver {
for (ScrollCaptureTarget target : mTargets) {
queryTarget(target);
}
- mDeadlineMillis = SystemClock.elapsedRealtime() + mTimeLimitMillis;
+ mDeadlineMillis = SystemClock.uptimeMillis() + mTimeLimitMillis;
mHandler.postAtTime(mTimeoutRunnable, mDeadlineMillis);
}
@@ -275,7 +274,7 @@ public class ScrollCaptureTargetResolver {
mHandler.removeCallbacks(mTimeoutRunnable);
boolean doneOrTimedOut = mPendingBoundsRequests == 0
- || SystemClock.elapsedRealtime() >= mDeadlineMillis;
+ || SystemClock.uptimeMillis() >= mDeadlineMillis;
final View containingView = target.getContainingView();
if (!nullOrEmpty(scrollBounds) && containingView.isAggregatedVisible()) {