Use a single threaded webview compositor
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Oxide |
Fix Released
|
Critical
|
Chris Coulson |
Bug Description
The webview compositor currently runs on a separate thread - it's like this because at one stage it looked like Google were going to remove the single threaded mode. However, they seem to have settled on a single-threaded browser compositor for now.
A threaded webview compositor has always been unnecessary in Oxide for a few reasons:
- It doesn't handle any animations, so there are no cases where it needs to remain responsive if the main thread is blocked.
- It only contains a single visible layer - the delegated frame layer. Updating this involves the main thread anyway.
- Unlike the renderer main thread which runs arbitrary script, what runs on the browser main thread is controlled by the embedder and predictable. The browser main thread should never be busy enough to block the compositor.
- It adds unnecessary complexity.
- It introduces additional thread hops.
Related branches
Changed in oxide: | |
importance: | Undecided → High |
status: | New → Triaged |
Changed in oxide: | |
status: | Triaged → In Progress |
Changed in oxide: | |
status: | In Progress → Fix Released |
I reckon this is going to be needed to fix bug 1549459