Closed Bug 1604383 Opened 2 months ago Closed 2 months ago

Refactor the Compositor trait to allow support for DC virtual surface API

Categories

(Core :: Graphics: WebRender, enhancement)

enhancement
Not set

Tracking

()

RESOLVED FIXED
mozilla73
Tracking Status
firefox73 --- fixed

People

(Reporter: gw, Assigned: gw)

References

Details

Attachments

(1 file)

No description provided.
Assignee: nobody → gwatson

Rough outline of the main changes:

The Compositor trait now exposes both the concept of surfaces and tiles.
A surface maps 1:1 with a picture cache slice.
Tiles exist within a given surface.
A given surface has a constant tile size (the surface is re-created if the tile size changes).
A tile is uniquely identified by (surface id, x, y) where (x, y) are the index of the tile on each axis (signed).
The DC implementation is expanded to have DCSurface and DCTile (currently the old name DCLayer).
A DC visual is created for each tile, and also one for each surface.
Tile visuals are attached to the surface visual, and placed in a local space offset.
Surface visuals are attached to the root. Clip rect and scroll position are applied to the surface visual.

(more detail to come later)

Pushed by gwatson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c81cf0c409bc
Refactor the Compositor trait to allow support for DC virtual surface API. r=mstange,sotaro
Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla73
Regressions: 1604827
Regressions: 1606608
You need to log in before you can comment on or make changes to this bug.