Blink‎ > ‎

Slimming Paint (a.k.a. Redesigning Painting and Compositing)

Slimming Paint is a Paint team project to re-implement the Blink<->cc picture recording API to work in terms of a global display list rather than a tree of cc::Layers (~aka GraphicsLayer in Blink terminology). It will result in a drastic simplification of the way that composited layers are represented in Blink and cc, which in turn will yield improved performance, correctness and flexibility.

To get a sense of the extent of this rewrite, one side-effect will be the deletion of the code in core/rendering/compositing/.

Phases

SlimmingPaintV1 - paint using display items (Status: launched in M45)
SlimmingPaintInvalidation - rewrite of paint invalidation using display items, property trees introduced in blink (Status: launched in M58)
SlimmingPaintV175 - uses property trees for painting in blink, introduces paint chunks, uses paint chunks for raster invalidation (Status: launched in M67)
BlinkGenPropertyTrees - sends a layer list instead of a tree, and generates final property trees in blink instead of re-generating them in cc (Status: launching in M73)
CompositeAfterPaint - compositing decisions made after paint.

Presentations

BlinkOn 3.0 Presentationvideo (start here to find out more about the project)


Blink Property Trees (also reviews the Composite-After-Paint (formerly "SPV2") design)

BlinkOn 9 presentation covering current compositing architecture

Core team members

Chris Harrelson (chrishtr@), overall TL
Mason Freed (masonfreed@) Blink
Philip Rogers (pdr@) Blink
Stephen Chenney (schenney@) Blink
Xianzhu Wang (wangxianzhu@) Blink

Adrienne Walker (enne@) cc
Robert Flack (flackr@) animations
David Bokan (bokan@) viewports

Close relatives

Fredrik Söderquist (fs@opera.com) Blink
Erik Dahlstrom (ed@opera.com) Blink
Florin Malita (fmalita@) Blink / Skia
Mike Klein (mtklein@) Skia
Mike Reed (reed@) Skia


A number of other people are involved at least tangentially for design discussions and related projects.

Resources and Design Docs










Some out of date/historical docs are here.
Subpages (1): Historical documents
Comments