Bug 184768

Summary: Introduce SVGGeometryElement interface
Product: WebKit Reporter: Dirk Schulze <krit>
Component: SVGAssignee: Dirk Schulze <krit>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, jonlee, koivisto, sabouhallawa, simon.fraser, webkit-bug-importer, zimmermann
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=184767
Bug Depends on:    
Bug Blocks: 191292, 184767    
Attachments:
Description Flags
Patch
none
Patch for landing none

Description Dirk Schulze 2018-04-18 19:55:24 PDT
Start implementing SVGGeometryElement interface for path. No new functionality, just different inheritance. Add a fix for getPointAtLength (follow spec and web more restrictive).
Comment 1 Dirk Schulze 2018-04-18 20:01:52 PDT
Created attachment 338299 [details]
Patch
Comment 2 Dirk Schulze 2018-04-19 17:22:43 PDT
Created attachment 338385 [details]
Patch for landing
Comment 3 WebKit Commit Bot 2018-04-19 18:00:46 PDT
Comment on attachment 338385 [details]
Patch for landing

Clearing flags on attachment: 338385

Committed r230829: <https://trac.webkit.org/changeset/230829>
Comment 4 WebKit Commit Bot 2018-04-19 18:00:47 PDT
All reviewed patches have been landed.  Closing bug.
Comment 5 Radar WebKit Bug Importer 2018-04-19 18:03:02 PDT
<rdar://problem/39583614>
Comment 6 Said Abou-Hallawa 2018-06-18 10:15:43 PDT
Comment on attachment 338385 [details]
Patch for landing

View in context: https://bugs.webkit.org/attachment.cgi?id=338385&action=review

> Source/WebCore/svg/SVGGeometryElement.cpp:85
> +    InstanceInvalidationGuard guard(*this);

This actually does nothing.

> Source/WebCore/svg/SVGGeometryElement.idl:28
> +    readonly attribute SVGAnimatedNumber pathLength; // FIXME: Should be [SameObject].

According to https://www.w3.org/TR/2014/WD-SVG2-20140211/single-page.html#types-InterfaceSVGGeometryElement, the SVGGeometryElement does not include the member pathLength. I do not understand why this member is included here.

> Source/WebCore/svg/SVGPathElement.idl:-28
> -    readonly attribute SVGAnimatedNumber pathLength;

According to https://www.w3.org/TR/2014/WD-SVG2-20140211/single-page.html#paths-InterfaceSVGPathElement, the SVGPathElement still has the member pathLength. I am not sure why this member was moved from SVGPathElement to SVGGeometryElement.
Comment 7 Said Abou-Hallawa 2018-06-20 11:32:41 PDT
Comment on attachment 338385 [details]
Patch for landing

View in context: https://bugs.webkit.org/attachment.cgi?id=338385&action=review

>> Source/WebCore/svg/SVGGeometryElement.idl:28
>> +    readonly attribute SVGAnimatedNumber pathLength; // FIXME: Should be [SameObject].
> 
> According to https://www.w3.org/TR/2014/WD-SVG2-20140211/single-page.html#types-InterfaceSVGGeometryElement, the SVGGeometryElement does not include the member pathLength. I do not understand why this member is included here.

I was wrong.Here I the correct link for the specs: https://svgwg.org/svg2-draft/types.html#InterfaceSVGGeometryElement.

>> Source/WebCore/svg/SVGPathElement.idl:-28
>> -    readonly attribute SVGAnimatedNumber pathLength;
> 
> According to https://www.w3.org/TR/2014/WD-SVG2-20140211/single-page.html#paths-InterfaceSVGPathElement, the SVGPathElement still has the member pathLength. I am not sure why this member was moved from SVGPathElement to SVGGeometryElement.

I was wrong. Here is the correct link for the specs: https://svgwg.org/svg2-draft/paths.html#InterfaceSVGPathElement.