the Chromium logo

The Chromium Projects

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

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

CompositeAfterPaint

Presentations

BlinkOn 3.0 Presentation, video (start here to find out more about the project)

BlinkOn 4 presentation

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

core/paint/README.md

Slimming paint invalidation

Representation and implementation of display lists in Blink

Layerization based on display lists

Blink paintlist update algorithm details

==Bounding Rectangle Strategy for Slimming Paint==

Slimming Paint for UI Compositor

Display Item Debugging

Some out of date/historical docs are here.