Today, the WebContent process receives shared bitmaps from the UI process and is then asked to paint the web content into the bitmap. We juggle two bitmaps for double-buffering but that's where the sophistication ends.
We should move towards a model where the web content is divided into compositing layers (based on some heuristic for "things that could be beneficial to layerize, i.e fixed-position elements, elements with a 3D transform, elements with will-change
, etc.")
Once we have these layers, we can build a "compositing tree" and put the layers into it. We then pass the tree to the UI process, which is where the actual compositing is done. This will allow the UI process to scroll around freely & smoothly without having to ask the WebContent process to repaint all the time.
Pay now to fund the work behind this issue.
Get updates on progress being made.
Maintainer is rewarded once the issue is completed.
You're funding impactful open source efforts
You want to contribute to this effort
You want to get funding like this too