Expose the display list to consumers of embedded servo#45425
Expose the display list to consumers of embedded servo#45425philocalyst wants to merge 9 commits into
Conversation
|
@philocalyst Did you mean to submit this upstream? |
|
@mrobinson Now I did! Sorry for the confusion. I am NOW reading the servo contribution book so expect some changes from here. |
was really hard to keep up with async events
mrobinson
left a comment
There was a problem hiding this comment.
A few high level issues that need to be worked out before I'm ready to accept an change like this:
- This change does not properly handle reference frames and scroll nodes, so might work for simple pages, but likely not complex ones.
- This change does not handle subframes. That might work for a simple usecase, but not for complex ones.
- Only the root scroll frame offset is considered, but not other scrollers.
This is an interesting proof-of-concept, but a feature like this needs careful consideration. The problem with landing this as-is is that I (and others) will need to maintain it and also be responsible for adding missing features and filling in the blanks.
I think a good way to go about this would be to start with a high-level API proposal that considers all the issues listed above -- and probably some that I've neglected to spot on a first look. It probably makes sense to spend a bit of time getting familiar with the internals of Servo first. A good way to start is to try to fix a few bugs while working on your API proposal.
Exposes the list so that consumers can handle rendering themselves, like for a... TUI webbrowser -- mainly just plumbing. There's a teeny bit of logic for helpers in such that could likely be improved/have the greatest impact of this PR being effective, so I would specifically check out here and here. Also didn't know about the color type to expose, I went with
ColorF.Testing: Adapted for use in a private branch of carboxyl, all tests pass.
Fixes: General unvoiced desires within certain enclaves of embedder folk.