a8416522b4
https://bugs.webkit.org/show_bug.cgi?id=227624 <rdar://problem/79845896> Reviewed by Simon Fraser. Source/WebCore: Use the correct coordinate space for clip-path based hittesting. 1. The hittest location is in the coordinate space of the painting root (hittesting is similar to painting in this context). 2. RenderBox::hitTestClipPath's accumulatedOffset (as the name implies) should include the offset from the (paint) hittest root. 3. The clip-path intersecting takes coordinates relative to the containing block. Test: fast/clip/hit-test-with-clip-path.html * rendering/RenderBox.cpp: (WebCore::RenderBox::hitTestVisualOverflow const): (WebCore::RenderBox::hitTestClipPath const): Make the hittest root coordinates relative to the containing block. (WebCore::RenderBox::hitTestBorderRadius const): * rendering/RenderBox.h: Let's not use locationInContainer name as it is way too generic and misleading. * rendering/RenderLayer.cpp: Compute and pass in proper accumulated offset value. (WebCore::RenderLayer::hitTestLayer): LayoutTests: * fast/clip/hit-test-with-clip-path-expected.txt: Added. * fast/clip/hit-test-with-clip-path.html: Added. Canonical link: https://commits.webkit.org/239380@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@279544 268f45cc-cd09-0410-ab3c-d52691b4dbfc |
||
---|---|---|
.. | ||
001.html | ||
002.html | ||
003.html | ||
004.html | ||
005.html | ||
006.html | ||
007.html | ||
008.html | ||
009.html | ||
010.html | ||
011.html | ||
012.html | ||
013.html | ||
014.html | ||
015.html | ||
016.html | ||
017-expected.txt | ||
017.html | ||
clip-when-rect-has-fractional-pixel-value-expected.html | ||
clip-when-rect-has-fractional-pixel-value.html | ||
css-clip-does-not-work-when-border-radius-is-present-expected.html | ||
css-clip-does-not-work-when-border-radius-is-present.html | ||
hidpi-background-clip-with-text-fill-color-expected.html | ||
hidpi-background-clip-with-text-fill-color.html | ||
hit-test-with-clip-path-expected.txt | ||
hit-test-with-clip-path.html | ||
nestedTransparencyClip.html | ||
outline-overflowClip.html | ||
overflow-border-radius-clip.html | ||
overflow-border-radius-combinations.html | ||
overflow-border-radius-composited.html | ||
overflow-border-radius-fixed-position.html | ||
overflow-border-radius-transformed.html | ||
overflow-hidden-with-border-radius-overflow-clipping-parent-expected.html | ||
overflow-hidden-with-border-radius-overflow-clipping-parent.html |