Blink's Rendering: Fragment Tree to Layer Tree Conversion
Blink2865 Sep 2025

Blink's Rendering: Fragment Tree to Layer Tree Conversion

The provided text details Blink's rendering pipeline, specifically focusing on the conversion of the Fragment Tree to the Layer Tree within Chromium's RenderingNG architecture. It explains how layout outputs, captured as an immutable Fragment Tree, are processed through a Pre-Paint phase to build paint property trees (for transforms, clips, effects, and scrolls). Subsequently, the Paint phase generates display items grouped into paint chunks, each associated with a property tree state. Finally, the layerization algorithm (handled by the PaintArtifactCompositor) evaluates these paint chunks, applying merging heuristics and compositing reasons, to create a cc::Layer tree ready for GPU rasterization and display, with CompositorElementIds ensuring efficient synchronization for animations and scrolling.

Episoder(391)

blink::StyleEngine

blink::StyleEngine

style invalidation & resolution (recalc). 
Given DOM/style changes since the last frame, StyleEngine computes updated ComputedStyles, manages active stylesheets/media query state, and marks the right ...

10 Okt 202534min

blink::Document & blink::DocumentLifecycle

blink::Document & blink::DocumentLifecycle

states that gate phases. The document owns the DOM and keeps a DocumentLifecycle state machine that ensures we do things in phase order (style before layout, pre‑paint before paint, etc.). Lifecycle t...

10 Okt 202535min

blink::LocalFrameView

blink::LocalFrameView

orchestrates style → layout → pre‑paint/paint for a frame. This is the workhorse that actually runs lifecycle phases. On a frame tick from WebFrameWidgetImpl, it goes through style recalc, layout (Lay...

9 Okt 202544min

blink::LocalFrame

blink::LocalFrame

the document host and local‑root boundary.
The local frame owns the Document and its LocalFrameView. The local root frame coordinates lifecycle for its subtree (including OOPIF boundaries handled late...

9 Okt 202532min

blink::Page

blink::Page

the page container and animation clock keeper. Page holds frame trees and the PageAnimator that services script‑driven animations on each tick. It’s the top‑level context for the document/view that We...

9 Okt 202534min

blink::WebFrameWidgetImpl

blink::WebFrameWidgetImpl

renderer‑main entry to Blink’s lifecycle. This is where a compositor BeginFrame (coming in via content/public and mojo plumbing) first turns into Blink work on the renderer main thread. It receives th...

9 Okt 202532min

Blink's ComputedStyle: An In-Depth Analysis

Blink's ComputedStyle: An In-Depth Analysis

The collection of sources provides a detailed technical analysis of the ComputedStyle object within Blink, the rendering engine for Chromium. The primary source, an in-depth analysis document, explain...

9 Okt 202545min

Chromium LayerContext Deep Dive: RenderingNG and Scroll Updates

Chromium LayerContext Deep Dive: RenderingNG and Scroll Updates

The source material, primarily an excerpt from a 2025 technical report, provides an in-depth analysis of the LayerContext abstraction within the Chromium RenderingNG pipeline, specifically when the br...

8 Okt 202532min

Populært innen Teknologi

romkapsel
tomprat-med-gunnar-tjomlid
rss-avskiltet
teknisk-sett
nasjonal-sikkerhetsmyndighet-nsm
energi-og-klima
shifter
lydartikler-fra-aftenposten
elektropodden
rss-impressions-2
fornybaren
hans-petter-og-co
rss-alt-vi-kan
rss-ki-praten
pedagogisk-intelligens
smart-forklart
rss-fish-ships
rss-trippel-bunnlinje
rss-alt-som-gar-pa-strom
rss-ai-forklart