Closed
Bug 1489392
Opened 6 years ago
Closed 2 years ago
Update wpt to accept the non-normalized svg path at computed time
Categories
(Core :: CSS Transitions and Animations, enhancement, P3)
Core
CSS Transitions and Animations
Tracking
()
RESOLVED
FIXED
112 Branch
Tracking | Status | |
---|---|---|
firefox112 | --- | fixed |
People
(Reporter: boris, Assigned: boris)
References
(Blocks 2 open bugs, )
Details
Attachments
(2 files, 3 obsolete files)
Comment hidden (obsolete) |
Assignee | ||
Comment 1•6 years ago
|
||
Google guys agree to update this, so I will fix this bug soon.
Assignee | ||
Comment 2•6 years ago
|
||
I would like to move the normalization into parser, and it seems
re-defining CoordPair makes us easier to reuse the macros.
Assignee | ||
Comment 3•6 years ago
|
||
This is about the spec issue: https://github.com/w3c/svgwg/issues/321.
There are some benefits for SVG path and its animations if we could
normalize it at computed time (or even earlier, at parser time). The
computed value of SVG path is the same the specified value, and we have
an agreement with Google chrome to do the normalization for both
specified and computed values, so we move the normalization into the
parser.
Depends on D5903
Assignee | ||
Comment 4•6 years ago
|
||
The svg path string is always "absolute" coordinates now, so we could drop the
absolute flag to save more memory.
Depends on D5904
Updated•6 years ago
|
Attachment #9009254 -
Attachment description: Bug 1489392 - Part 3: Drop IsAbsolute → Bug 1489392 - Part 3: Drop IsAbsolute enum
Comment 5•6 years ago
|
||
Comment on attachment 9009251 [details]
Bug 1489392 - Part 1: Re-define CoordPair struct.
Emilio Cobos Álvarez (:emilio) has approved the revision.
Attachment #9009251 -
Flags: review+
Comment 6•6 years ago
|
||
Comment on attachment 9009253 [details]
Bug 1489392 - Part 2: Normalize path string in parser
Emilio Cobos Álvarez (:emilio) has approved the revision.
Attachment #9009253 -
Flags: review+
Comment 7•6 years ago
|
||
Comment on attachment 9009254 [details]
Bug 1489392 - Part 3: Simplify BuildPath
Emilio Cobos Álvarez (:emilio) has approved the revision.
Attachment #9009254 -
Flags: review+
Assignee | ||
Comment 8•6 years ago
|
||
svgwg still discuss this topic. I will hold these patches for a while.
Assignee | ||
Comment 9•6 years ago
|
||
Sorry, these patches should be updated. I thought Google chrome wants to make both specified and computed values normalized. Just checked their patchset 10 [1], and the wpt is updated as now only computed styles use absolute commands. In other words, the normalization should happens in `ToComputedValue` or `ToCss` for `computed::SVGPathData`.
[1] https://chromium-review.googlesource.com/c/chromium/src/+/1215150
Updated•6 years ago
|
Attachment #9009254 -
Attachment is obsolete: true
Updated•6 years ago
|
Attachment #9009253 -
Attachment is obsolete: true
Updated•6 years ago
|
Attachment #9009254 -
Attachment is obsolete: false
Updated•6 years ago
|
Attachment #9009254 -
Attachment description: Bug 1489392 - Part 3: Drop IsAbsolute enum → Bug 1489392 - Part 3: Simplify BuildPath
Assignee | ||
Comment 10•6 years ago
|
||
According to https://github.com/w3c/svgwg/issues/321, we do normalization
at computed time. That means the specified value still uses original
coordinates, but the computed value always uses absolute coordinates.
Depends on D5903
Comment 11•6 years ago
|
||
Comment on attachment 9010117 [details]
Bug 1489392 - Part 2: Normalize svg path at computed time
Brian Birtles (:birtles) has approved the revision.
Attachment #9010117 -
Flags: review+
Assignee | ||
Comment 12•6 years ago
|
||
It seems AmeliaBR has the strong preference that we should do normalization only for intermediate values [1]. (In other words, keep the current implementation which does normalization at animation time.)
[1] https://github.com/w3c/svgwg/issues/321#issuecomment-423257880
Updated•2 years ago
|
Severity: normal → S3
Updated•2 years ago
|
Attachment #9010117 -
Attachment is obsolete: true
Updated•2 years ago
|
Attachment #9009254 -
Attachment is obsolete: true
Assignee | ||
Updated•2 years ago
|
Summary: Normalize svg paths at computed time → Update wpt to accept the non-normalized svg path at computed time
Updated•2 years ago
|
Attachment #9009251 -
Attachment description: Bug 1489392 - Part 1: Re-define CoordPair struct → Bug 1489392 - Part 1: Re-define CoordPair struct.
Assignee | ||
Comment 13•2 years ago
|
||
There is still no conclusion in https://github.com/w3c/svgwg/issues/321,
so we follow the option 3 in [1] for now:
Don't absolutize anywhere except when needed for animations.
[1] https://github.com/w3c/svgwg/issues/321#issuecomment-423309441
Note:
- Drop "offset-path-serialization.html" because we are doing the simliar
thing in offset-path-computed.html and offset-path-parsing-valid.html. - 'z' is serialized as
Z
because Z and z commands take no parameters,
they have an identical effect.
(https://www.w3.org/TR/SVG2/paths.html#PathDataClosePathCommand)
Assignee | ||
Comment 14•2 years ago
|
||
We could file a new bug for doing normalization once https://github.com/w3c/svgwg/issues/321 gets resolved.
Comment 15•2 years ago
|
||
Pushed by bchiou@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/13ce81b9b7a4
Part 1: Re-define CoordPair struct. r=emilio
https://hg.mozilla.org/integration/autoland/rev/4ee091c23aa2
Part 2: Update wpt to accept non-normalized path string at computed time. r=emilio
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/38942 for changes under testing/web-platform/tests
Comment 17•2 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/13ce81b9b7a4
https://hg.mozilla.org/mozilla-central/rev/4ee091c23aa2
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
status-firefox112:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → 112 Branch
Upstream PR merged by moz-wptsync-bot
You need to log in
before you can comment on or make changes to this bug.