Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
L
librsvg
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 152
    • Issues 152
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 2
    • Merge Requests 2
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Registry
    • Registry
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards

Getting colder with our second freeze... it's 3.31.91 release day and string freeze, upload a tarball and lock those strings 🏂

  • GNOME
  • librsvg
  • Milestones
  • CSS styling with rust-selectors

Open
Milestone

CSS styling with rust-selectors

We use an ad-hoc, very limited implementation of CSS parsing and cascading. Instead, we should refactor the code to be amenable to implementing the interfaces that rust-selectors requires. This is the crate that does CSS cascading in Servo.

  • Overview of layout in Servo

Read that article and keep it in mind. Librsvg does not currently have the same code flow: we do cascading and rendering in a single, messy pass that walks up and down the tree several times. Ideally we would do well-separated passes like Servo; I think we can gradually refactor the code to achieve that.

The tabs below will be removed in a future version

Learn more about issue boards, to keep track of issues in multiple lists, using labels, assignees, and milestones. If you’re missing something from issue boards, please create an issue on GitLab’s issue tracker.

  • Issues 6
  • Merge Requests 0
  • Participants 1
  • Labels 4
Unstarted Issues (open and unassigned)
2
  • Set CSS styles until loading is finished
    #403 stylesrefactoring
  • Do CSS selectors with rust-selectors
    #283 styles
Ongoing Issues (open and assigned)
1
  • Parse CSS rules and declarations with rust-cssparser
    #237 styles
Completed Issues (closed)
3
  • Resolve property inheritance ahead of rendering
    #254 styles
  • Port RsvgState struct to Rust
    #223 4. Newcomersstylesrustification
  • Make Node store pointers to its next sibling, and its first/last child
    #220 stylesrefactoring4. Newcomers
50% complete
50%
Start date
No start date
None
Due date
No due date
6
Issues 6 New issue
Open: 3 Closed: 3
Time tracking
0
Merge requests 0
Open: 0 Closed: 0 Merged: 0
Reference: GNOME/librsvg%"CSS styling with rust-selectors"