Not invalidating all display items in slow-scrolling mode when filters are present on the HTML element |
|||||||||||||||||
Issue descriptionVersion: 52.0.2729.0 dev OS: Ubuntu 12.04,14.04,windows Test URL: https://chrome.google.com/webstore/detail/ipkjmjaledkapilfdigkgfmpekpfnkih What steps will reproduce the problem? (1) Launch chrome and add above extension >> Login to facebook with valid credentials and try scrolling top part using either mouse wheel or using down arrow from keyboard and observe. Actual: Distorted title bar is seen on scrolling. Expected: No such distortion/flickering of title bar should be seen on scrolling. This is a regression issue broken in M51. Good Build: 51.0.2671.0 dev. Bad Build: 51.0.2672.0 dev. CHANGELOG URL: https://chromium.googlesource.com/chromium/src/+log/5a49cbd778aef637c586a8ebae8bb2f952d30a09..93b3bb34672a3e5f4a319ba422b425eaa484a92b Suspecting https://codereview.chromium.org/1648433002 from changelog @dongseong.hwang: Please help in re-assigning if it is not related to your change.
,
May 9 2016
I can reproduce this.
,
May 9 2016
@dongseong.hwang if you can get a standalone page that creates this behavior I can help to debug it. In parallel I'll try to do the same.
,
May 13 2016
Able to reproduce the issue on Windows 7 using latest M-52(52.0.2735.0).
,
May 16 2016
@dongseong.hwang: Hey, would you mind providing an update on the above issue ? This is still reproducible on latest chrome version '52.0.2738.0'. I really appreciate your help. Thank you!
,
May 19 2016
@dongseon.hwang: Gentle Ping! Thank you!
,
May 24 2016
@dongseon.hwang@ : Could you please take a look into this issue as the issue still persists on 53.0.2746.0.
,
May 30 2016
Just to update the bug, Issue is still reproducible on Windows 7 using latest chrome canary M53-53.0.2751.0.
,
Jun 3 2016
M52 Stable release is approaching soon, please have a fix /revert ASAP.
,
Jun 3 2016
This bug is not important enough to revert the feature, since it requires an extension to trigger. I will try to figure out the root cause soon.
,
Jun 8 2016
Just to update: Issues is still reproducible on Windows 7, Mac 10.11.5, Ubuntu 14.04 using latest M-52(52.0.2743.33) and M-53(53.0.2762.0).
,
Jun 15 2016
Just to update: Rechecked the issue and it is still reproducible on Windows 7 & MAC (10.11.4) for Google Chrome Canary Version - 53.0.2767.4
,
Jun 16 2016
A friendly reminder that M52 Stable is launching soon! Your bug is labelled as Stable ReleaseBlock, pls make sure to land the fix and get it merged into the release branch by July 12. All changes MUST be merged into the release branch by 5pm on July 15 to make into the desktop Stable final build cut. Thank you!
,
Jun 22 2016
Still able to reproduce the issue on windows 7 using chrome version 53.0.2774.3. chrishtr@ could you please look into this issue. Thank you!
,
Jun 22 2016
The chrome extension applies an SVG filter to the HTML element, as inlined below.
Probably we need to invalidate everything on scroll in this case.
html.filter0 {
-webkit-filter: url('#cvd_extension_0');
}
html.filter1 {
-webkit-filter: url('#cvd_extension_1');
}
<span id="cvd_extension_svg_filter" hidden=""><svg xmlns="http://www.w3.org/2000/svg" version="1.1"> <defs> <filter id="cvd_extension_0"> <feColorMatrix id="cvd_matrix_0" type="matrix" values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix> </filter> <filter id="cvd_extension_1"> <feColorMatrix id="cvd_matrix_1" type="matrix" values="1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"></feColorMatrix> </filter> </defs></svg></span>
,
Jun 22 2016
Indeed: because there is a filter that moves pixels on the HTML element, position:fixed descendants were early-outing from the fast path in FrameView::invalidateViewportConstrainedObjects. in an obscure corner case. Unconditionally calling setShouldDoFullPaintInvalidationIncludingNonCompositingDescendants in FrameView::scrollContentsSlowPath fixes this case.
,
Jun 22 2016
Correction: it's required to call setShouldDoFullPaintInvalidationIncludingNonCompositingDescendants on the constrained object itself.
,
Jun 22 2016
,
Jun 23 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/17022a51ce7410328f50289828828bd1a385b32b commit 17022a51ce7410328f50289828828bd1a385b32b Author: chrishtr <chrishtr@chromium.org> Date: Thu Jun 23 20:56:49 2016 Invalidate fixed-pos elements & descendants on scroll w/filters that change pixels. BUG= 610287 Review-Url: https://codereview.chromium.org/2091603002 Cr-Commit-Position: refs/heads/master@{#401712} [modify] https://crrev.com/17022a51ce7410328f50289828828bd1a385b32b/third_party/WebKit/LayoutTests/TestExpectations [add] https://crrev.com/17022a51ce7410328f50289828828bd1a385b32b/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png [add] https://crrev.com/17022a51ce7410328f50289828828bd1a385b32b/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.txt [add] https://crrev.com/17022a51ce7410328f50289828828bd1a385b32b/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child.html [modify] https://crrev.com/17022a51ce7410328f50289828828bd1a385b32b/third_party/WebKit/Source/core/frame/FrameView.cpp
,
Jun 23 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/90c3a38a3644e22e98924fca3f4f9172d82cb366 commit 90c3a38a3644e22e98924fca3f4f9172d82cb366 Author: Rebaseline Bot <blink-rebaseline-bot@chromium.org> Date: Thu Jun 23 22:18:08 2016 Auto-rebaseline for r401712 https://chromium.googlesource.com/chromium/src/+/17022a51c BUG= 610287 TBR=chrishtr@chromium.org Review URL: https://codereview.chromium.org/2091943002 . Cr-Commit-Position: refs/heads/master@{#401744} [modify] https://crrev.com/90c3a38a3644e22e98924fca3f4f9172d82cb366/third_party/WebKit/LayoutTests/TestExpectations [add] https://crrev.com/90c3a38a3644e22e98924fca3f4f9172d82cb366/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png [add] https://crrev.com/90c3a38a3644e22e98924fca3f4f9172d82cb366/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
,
Jun 24 2016
,
Jun 24 2016
Your change meets the bar and is auto-approved for M52 (branch: 2743)
,
Jun 24 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6 commit 5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6 Author: Chris Harrelson <chrishtr@chromium.org> Date: Fri Jun 24 23:00:14 2016 Invalidate fixed-pos elements & descendants on scroll w/filters that change pixels. BUG= 610287 Review-Url: https://codereview.chromium.org/2091603002 Cr-Commit-Position: refs/heads/master@{#401712} (cherry picked from commit 17022a51ce7410328f50289828828bd1a385b32b) Review URL: https://codereview.chromium.org/2098063002 . Cr-Commit-Position: refs/branch-heads/2743@{#472} Cr-Branched-From: 2b3ae3b8090361f8af5a611712fc1a5ab2de53cb-refs/heads/master@{#394939} [modify] https://crrev.com/5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6/third_party/WebKit/LayoutTests/TestExpectations [add] https://crrev.com/5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png [add] https://crrev.com/5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.txt [add] https://crrev.com/5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child.html [modify] https://crrev.com/5b6df4572b15e4a7a55ad39fbb34b1b076ecdae6/third_party/WebKit/Source/core/frame/FrameView.cpp
,
Jun 24 2016
,
Jun 27 2016
Retested the above issue on All-OS and able to reproduce it on Mac (53.0.2777.0), Ubuntu (53.0.2780.0) Title bar distorting is observed & on Windows 10(53.0.2780.0) not able to do anything as facebook page gets displayed as blank after few sec of login. @chrishtr: Hey, would you mind checking the above issue ? Attach are screencast on Windows & Ubuntu.
,
Jun 27 2016
,
Jun 27 2016
There is an additional bug: early-out semantics in invalidateViewportConstrainedObjects are broken.
,
Jun 28 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/034b0a2c17e9f635c159a5ee6618c662574ec7dd commit 034b0a2c17e9f635c159a5ee6618c662574ec7dd Author: chrishtr <chrishtr@chromium.org> Date: Tue Jun 28 04:18:30 2016 Make sure to iterate over all viewport-constrained objects for scroll invalidation. BUG= 610287 Review-Url: https://codereview.chromium.org/2099383003 Cr-Commit-Position: refs/heads/master@{#402404} [modify] https://crrev.com/034b0a2c17e9f635c159a5ee6618c662574ec7dd/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/034b0a2c17e9f635c159a5ee6618c662574ec7dd/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png [modify] https://crrev.com/034b0a2c17e9f635c159a5ee6618c662574ec7dd/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.txt [modify] https://crrev.com/034b0a2c17e9f635c159a5ee6618c662574ec7dd/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child.html [modify] https://crrev.com/034b0a2c17e9f635c159a5ee6618c662574ec7dd/third_party/WebKit/Source/core/frame/FrameView.cpp
,
Jun 28 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/27dababee786ced06203d85922b1068527d72398 commit 27dababee786ced06203d85922b1068527d72398 Author: Rebaseline Bot <blink-rebaseline-bot@chromium.org> Date: Tue Jun 28 05:33:15 2016 Auto-rebaseline for r402404 https://chromium.googlesource.com/chromium/src/+/034b0a2c1 BUG= 610287 TBR=chrishtr@chromium.org Review URL: https://codereview.chromium.org/2107653002 . Cr-Commit-Position: refs/heads/master@{#402409} [modify] https://crrev.com/27dababee786ced06203d85922b1068527d72398/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/27dababee786ced06203d85922b1068527d72398/third_party/WebKit/LayoutTests/platform/mac-mac10.9/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png [modify] https://crrev.com/27dababee786ced06203d85922b1068527d72398/third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png
,
Jun 28 2016
Requesting to merge 34b0a2c17e9f635c159a5ee6618c662574ec7dd as well.
,
Jun 28 2016
Before we approve merge to M52, Could you please confirm whether this change is baked/verified in Canary and safe to merge?
,
Jun 29 2016
@ananta, can you please check again on tonight's canary ?
,
Jun 29 2016
Your change meets the bar and is auto-approved for M52 (branch: 2743)
,
Jun 29 2016
Retested the above issue on All-OS(Windows (10 & 7), Mac 10.11.5 & Ubuntu 14.04) with chrome version '53.0.2782.3' & distortion of the facebook title bar is not observed. However, observed another wired behavior - when sometime in typed in facebook text box page gets displayed as blank. Hence not adding TE-Verified label as of now. Attach is the screen cast for the same. @chrishtr: Hey, would you mind checking the same and let us know if you need to file a new bug for the same ? I really appreciate your help. Thank you!
,
Jun 29 2016
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible! If all merges have been completed, please remove any remaining Merge-Approved labels from this issue. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 29 2016
@chrishtr, can you please take a look at # 34. The issue seems to be fixed as per ToT verification. Please merge the CL in to M52 branch by 4 PM today so that it gets picked up for Beta promotion scheduled tomorrow.
,
Jun 29 2016
The bug reported in comment 34 is something else. Canary looks like it is busted in some bad other way.
,
Jun 29 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ce960edfa3b22c39c053029e6105170d99f816f5 commit ce960edfa3b22c39c053029e6105170d99f816f5 Author: Chris Harrelson <chrishtr@chromium.org> Date: Wed Jun 29 22:25:30 2016 Make sure to iterate over all viewport-constrained objects for scroll invalidation. BUG= 610287 Review-Url: https://codereview.chromium.org/2099383003 Cr-Commit-Position: refs/heads/master@{#402404} (cherry picked from commit 034b0a2c17e9f635c159a5ee6618c662574ec7dd) Review URL: https://codereview.chromium.org/2110953002 . Cr-Commit-Position: refs/branch-heads/2743@{#534} Cr-Branched-From: 2b3ae3b8090361f8af5a611712fc1a5ab2de53cb-refs/heads/master@{#394939} [modify] https://crrev.com/ce960edfa3b22c39c053029e6105170d99f816f5/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.png [modify] https://crrev.com/ce960edfa3b22c39c053029e6105170d99f816f5/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child-expected.txt [modify] https://crrev.com/ce960edfa3b22c39c053029e6105170d99f816f5/third_party/WebKit/LayoutTests/paint/invalidation/filter-on-html-element-with-fixed-position-child.html [modify] https://crrev.com/ce960edfa3b22c39c053029e6105170d99f816f5/third_party/WebKit/Source/core/frame/FrameView.cpp
,
Jun 29 2016
,
Jun 30 2016
Retested the above issue on All-OS(Windows (10 & 7), Mac 10.11.5 & Ubuntu 14.04) with chrome version '52.0.2743.60' & distortion of the facebook title bar is not observed. Hence adding TE-Verified-52.0.2743.60 & TE-Verified-53.0.2782.3. Reported new issue 624789 for facebook page getting displayed as blank as mentioned in comment #34. Thank you!
,
Jun 30 2016
|
|||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||
Comment 1 by kavvaru@chromium.org
, May 9 2016