"overflow:scroll" does not clip transform scaled iframe
Reported by
babata...@gmail.com,
Feb 21 2018
|
|||||||||||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3350.0 Safari/537.36 Example URL: https://jsfiddle.net/01m6bvb4/11/ Steps to reproduce the problem: 1. Open https://jsfiddle.net/01m6bvb4/11/ What is the expected behavior? The scaled iframe does not overflow the <div> element. What went wrong? The iframe visually overflows. Does it occur on multiple sites: N/A Is it a problem with a plugin? No Did this work before? Yes Version 64.0.3282.167 (Official Build) (64-bit) Does this work in other browsers? Yes Chrome version: 66.0.3350.0 Channel: canary OS Version: 10.0 Flash Version: This issue seems not happen when the system dpi scaling is larger than 150%.
,
Feb 21 2018
,
Feb 22 2018
Able to reproduce the issue on Windows 10 and Ubuntu 14.04 using chrome reported version #66.0.3350.0 and latest beta #65.0.3325.88. Issue is not seen in OS-mac. Bisect Information: ===================== Good build: 65.0.3287.0 Bad Build : 65.0.3288.0 Change Log URL: https://chromium.googlesource.com/chromium/src/+log/afccf64114b233fe65af7526b2f015efb2d1e7c1..88986f832c463a210324d7d9cf9b5213f7b69f63 From the above change log suspecting below change Change-Id: I5af847e68aa2d3ee8e76dbbd25eef087dbac4060 Reviewed-on: https://chromium-review.googlesource.com/772779 schenney@ - Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner. Note: Adding stable blocker for M-65 as it seems to be a recent regression. Please feel free to remove the same if not appropriate. Thanks...!!
,
Feb 22 2018
It's plausibly me. I'll look into it shortly.
,
Feb 22 2018
M65 Stable promotion is coming VERY soon. Your bug is labelled as Stable ReleaseBlock, pls make sure to land the fix and request a merge into the release branch ASAP. Merge has to happen latest by 4:00 PM PT Monday (02/26/18) in order to make it to last M65 beta release next week. Thank you.
,
Feb 26 2018
Gentle ping !! It is marked as stable blocker for M65. Please merge fix ASAP as M65 stable promotion is scheduled today night. Thanks..!
,
Feb 26 2018
I don't think this should block the release. Based on the time for it to be reported, and the special circumstances to make it happen, it's safe to promote M-65 without the fix. Removing ReleaseBlock label.
,
Feb 26 2018
Let's aim to fix for 66.
,
Feb 26 2018
Removing "M-65" per comment #7 & #8.
,
Feb 27 2018
This issue is marked as a release blocker with no milestone associated. Please add an appropriate milestone. All release blocking issues should have milestones associated to it, so that the issue can tracked and the fixes can be pushed promptly. 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
,
Feb 27 2018
,
Mar 7 2018
This was working in a local tip of trunk build, but bisect results still show it broken. I'm trying to figure out what is happening, though I suspect SPv1.75 has fixed it.
,
Mar 7 2018
175 is turned off at ToT..
,
Mar 7 2018
Scrolling is not necessary. I think we just have the ordering of the clip and the transform wrong, so that the clip is being transformed when it should not.
,
Mar 7 2018
And the iframe doesn't even need content.
,
Mar 7 2018
Actually, no clip at all.
,
Mar 8 2018
,
Mar 8 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d03257dd6231949a244fea41890a35b7707f5f08 commit d03257dd6231949a244fea41890a35b7707f5f08 Author: Stephen Chenney <schenney@chromium.org> Date: Thu Mar 08 23:21:15 2018 Fix clipping for iframes The clip for iframes was missing when the iframe did not have its own composited layer. Fix the overly aggressive "NeedsClip" code to not return false for all LayoutEmbeddedContent in most paint modes. R=chrishtr@chromium.org BUG=814177 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: Iae77a367839f8dfccda817a31ab1cc988ecd0436 Reviewed-on: https://chromium-review.googlesource.com/956031 Reviewed-by: Chris Harrelson <chrishtr@chromium.org> Commit-Queue: Stephen Chenney <schenney@chromium.org> Cr-Commit-Position: refs/heads/master@{#541927} [add] https://crrev.com/d03257dd6231949a244fea41890a35b7707f5f08/third_party/WebKit/LayoutTests/paint/overflow/transformed-iframe-clipping-expected.html [add] https://crrev.com/d03257dd6231949a244fea41890a35b7707f5f08/third_party/WebKit/LayoutTests/paint/overflow/transformed-iframe-clipping.html [modify] https://crrev.com/d03257dd6231949a244fea41890a35b7707f5f08/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
,
Mar 9 2018
This bug only affects M-65 and M-66 because M-67 has Slimming Paint V1.75 turned on. Requesting merge to the affected versions, starting with M-66. This is a safe fix and in fact we can't get Canary data on it due to the launch of SPv175. So I strongly advocate an M-66 merge then a pause to see if anything breaks.
,
Mar 10 2018
Your change meets the bar and is auto-approved for M66. Please go ahead and merge the CL to branch 3359 manually. Please contact milestone owner if you have questions. Owners: cmasso@(Android), cmasso@(iOS), josafat@(ChromeOS), abdulsyed@(Desktop) For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Mar 12 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/73e29941f0fa7aeadb0dcbf07422942c31cb7354 commit 73e29941f0fa7aeadb0dcbf07422942c31cb7354 Author: Stephen Chenney <schenney@chromium.org> Date: Mon Mar 12 13:21:03 2018 Fix clipping for iframes M-66 Merge. The clip for iframes was missing when the iframe did not have its own composited layer. Fix the overly aggressive "NeedsClip" code to not return false for all LayoutEmbeddedContent in most paint modes. TBR=chrishtr@chromium.org BUG=814177 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: Iae77a367839f8dfccda817a31ab1cc988ecd0436 Reviewed-on: https://chromium-review.googlesource.com/956031 Reviewed-by: Chris Harrelson <chrishtr@chromium.org> Commit-Queue: Stephen Chenney <schenney@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#541927}(cherry picked from commit d03257dd6231949a244fea41890a35b7707f5f08) Reviewed-on: https://chromium-review.googlesource.com/958983 Reviewed-by: Stephen Chenney <schenney@chromium.org> Cr-Commit-Position: refs/branch-heads/3359@{#159} Cr-Branched-From: 66afc5e5d10127546cc4b98b9117aff588b5e66b-refs/heads/master@{#540276} [add] https://crrev.com/73e29941f0fa7aeadb0dcbf07422942c31cb7354/third_party/WebKit/LayoutTests/paint/overflow/transformed-iframe-clipping-expected.html [add] https://crrev.com/73e29941f0fa7aeadb0dcbf07422942c31cb7354/third_party/WebKit/LayoutTests/paint/overflow/transformed-iframe-clipping.html [modify] https://crrev.com/73e29941f0fa7aeadb0dcbf07422942c31cb7354/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
,
Mar 14 2018
,
Mar 16 2018
,
Mar 22 2018
,
Mar 22 2018
,
Mar 23 2018
Issue 824696 has been merged into this issue.
,
Mar 23 2018
Now we've had 5 reports for this, including this one. I regret not M-65 merging it way back when I first fixed it, but at that point we had seen no M-65 beta or canary reports and only 1 M-66 report, so my belief was that the issue was rare. And I was too slow to fix it for external reasons. Now that we're almost half way through the M-65 lifetime, I still don't feel comfortable arguing for a M-65 merge given all the challenges we've already had with M-65. Release managers could argue otherwise if so inclined.
,
Mar 23 2018
,
Mar 23 2018
Re-opening this bug. I think this bug is quite bad. Overflow clipping of non-composited embedded content is pretty badly broken. It affects iframes, videos, plugins, and objects containing SVG. It doesn't always trigger for iframes, due to some redundancy in the code for clipping, but the use-cases are common enough. I would like to request merging this to M65 and re-spinning if possible. I suggest at least merging it, with some testing, to get it ready for re-spin if necessary.
,
Mar 23 2018
,
Mar 23 2018
Approving merge to M65 branch 3325 based on comment #29 and per offline chat with chrishtr@. There is no plan to respin M65 just for this as of now.
,
Mar 23 2018
,
Mar 23 2018
,
Mar 23 2018
Thank you chrishtr@ for offer to write a postmortem. Please see go/chrome-postmortems for the process to follow.
,
Mar 23 2018
Merged as https://chromium.googlesource.com/chromium/src/+/96e6c03055b5309abc5d078f8ea2e3d636a50957 Stephen, can you please write the postmortem? Also, please add testcases for the various situations that lead to this bug so we can avoid future regression, including SVG/video.
,
Mar 23 2018
Thank you chrishtr@. Already merge to M65 at comment #35.
,
Mar 23 2018
Testers: please test the examples in all of the bugs dup'ed into this one, plus the main example.
,
Mar 23 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/96e6c03055b5309abc5d078f8ea2e3d636a50957 commit 96e6c03055b5309abc5d078f8ea2e3d636a50957 Author: Chris Harrelson <chrishtr@chromium.org> Date: Fri Mar 23 18:18:49 2018 Fix clipping for iframes The clip for iframes was missing when the iframe did not have its own composited layer. Fix the overly aggressive "NeedsClip" code to not return false for all LayoutEmbeddedContent in most paint modes. R=chrishtr@chromium.org TBR=schenney@chromium.org BUG=814177 (cherry picked from commit d03257dd6231949a244fea41890a35b7707f5f08) Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: Iae77a367839f8dfccda817a31ab1cc988ecd0436 Reviewed-on: https://chromium-review.googlesource.com/956031 Reviewed-by: Chris Harrelson <chrishtr@chromium.org> Commit-Queue: Stephen Chenney <schenney@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#541927} Reviewed-on: https://chromium-review.googlesource.com/978520 Cr-Commit-Position: refs/branch-heads/3325@{#735} Cr-Branched-From: bc084a8b5afa3744a74927344e304c02ae54189f-refs/heads/master@{#530369} [add] https://crrev.com/96e6c03055b5309abc5d078f8ea2e3d636a50957/third_party/WebKit/LayoutTests/paint/overflow/transformed-iframe-clipping-expected.html [add] https://crrev.com/96e6c03055b5309abc5d078f8ea2e3d636a50957/third_party/WebKit/LayoutTests/paint/overflow/transformed-iframe-clipping.html [modify] https://crrev.com/96e6c03055b5309abc5d078f8ea2e3d636a50957/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
,
Mar 24 2018
Issue 823638 has been merged into this issue.
,
Mar 27 2018
Tested this issue on Windows 7, Mac 10.13.3 and Linux(Debian Rodate) using # 65.0.3325.189 (Windows Chrome clang build) as per the test instructions mentioned in below document . https://docs.google.com/document/d/1KJwvDY5fcvdP0RnZvZueZb2ZYDGmmYRxkrFG4r8libY/edit Observation: ----------- Tested all the html files provided in the document (6 issues html files) & observed that the scaled iframe does not overflow dev element. Seems issue working as intended. Please find the screencast of all OS except CROS in the below link. https://drive.google.com/drive/folders/1yeIv9BfUZaTEhdtlHGqvNDpI3_wZlxbE?usp=sharing Note: Unable to test on Chrome OS as 65.0.3325.189 build is not available. Thanks,
,
Mar 27 2018
Adding RSVG ,please remove if not required for this issue.
,
Mar 27 2018
The bug has been merged back to M-65 in the event we spin again, and fixed in M-66 and M-67. It remains open to add additional tests to avoid regressions again. It is no longer release blocking.
,
Mar 27 2018
,
Mar 27 2018
Tried to test this fix on Android (Pixel XL/N) using file from comment#14 but I dont see any difference before and after the fix. Can you please provide details to check this on Android?
,
Mar 29 2018
Issue 826523 has been merged into this issue.
,
Apr 10 2018
,
Apr 16 2018
Issue 832620 has been merged into this issue.
,
Apr 24 2018
It has been fixed, but there's another issue emerged, it now flickers at the start of the animation and at the end of it. See it here ... https://www.hindawi.org/ Chrome version is 66.0.3359.117 (Official Build) (64-bit) Windows 10 But this also happens on iMac. Regards, Shaker
,
Apr 24 2018
shaker.hamdi@: Please file a new bug for the animation flickering issue. And please try to generate a reduced test case. Are you describing the slight change in size as the animation starts and stops? That's what I see on Windows, but not Linux.
,
Apr 24 2018
@schenney: This was working fine before the original issue of this post, and it still works fine on Firefox. I will open a new issue regarding this.
,
May 21 2018
Bulk edit** This bug has the label Postmortem-Followup but has not been updated in 3+ weeks. We are working on a new workflow to improve postmortem followthrough. Postmortems and postmortem bugs are very important in making sure we don't repeat prior mistakes and for making Chrome better for all. We will be taking a closer look at these bugs in the coming weeks. Please take some time to work on this, reassign, or close if the issue has been fixed. Thank you.
,
Aug 10
Stephen - did you add the tests?
,
Aug 13
I don't think I added the SVG/Video test cases. I'll get to it as soon as I get a window of time. |
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by sindhu.chelamcherla@chromium.org
, Feb 21 2018