Incorrect visual overflow for element with box-shadow and flipped blocks writing mode |
||||
Issue description
<div id='container' style='backface-visibility: hidden; writing-mode: vertical-rl'>
<div id='target' style='box-shadow: 40px 20px black; width: 100px; height: 50px; background-color: green'>
ABCDE
</div>
</div>
The right box-shadow of target is cut off because the container calculates its visual overflow incorrectly.
,
Mar 31 2016
This could be a problem of visual overflow calculation, not the flipForWritingMode() call in PaintLayer::physicalBoundingBox(). We add visual effect overflow in physical coordinates into visual overflow rect. It seems that we should flip visual effect overflow to block direction coordinates. Is this correct?
,
Mar 31 2016
Your understanding of the right thing to do sounds correct to me, link which bit of code you're looking at? I don't think we would add overflow in physical, believe it should be logical, and does need flipping. There may be multiple bugs at hand, for example we still have an open bug http://crbug.com/472330 incorrect cull rect for box-shadow in vertical-rl.
,
Mar 31 2016
,
Mar 31 2016
,
Apr 1 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ac7511d8075f109d87040a2d782b641d4b8e40c9 commit ac7511d8075f109d87040a2d782b641d4b8e40c9 Author: wangxianzhu <wangxianzhu@chromium.org> Date: Fri Apr 01 17:00:45 2016 Fix wrong box-shadow visual overflow with flipped blocks writing mode BUG= 599573 TEST=fast/box-shadow/shadow-box-resize-writing-mode.html TEST=LayoutObjectTest.OverflowRectMappingWithSelfFlippedWritingMode TEST=LayoutObjectTest.OverflowRectMappingWithContainerFlippedWritingMode Review URL: https://codereview.chromium.org/1846753004 Cr-Commit-Position: refs/heads/master@{#384613} [modify] https://crrev.com/ac7511d8075f109d87040a2d782b641d4b8e40c9/third_party/WebKit/Source/core/layout/LayoutBox.cpp [modify] https://crrev.com/ac7511d8075f109d87040a2d782b641d4b8e40c9/third_party/WebKit/Source/core/layout/LayoutObjectTest.cpp [modify] https://crrev.com/ac7511d8075f109d87040a2d782b641d4b8e40c9/third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp
,
Apr 1 2016
|
||||
►
Sign in to add a comment |
||||
Comment 1 by wangxianzhu@chromium.org
, Mar 31 2016