-
Notifications
You must be signed in to change notification settings - Fork 131
feat(htmlcss): in-tree Skia-backed SVG renderer (htmlcss::svg)
#698
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
softmarshmallow
wants to merge
59
commits into
main
Choose a base branch
from
canary
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
59 commits
Select commit
Hold shift + click to select a range
4b54ac3
docs(research): add Blink SVG research docs and tighten research skill
softmarshmallow 4cbc05c
fix(docs): replace autolinks with markdown links for MDX compat
softmarshmallow a1eafdb
refactor(htmlcss::svg): Blink-aligned module organization
softmarshmallow de1265b
refactor(htmlcss::svg): split dom/element.rs, extract text shaping, d…
softmarshmallow b8845db
fix(htmlcss::svg): address AI review findings (PR #698)
softmarshmallow de59d7c
chore(grida_dev): silence dead_code on ComparisonResult.diff_percentage
softmarshmallow e7a8ee5
fix(htmlcss::svg): drop spec-invalid clipPath `<use>` targets instead…
softmarshmallow 161feea
fix(htmlcss::svg): treat broken filter primitive references as transp…
softmarshmallow f9618f4
fix(htmlcss::svg): apply requiredExtensions / systemLanguage to all r…
softmarshmallow 808ffa0
fix(htmlcss::svg): keep first-in-document-order entry on duplicated ids
softmarshmallow 950fa90
fix(htmlcss::svg): bound the fill/stroke ancestor walk at the <use> t…
softmarshmallow d11371e
fix(htmlcss::svg): resolve stroke-width percentages against the viewp…
softmarshmallow 0b1bcf0
fix(htmlcss::svg): honor transform-origin on <clipPath> and <pattern>
softmarshmallow e2bd180
fix(htmlcss::svg): chain clip-path=url(#empty) clips everything
softmarshmallow 12e3e7e
fix(htmlcss::svg): resolve nested-<svg> percentage x/y/width/height
softmarshmallow be327fb
fix(htmlcss::svg): explicit feConvolveMatrix divisor=0 emits transparent
softmarshmallow a9cfb63
fix(htmlcss::svg): resolve userSpaceOnUse pattern percentages against…
softmarshmallow eb3d730
fix(htmlcss::svg): <use> of <svg> behaves like the spec'd shadow root
softmarshmallow 0c9f422
fix(htmlcss::svg): resolve stroke-dashoffset percentages against the …
softmarshmallow 1f7178a
fix(htmlcss::svg): detect <mask> cycles via an active-mask chain
softmarshmallow 301e86f
fix(htmlcss::svg): collapse non-overlapping primitive subregions to e…
softmarshmallow 2b7b165
fix(htmlcss::svg): reject chained <mask> targets that close a transit…
softmarshmallow 2611959
fix(htmlcss::svg): reject negative arguments to CSS filter shorthands
softmarshmallow 02cc61a
fix(htmlcss::svg): resolve stroke-dasharray percentage entries agains…
softmarshmallow de4b146
fix(htmlcss::svg): tspan/textPath honour conditional processing and <…
softmarshmallow 56853da
fix(htmlcss::svg): treat feTurbulence numOctaves<=0 as transparent flood
softmarshmallow f17ec41
fix(htmlcss::svg): compose chained clip-path on clipPath/child with c…
softmarshmallow a40d693
fix(htmlcss::svg): resolve transform-origin against the right referen…
softmarshmallow 594f70e
fix(htmlcss::svg): text baseline / decoration / anchor / kerning / xm…
softmarshmallow 0491490
fix(htmlcss::svg): per-tspan group opacity via save_layer
softmarshmallow 1a82a2d
fix(htmlcss::svg): marker shorthand cascade and end-of-path angle bac…
softmarshmallow e438337
fix(htmlcss::svg): honor paint-order on shapes
softmarshmallow ab77187
fix(htmlcss::svg): resolve percent values on markerWidth/Height/refX/…
softmarshmallow 904c5f9
fix(htmlcss::svg): reject paint-order values with any invalid token
softmarshmallow 8af3873
fix(htmlcss::svg): clip-path stroke-box reference expands by half str…
softmarshmallow 4795ac1
fix(htmlcss::svg): visibility hidden/collapse on tspan suppresses paint
softmarshmallow 4e51f8d
fix(htmlcss::svg): measure '0' glyph for ch unit on shape attributes
softmarshmallow de4a6e2
feat(htmlcss::svg): mix-blend-mode and isolation:isolate as CSS-only …
softmarshmallow 07584d7
fix(htmlcss::svg): use bilinear sampling for feImage
softmarshmallow 7f4b858
fix(htmlcss::svg): resolve overflow="inherit" on <marker>
softmarshmallow 4652207
fix(htmlcss::svg): exclude display:none children from group bbox
softmarshmallow 97f5f64
fix(htmlcss::svg): use tight bbox (not control-point bbox) for path o…
softmarshmallow 08d2b3f
fix(htmlcss::svg): honor paint-order on text/tspan (fill/stroke order…
softmarshmallow de1de32
feat(htmlcss::svg): tspan paint pipeline (url() paint, mask, filter, …
softmarshmallow fed7331
feat(htmlcss::svg): <text> inside <clipPath> as glyph-clip with per-t…
softmarshmallow d920730
fix(htmlcss::svg): bound text font cascade at <use> target
softmarshmallow b4ec620
feat(htmlcss::svg): font shorthand resets longhands per CSS Fonts 4 §…
softmarshmallow 2085610
fix(htmlcss::svg): font-relative units in stroke-dasharray
softmarshmallow c7758f9
fix(htmlcss::svg): mask region % resolves against SVG viewport in use…
softmarshmallow 132fec6
fix(htmlcss::svg): clip <image> overflow when preserveAspectRatio=slice
softmarshmallow da9dc63
feat(htmlcss::svg): transform-origin on textPath's referenced <path>
softmarshmallow 2cdd8b5
feat(htmlcss::svg): rasterize inline SVG to host <image> pixel size w…
softmarshmallow bbc25a4
fix(htmlcss::svg): default nested <svg> w/h to 100% when viewBox is set
softmarshmallow c6157f2
feat(htmlcss::svg): textLength with lengthAdjust spacing and spacingA…
softmarshmallow fbb4a48
fix(htmlcss::svg): feImage upscale uses Mitchell bicubic, not bilinear
softmarshmallow 28fffcd
feat(htmlcss::svg): cursive run shaping for Arabic / Hebrew / Indic
softmarshmallow b600c2c
refactor(htmlcss::svg): consolidate transform-origin wrap, paint func…
softmarshmallow dc6cd11
chore(grida_dev): expand reftest tooling — bake, inspect, oracles, su…
softmarshmallow 2b5f8ce
chore(grida_dev): port reftest bake to playwright + tsx (drop standal…
softmarshmallow File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Docstring narrows
Errconditions more than the implementation.Line 219 says
Erris only for unrecoverable structure/picture-recording cases, but this path can also surface non-structural parse/unsupported failures from the SVG pipeline. Please broaden the wording to avoid misleading callers.✏️ Suggested doc fix
📝 Committable suggestion
🤖 Prompt for AI Agents