RESOLVED FIXED308736
Remove nearestViewportElement and farthestViewportElement from SVGGraphicsElement.idl
https://bugs.webkit.org/show_bug.cgi?id=308736
Summary Remove nearestViewportElement and farthestViewportElement from SVGGraphicsEle...
Karl Dubost
Reported 2026-02-26 05:02:52 PST
https://w3c.github.io/svgwg/svg2-draft/single-page.html#types-InterfaceSVGGraphicsElement The IDL in SVG2 is defined by: ====================== dictionary SVGBoundingBoxOptions { boolean fill = true; boolean stroke = false; boolean markers = false; boolean clipped = false; }; [Exposed=Window] interface SVGGraphicsElement : SVGElement { [SameObject] readonly attribute SVGAnimatedTransformList transform; DOMRect getBBox(optional SVGBoundingBoxOptions options = {}); DOMMatrix? getCTM(); DOMMatrix? getScreenCTM(); }; SVGGraphicsElement includes SVGTests; ======================== WEBKIT. It's messy. See Bug 204038 =============== [ Exposed=Window ] interface SVGGraphicsElement : SVGElement { [SameObject] readonly attribute SVGAnimatedTransformList transform; // FIXME: `getBBox` should return a `DOMRect`. // FIXME: `getBBox` should take an `optional SVGBoundingBoxOptions` as a parameter. [ImplementedAs=getBBoxForBindings, NewObject] SVGRect getBBox(); // FIXME: `getCTM` should return a `DOMMatrix?`. [ImplementedAs=getCTMForBindings, NewObject] SVGMatrix? getCTM(); // FIXME: `getScreenCTM` should return a `DOMMatrix?`. [ImplementedAs=getScreenCTMForBindings, NewObject] SVGMatrix? getScreenCTM(); // Non-standard. // FIXME: These have been removed from SVG2. readonly attribute SVGElement? nearestViewportElement; readonly attribute SVGElement? farthestViewportElement; }; SVGGraphicsElement includes SVGTests; ================ GECKO This has already been removed from Gecko. https://searchfox.org/firefox-main/source/dom/webidl/SVGGraphicsElement.webidl ================ dictionary SVGBoundingBoxOptions { boolean fill = true; boolean stroke = false; boolean markers = false; boolean clipped = false; }; [Exposed=Window] interface SVGGraphicsElement : SVGElement { readonly attribute SVGAnimatedTransformList transform; [NewObject] SVGRect getBBox(optional SVGBoundingBoxOptions aOptions = {}); SVGMatrix? getCTM(); SVGMatrix? getScreenCTM(); }; SVGGraphicsElement includes SVGTests; ================ And it is still visible on Chromium https://chromium.googlesource.com/chromium/blink/+/refs/heads/main/Source/core/svg/SVGGraphicsElement.idl ================ [ TypeChecking=Interface, ] interface SVGGraphicsElement : SVGElement { [RuntimeEnabled=SVG1DOM, MeasureAs=SVG1DOM] readonly attribute SVGAnimatedTransformList transform; [MeasureAs=SVGLocatableNearestViewportElement] readonly attribute SVGElement nearestViewportElement; [MeasureAs=SVGLocatableFarthestViewportElement] readonly attribute SVGElement farthestViewportElement; [ImplementedAs=getBBoxFromJavascript] SVGRect getBBox(); [ImplementedAs=getCTMFromJavascript] SVGMatrix getCTM(); [ImplementedAs=getScreenCTMFromJavascript] SVGMatrix getScreenCTM(); [RaisesException, MeasureAs=SVGGraphicsElementGetTransformToElement] SVGMatrix getTransformToElement(SVGElement element); }; SVGGraphicsElement implements SVGTests; ================
Attachments
Radar WebKit Bug Importer
Comment 1 2026-02-26 05:34:22 PST
Karl Dubost
Comment 2 2026-02-26 05:43:07 PST
EWS
Comment 3 2026-03-01 19:25:34 PST
Committed 308436@main (b733066305a1): <https://commits.webkit.org/308436@main> Reviewed commits have been landed. Closing PR #59504 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.