New issue
Advanced search Search tips

Issue 896638 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 24
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

SVGGeometryElement.prototype.isPointInFill/isPointInStroke should ignore pointer-events

Project Member Reported by f...@opera.com, Oct 18

Issue description

Per the clarified spec-text on these methods, they should not take the 'pointer-events' property into account. (Per the current spec-text 'vector-effect' should also be ignore for the isPointInStroke method.)

https://svgwg.org/svg2-draft/types.html#__svg__SVGGeometryElement__isPointInFill
 
Owner: f...@opera.com
Status: Assigned (was: Available)
Project Member

Comment 2 by bugdroid1@chromium.org, Oct 23

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e4d2c607d6450e220fa4ca2af00746632ecb5bf1

commit e4d2c607d6450e220fa4ca2af00746632ecb5bf1
Author: Fredrik Söderquist <fs@opera.com>
Date: Tue Oct 23 17:56:32 2018

Update isPointInFill/isPointInStroke to match spec adjustments

Rather than using the value of the 'pointer-events' property (and
indirectly, the 'visibility' property and potentially others not
explicitly listed in the spec), pass 'fill' and 'stroke' respectively to
better match spec [1].

Use AsPath() in isPointIn{Fill,Stroke} instead of going to the
LayoutSVGShape, to hopefully allow the LayoutSVGShape to be stricter
about invariants.

[1] https://svgwg.org/svg2-draft/types.html#InterfaceSVGGeometryElement

Bug:  896638 
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I4f8ef5ae4e84d29187e68ca243e3344a9a27544c
Reviewed-on: https://chromium-review.googlesource.com/c/1288574
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#602018}
[add] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/WebKit/LayoutTests/external/wpt/svg/types/scripted/SVGGeometryElement.isPointInFill-01-expected.txt
[add] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/WebKit/LayoutTests/external/wpt/svg/types/scripted/SVGGeometryElement.isPointInFill-01.svg
[add] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/WebKit/LayoutTests/external/wpt/svg/types/scripted/SVGGeometryElement.isPointInStroke-01-expected.txt
[add] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/WebKit/LayoutTests/external/wpt/svg/types/scripted/SVGGeometryElement.isPointInStroke-01.svg
[delete] https://crrev.com/a3216a1cba5057329d0e94e1c6e2d01165d7a85b/third_party/WebKit/LayoutTests/svg/hittest/svg-isPointInFill-expected.txt
[delete] https://crrev.com/a3216a1cba5057329d0e94e1c6e2d01165d7a85b/third_party/WebKit/LayoutTests/svg/hittest/svg-isPointInFill.xhtml
[modify] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/blink/renderer/core/layout/svg/layout_svg_shape.cc
[modify] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/blink/renderer/core/layout/svg/layout_svg_shape.h
[modify] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/blink/renderer/core/svg/svg_geometry_element.cc
[modify] https://crrev.com/e4d2c607d6450e220fa4ca2af00746632ecb5bf1/third_party/blink/renderer/platform/graphics/path.cc

Status: Fixed (was: Assigned)

Sign in to add a comment