Skip to content

Enable SVG geometric properties for Servo - #427

Merged
jdm merged 1 commit into
servo:mainfrom
mu-mostafa98:enable-svg-styling-for-servo-2
Jul 16, 2026
Merged

jdm merged 1 commit into
servo:mainfrom
mu-mostafa98:enable-svg-styling-for-servo-2

Conversation

@mu-mostafa98

@mu-mostafa98 mu-mostafa98 commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Removes engine = "gecko" from 8 SVG-geometric properties to be enabled for servo:

  • x
  • y
  • cx
  • cy
  • rx
  • ry
  • r
  • d

Servo PR

@jdm
jdm added this pull request to the merge queue Jul 16, 2026
Merged via the queue into servo:main with commit 5173fcd Jul 16, 2026
5 checks passed
pull Bot pushed a commit to AKJUS/servo that referenced this pull request Jul 17, 2026
…tural elements (servo#46558)

## Create DOM element types for SVG shapes, gradients, and structural
elements

### SVG Dom Elements hierarchy
 
```
SVGElement
|── SVGGradientElement
|            ├── SVGLinearGradientElement   ← <linearGradient>
|            └── SVGRadialGradientElement   ← <radialGradient>
|
|── SVGStopElement                  ← <stop>
|
|── SVGGraphicsElement
|              ├── SVGGElement                ← <g>
|              ├── SVGDefsElement             ← <defs>
|              ├── SVGSymbolElement           ← <symbol>
|              ├── SVGUseElement              ← <use>
|              ├── SVGImageElement            ← <image> (existing)
|              ├── SVGSVGElement              ← <svg> (existing)
|
|── SVGGeometryElement
              ├── SVGCircleElement      ← <circle>
              ├── SVGEllipseElement     ← <ellipse>
              ├── SVGLineElement        ← <line>
              ├── SVGPathElement        ← <path>
              ├── SVGPolygonElement     ← <polygon>
              ├── SVGPolylineElement    ← <polyline>
              └── SVGRectElement        ← <rect>
```

## Presentational hints

Added attribute-to-CSS mapping per element type:

| Attribute(s) | Element(s) | CSS property |
|---|---|---|
| `cx`, `cy`, `r` | `<circle>` | `cx`, `cy`, `r` |
| `cx`, `cy`, `rx`, `ry` | `<ellipse>` | `cx`, `cy`, `rx`, `ry` |
| `x`, `y`, `width`, `height`, `rx`, `ry` | `<rect>` | `x`, `y`,
`width`, `height`, `rx`, `ry` |
| `x`, `y`, `width`, `height` | `<image>` | `x`, `y`, `width`, `height`
|
| `d` | `<path>` | `d` (wrapped in `path()` CSS syntax) |
| `display`, `visibility`, `opacity` | all SVG | `display`,
`visibility`, `opacity` |


## Stylo [PR](servo/stylo#427)

---------

Signed-off-by: Mohamed Mostafa <[email protected]>
lando-worker Bot pushed a commit to mozilla-firefox/firefox that referenced this pull request Sep 2, 2026
…yle-system-reviewers,emilio

This imports servo/stylo#427

Removes `engine = "gecko"` from 8 SVG-geometric properties to be enabled
for servo:

- `x`
- `y`
- `cx`
- `cy`
- `rx`
- `ry`
- `r`
- `d`

Differential Revision: https://phabricator.services.mozilla.com/D322773
github-actions Bot pushed a commit to DioxusLabs/stylo that referenced this pull request Sep 3, 2026
…yle-system-reviewers,emilio

This imports servo#427

Removes `engine = "gecko"` from 8 SVG-geometric properties to be enabled
for servo:

- `x`
- `y`
- `cx`
- `cy`
- `rx`
- `ry`
- `r`
- `d`

Differential Revision: https://phabricator.services.mozilla.com/D322773
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants