From 7ab7a81845a393625542434c1ece09e0d59eaa28 Mon Sep 17 00:00:00 2001 From: Mark Renouf Date: Wed, 11 May 2022 15:27:30 -0400 Subject: [PATCH] Use System.nanoTime(), avoid desyncing frame times The rendering pipeline expects frame vsync times as System.nanoTime(). When the frame vsync time is behind the most recent frame, the render request is dropped [*]. This reverts the value back to System.nanoTime() which was accidentally changed in ag/15819081. * frameworks/base/libs/hwui/renderthread/TimeLord.cpp:46 Bug: 217046739 Test: ??? Change-Id: I21d8737e7acb5ac13bfbcf150006415431d874aa --- .../com/android/internal/view/ScrollCaptureViewSupport.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/java/com/android/internal/view/ScrollCaptureViewSupport.java b/core/java/com/android/internal/view/ScrollCaptureViewSupport.java index f2c27a494fc92..d842eb6c4d495 100644 --- a/core/java/com/android/internal/view/ScrollCaptureViewSupport.java +++ b/core/java/com/android/internal/view/ScrollCaptureViewSupport.java @@ -395,7 +395,7 @@ public class ScrollCaptureViewSupport implements ScrollCaptureCa @SyncAndDrawResult public int renderView(View view, Rect sourceRect) { HardwareRenderer.FrameRenderRequest request = mRenderer.createRenderRequest(); - request.setVsyncTime(SystemClock.elapsedRealtimeNanos()); + request.setVsyncTime(System.nanoTime()); if (updateForView(view)) { setupLighting(view); }