Blink Property Trees: Scene Graph for Compositing
Blink28630 Nov 2025

Blink Property Trees: Scene Graph for Compositing

The sources provide a comprehensive technical analysis of the Paint Property Tree Builder (PPTB) in Blink, which is the mechanism responsible for creating the crucial intermediate data structures known as Paint Property Trees (PPT). These PPTs are organized into four distinct hierarchical structures—the Transform, Clip, Effect, and Scroll trees—which capture all necessary geometric and visual state, such as coordinate spaces, clipping regions, and opacity effects. Running during the PrePaint phase, the Paint Property Tree Builder constructs these nodes for every element by performing a top-down traversal of the layout tree, attaching property nodes to layout object fragments. To optimize rendering efficiency, the builder relies on features like dirty bit pruning and isolation boundaries to minimize the work required and prevent unnecessary subtree updates. This architecture ensures rendering correctness and enables the compositing thread to execute rapid visual changes, such as scrolling and transformation animations, without forcing expensive repaints on the main thread.


Episoder(462)

CSS View Transition Pseudo-elements Explained

CSS View Transition Pseudo-elements Explained

These sources provide a detailed, technical explanation of the View Transition API implementation within the Chromium web browser, focusing on how CSS pseudo-elements enable smooth animations. The fir...

24 Sep 202538min

gpu::SkiaOutputSurfaceImplOnGpu / gpu::CommandBuffer

gpu::SkiaOutputSurfaceImplOnGpu / gpu::CommandBuffer

Bridges Skia’s recorded commands to the GPU command buffer; submits and SwapBuffers to present. (Backend: GL/Vulkan/Metal via GPU process.)

23 Sep 202532min

viz::SkiaRenderer

viz::SkiaRenderer

Renderer that turns quads into Skia operations (recording DDLs / drawing to the output surface).

23 Sep 202552min

viz::Display

viz::Display

The display compositor that walks the aggregated render passes and issues draw commands for the final output.

23 Sep 202538min

cc::LayerTreeHostImpl (Input Handler & Scroll Logic)

cc::LayerTreeHostImpl (Input Handler & Scroll Logic)

Scroll processing and overscroll detection in the compositor. The LayerTreeHostImpl in cc implements the compositor-thread InputHandler that processes gesture scroll updates and flings. It manages the...

23 Sep 202527min

blink::EventHandler (Blink core input handling)

blink::EventHandler (Blink core input handling)

Scroll chain builder and overscroll chaining logic. Blink’s EventHandler is responsible for building the scroll chain (the sequence of nested scrollable ancestors) when the user scrolls an element . I...

23 Sep 202526min

blink::ElasticOverscrollController

blink::ElasticOverscrollController

Overscroll orchestration and animation. This Blink-side controller manages the rubber-banding (elastic stretch and rebound) effect when a scrollable area is overscrolled. It observes gesture scroll ev...

23 Sep 202526min

viz::Surface / SurfaceAggregator

viz::Surface / SurfaceAggregator

Receives frames from one or more surfaces (main page and OOPIFs), aggregates them into a single display frame.

23 Sep 202535min

Populært innen Teknologi

lydartikler-fra-aftenposten
romkapsel
tomprat-med-gunnar-tjomlid
teknisk-sett
nasjonal-sikkerhetsmyndighet-nsm
energi-og-klima
shifter
rss-ki-praten
smart-forklart
rss-impressions-2
pedagogisk-intelligens
elektropodden
rss-polypod
rss-alt-vi-kan
rss-ai-forklart
rss-teknologioptimistene-energibransjens-it-podcast
rss-for-alarmen-gar
rss-digitaliseringspadden
rss-fjorsilkebris-podcast
rss-anleggspraten