3 ms·
Hmm... Wouldn't it be possible to address the problem at another level? For instance, when it's discovered that layout properties are being animated, see if it
by westoncb 9y ago
Hmm... Wouldn't it be possible to address the problem at another level? For instance, when it's discovered that layout properties are being animated, see if it would be possible to create an equivalent effect in the compositing stage, if so, convert the layout position changes to transforms?
I realize that would probably not be easy, but maybe still possible without major architectural changes?
- whowouldathunk 9y agoWhich thread are you going to do that work on? It's complicated because layout changes can cause new elements to be created. Elements can be really expensive to create.
- westoncb 9y agoThat's the kind of thing that would cause a rejection: elements are gong to be created, so this can't be converted to compositing stage operations instead. Dunno which thread—just an idea.
- pcwalton 9y ago> Which thread are you going to do that work on? The layout thread. > It's complicated because layout changes can cause new elements to be created. Elements can be really expensive to create. Huh? No, they can't. In rare cases, layout changes can cause new render objects to be created (line breaks), but that's not elements.
- whowouldathunk 9y agoNot sure how Servo works, but what happens if a list viewport gets bigger and you need to display more list items?
- pcwalton 9y agoThe newly visible list items are already laid out, so we just display them.
- pcwalton 9y ago> For instance, when it's discovered that layout properties are being animated, see if it would be possible to create an equivalent effect in the compositing stage, if so, convert the layout position changes to transforms? Yes, and we as browser vendors should absolutely do that. Though a better solution is to just make the compositor able to accelerate the full generality of CSS in the first place.