Oh, can you also please request the
privacy/security/enterprise/debuggability/testing reviews in chromestatus?
I will set my approved bit so I don't forgot, but this needs to be done
before 3xLGTM and shipping. Thank you!

On Fri, Feb 6, 2026 at 11:21 AM Philip Jägenstedt <[email protected]>
wrote:

> LGTM1, seems like a straightforward improvement!
>
> Notably https://bugzilla.mozilla.org/show_bug.cgi?id=1446617 says "Closed
> 7 years ago" and it's great to close the gap on these things.
>
> On Thu, Feb 5, 2026 at 6:57 AM 'Virali Purbey' via blink-dev <
> [email protected]> wrote:
>
>> Hi all,
>>
>>
>>
>> Sharing my I2S for review. Please have a look.
>>
>> Thanks,
>> Virali
>>
>>
>>
>> *Contact emails*
>>
>> [email protected]
>>
>>
>>
>> *Specification*
>>
>> https://svgwg.org/svg2-draft/text.html#TextPathElement
>>
>>
>>
>> *Summary*
>>
>> This change adds support for the path attribute on the SVG <textPath>
>> element, allowing authors to define text path geometry inline using SVG
>> path data and reducing the need for separately defined <path> elements.
>>
>>
>>
>> <textPath> resolves its text path geometry using the following rules:
>>
>>
>>
>> 1. If both path and href are present, geometry is resolved from the path
>> attribute.
>>
>> 2. If only the path attribute is present and parses successfully, the
>> inline path definition is used.
>>
>> 3. If the path attribute is absent or fails to parse, and an href
>> attribute is provided, the referenced <path> element is used as a fallback.
>>
>> 4. Existing href‑only behavior is preserved without change.
>>
>>
>>
>> This implementation follows the SVG 2 specification’s definition of the
>> path attribute on <textPath>, and the resolution behavior is consistent
>> with other browser engines, improving interoperability and standards
>> compliance.
>>
>>
>>
>> Note: When both path and href are specified on <textPath>, path now takes
>> precedence, per SVG 2 specification.
>>
>>
>>
>> *Blink component*
>>
>> Blink>SVG
>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ESVG%22>
>>
>>
>>
>> *Web Feature ID*
>>
>> svg <https://webstatus.dev/features/svg>
>>
>>
>>
>> *Motivation*
>>
>> Before this change, Chromium required <textPath> to reference a separate
>> <path> element via href in order to define text path geometry. While
>> functional, this limitation diverged from the SVG 2 specification and from
>> behavior in other browser engines that support inline path data via the
>> path attribute. As a result, SVG content authored for cross‑browser
>> compatibility frequently rendered incorrectly in Chromium or required
>> duplicating path definitions solely to accommodate Chromium’s lack of
>> support.
>>
>>
>>
>> Supporting the path attribute allows authors to define self‑contained
>> text‑on‑path geometry directly on <textPath>, reducing DOM indirection and
>> improving authoring ergonomics without changing existing href‑based
>> behavior. This aligns Chromium’s behavior with the SVG specification and
>> other engines, eliminates a known source of interoperability issues, and
>> reduces the need for browser‑specific workarounds in real‑world SVG content.
>>
>>
>>
>> *Initial public proposal*
>>
>> *No information provided*
>>
>>
>>
>> *TAG review*
>>
>> Not requested. This change implements an existing SVG 2 feature and does
>> not introduce new web‑exposed APIs or primitives.
>>
>>
>>
>> *TAG review status*
>>
>> Not applicable
>>
>>
>>
>> *Risks*
>>
>>
>>
>> *Interoperability and Compatibility*
>>
>> Behavior change risk:
>>
>> Previously, Chromium ignored the path attribute on <textPath> and always
>> resolved text geometry via href. With this change, when both path and href
>> are specified, the path attribute takes precedence, per the SVG 2
>> specification. As a result, some existing SVG content that relied on href
>> may render differently post‑ship. This aligns Chromium with other browser
>> engines and improves standards compliance.
>>
>>
>>
>> Mitigation: The feature is guarded by a Finch flag
>> (SvgTextPathPathAttributeEnabled), which can be used as a kill‑switch if
>> unexpected compatibility issues arise.
>>
>>
>>
>> *Gecko*: Shipped/Shipping (
>> https://bugzilla.mozilla.org/show_bug.cgi?id=1446617)
>>
>>
>>
>> *WebKit*: No signal (
>> https://github.com/WebKit/standards-positions/issues/606)
>>
>>
>>
>> *Web developers*: Positive
>>
>> One user has noted they are impacted by the CrBug.
>>
>>
>>
>> *Other signals*:
>>
>>
>>
>> *Security*
>>
>> This feature does not introduce new script‑accessible APIs, cross‑origin
>> capabilities, or user‑exposed surface area. It enables use of inline SVG
>> path data in a context that already accepts path geometry via referenced
>> <path> elements. The same SVG path parsing and rendering logic already
>> exercised by <path> elements is reused for the path attribute on
>> <textPath>. No additional memory exposure, network access, or privilege
>> changes are introduced.
>>
>>
>>
>> *WebView application risks*
>>
>> *Does this intent deprecate or change behavior of existing APIs, such
>> that it has potentially high risk for Android WebView-based applications?*
>>
>> No.
>>
>> This change does not deprecate or modify existing APIs. It adds support
>> for a previously unsupported SVG attribute and preserves existing href‑only
>> behavior.
>>
>>
>>
>> *Debuggability*
>>
>> Issues related to this feature are debuggable using existing SVG and DOM
>> inspection tools. The resolved path used by <textPath> can be inspected via
>> the DOM and verified through rendered output. Invalid inline path values
>> gracefully fall back to href, avoiding hard failures and making rendering
>> issues visible rather than silent. No new debugging tooling is required.
>>
>>
>>
>> *Will this feature be supported on all six Blink platforms (Windows, Mac,
>> Linux, ChromeOS, Android, and Android WebView)?*
>>
>> Yes
>>
>>
>>
>> *Is this feature fully tested by **web-platform-tests*
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>> *?*
>>
>> Yes
>>
>> https://wpt.fyi/results/svg/text/reftests/textpath-path-attr.svg
>>
>>
>> https://wpt.fyi/results/svg/text/reftests/textpath-path-attr-invalid-path-fallback.svg
>>
>>
>>
>> https://wpt.fyi/results/svg/text/reftests/textpath-path-attr-precedence-over-href.svg
>>
>>
>>
>> *Flag name on about://flags*
>>
>> *No information provided*
>>
>>
>>
>> *Finch feature name*
>>
>> SvgTextPathPathAttributeEnabled
>>
>>
>>
>> *Rollout plan*
>>
>> Will ship enabled for all users
>>
>>
>>
>> *Requires code in //chrome?*
>>
>> False
>>
>>
>>
>> *Tracking bug*
>>
>> https://issues.chromium.org/issues/374010056
>>
>>
>>
>> *Estimated milestones*
>>
>> Shipping on desktop
>>
>> 146
>>
>> Shipping on Android
>>
>> 146
>>
>> Shipping on WebView
>>
>> 146
>>
>>
>>
>> *Anticipated spec changes*
>>
>> *Open questions about a feature may be a source of future web compat or
>> interop issues. Please list open issues (e.g. links to known github issues
>> in the project for the feature specification) whose resolution may
>> introduce web compat/interop risk (e.g., changing to naming or structure of
>> the API in a non-backward-compatible way).*
>>
>> There is an open discussion in the SVG Working Group regarding validation
>> requirements for the path attribute on <textPath>, specifically whether the
>> entire path data must be valid in order for the attribute to be used:
>> https://github.com/w3c/svgwg/issues/393
>>
>>
>>
>> The current implementation follows the SVG 2 specification as written and
>> aligns with existing behavior in other engines. If the resolution of this
>> issue results in clarified or changed requirements around partial path
>> validity, minor behavior adjustments may be required in the future. At
>> present, no concrete spec changes have been adopted.
>>
>>
>>
>> *Link to entry on the Chrome Platform Status*
>>
>> https://chromestatus.com/feature/5157546589552640?gate=6533295938600960
>>
>>
>>
>> This intent message was generated by Chrome Platform Status
>> <https://chromestatus.com/>.
>>
>>
>>
>> *From
>> <https://chromestatus.com/feature/5157546589552640/gate/6533295938600960/intent
>> <https://chromestatus.com/feature/5157546589552640/gate/6533295938600960/intent>>
>> *
>>
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/KUYP153MB1117D04BB5474CCF72F81DFAC199A%40KUYP153MB1117.APCP153.PROD.OUTLOOK.COM
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/KUYP153MB1117D04BB5474CCF72F81DFAC199A%40KUYP153MB1117.APCP153.PROD.OUTLOOK.COM?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYd6omP77ms3ybSD-zw6-WCML%2BAMc85Qfee2QSKTCwJvRA%40mail.gmail.com.

Reply via email to