Instead of creating a display list for the entire page, only create one
for an area that expands around the viewport. On my machine this makes
incremental layout of http://timecube.com 50% faster.
I was messing around devtools code and saw some TODOs, is anyone working on it? I took one of them:
```// TODO: this really belongs in the protocol module.```
I would be glad to help with this if no one is on it already, just let me know.
This is the first step to allowing incremental iframe creation and destruction. This should eliminate task failures when an iframe is added to the frame tree lazily via script.
This allows the compositor to add frames after the call to SetIds,
where the initial frame tree is created. There are still some issues
preventing proper late frame creation, but this prevents crashes when
it happens.
Fixes#3738.
Actually `<img>` elements in `<noscript>` are not prefetched anymore.
Probably because html5ever already parses the `<noscript>` content as raw
text data if `scripting_enabled` is activated.
See https://github.com/servo/html5ever/blob/servo/src/tree_builder/rules.rs#L126
Also, added a test to the images cache.
Instead of creating a display list for the entire page, only create one
for an area that expands around the viewport. On my machine this makes
incremental layout of http://timecube.com 50% faster.
Actually <img> elements in <noscript> are not prefetched anymore.
Probably because html5ever already parses the <noscript> content as raw
text data if `scripting_enabled` is activated.
See
https://github.com/servo/html5ever/blob/servo/src/tree_builder/rules.rs#
L126
Also, added a test to the images cache.
This implements a subset of the CSS `linear-gradient` property per the
CSS-IMAGES specification:
http://dev.w3.org/csswg/css-images-3/
The full syntax is parsed, but only the beginning and end color stops
are used, and gradients are clamped to the nearest 90 degrees. It should
not be architecturally difficult to add the remaining pieces, but in the
interests of bounding the size of this patch that work has been left to
follow-ups.
Improves GitHub.
r? @glennw