Main thread image animations don't go idle for WebView. |
||||
Issue descriptionHere is the history for thread_times.key_idle_power_cases on WebView. https://chromeperf.appspot.com/report?sid=b7e42a0f4e31553d2c38fef97a0c99e7fce3ab3961732b3cdea9ecadd4168899&start_rev=505468&end_rev=517200 The first improvement is at r506969, when compositor image animations were enabled on perf bots. Note that we don't stop animating during the idle period when the screen is turned off. After its enabled, the main thread is silent but the compositor thread still wakes up. Its not producing any frames because the invalidation wasn't being triggered (explained in 780240), but looks like it was still requesting frames. The next improvement is at r512351 when we fixed the impl side invalidation scheduling and we actually stop animating during the idle period.
,
Jan 26 2018
Is this p1?
,
Jan 26 2018
I don't think this needs to be P1. We'll be enabling image animations on the compositor thread by default in 64. The bug is for investigating why we didn't go idle when the animation was running on the main thread, in case it could also affect any other main thread driven animations.
,
Jan 26 2018
> Note that we don't stop animating during the idle period when the screen is turned off. Chrome marks the foreground tab invisible when the screen shuts off, and I assume that's what's stopping everything. When webview is attached to a view tree, it listens to whether the window is visible: https://cs.chromium.org/chromium/src/android_webview/browser/browser_view_renderer.cc?rcl=a1dceecc377acf195a2794851a9340279faf0cf1&l=502 I'm guessing turning the screen off doesn't mark the window visible for whatever reason.
,
Jan 31 2018
Couldn't repro the issue with the animation being on the main thread. I guess it was a different issue that wasn't setting the visibility which got fixed in the same range as the other gif patch. |
||||
►
Sign in to add a comment |
||||
Comment 1 by khushals...@chromium.org
, Nov 17 2017