Paint invalidation bugs on codepen.io |
||||
Issue descriptionVersion: 51.0.2687.0/canary (also dev) OS: OSX 10.11 What steps will reproduce the problem? (1) Go to https://codepen.io/ (2) Keep refreshing until you get the background that has triangles and cubes (by Ana Tudor--see screenshot). You should only have to refresh about 5 times. (3) Notice graphics bugs. I think this is a paint invalidation bug, but I wasn't able to minimize this easily.
,
Mar 23 2016
I can reliably reproduce it in 51.0.2687.0/Canary with retina. Could you try one more time, letting the animation play for 5 full seconds?
,
Mar 23 2016
I played it for 20 or 30. :)
,
Mar 23 2016
I found a local repro that works offline (attached). It may have something to do with the other animations playing on the page which is why you didn't hit it. Bisected down to: https://chromium.googlesource.com/chromium/src/+log/04c9261d40089b8454379f35df33e908b2ddbbb0..3b234dd4013a56f9783fef6684de3be9b34bd9f5 Suspecting: https://crrev.com/503f617eb83b94ab0eb2618a145dfb009a485971
,
Mar 23 2016
I am unable to repro this (tried both with the attached page and the website directly) on 51.0.2688.0/Canary with retina. I let the animation play for more than 30 seconds.
,
Mar 23 2016
Jayadev: it repros on my Mac if you scroll down a little bit to show the pictures of hearts under the title "Fallen".
,
Mar 23 2016
Yeah, this feels like a bad interaction between the hearts animation and the grey box animation. This was easier for me to hit on a huge monitor, but we needed to scroll down a bit for it to repro on Chris's 11" macbook air.
,
Mar 23 2016
I am able to repro it now (by scrolling and hovering over the hearts animation)
,
Mar 24 2016
Verified that my CL is responsible for this bug. But, I still don't know why. My CL moves damage tracking from layer tree to transform tree (this particular CL is for damage caused by transform animations on compositor). Its confusing to me that the bug is fixed if we did the damage update on the transform tree as soon as the transform changes. (We currently do it lazily, just mark that the transform tree needs update and do the actual update just before calculating visible rects). Damage rect is computed while calculating render passes, which happens after we compute visible rects, so the damage state should have been updated on the transform tree by then. ajuma : Any thoughts ?
,
Mar 25 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/516062893e27d20dcec188a67af3a0e0c28dc902 commit 516062893e27d20dcec188a67af3a0e0c28dc902 Author: jaydasika <jaydasika@chromium.org> Date: Fri Mar 25 01:44:33 2016 cc : Fix layer transform changed tracking bug One of the functions makes changes on a local copy of property trees instead of the property trees stored on LayerTreeImpl. This fixes that. BUG= 597143 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1834883002 Cr-Commit-Position: refs/heads/master@{#383219} [modify] https://crrev.com/516062893e27d20dcec188a67af3a0e0c28dc902/cc/layers/layer_impl.cc [modify] https://crrev.com/516062893e27d20dcec188a67af3a0e0c28dc902/cc/trees/layer_tree_host_unittest.cc
,
Mar 25 2016
,
Mar 25 2016
Do we need to merge into M50?
,
Mar 25 2016
No, the original CL landed after the M50 branch point. |
||||
►
Sign in to add a comment |
||||
Comment 1 by chrishtr@chromium.org
, Mar 23 2016