cc::ScrollTree
Blink2862 Marras 2025

cc::ScrollTree

The source text provides an exhaustive technical overview of the Scroll Property Tree (cc::ScrollTree) within the Chromium compositor architecture, which is critical for enabling smooth, off-main-thread scrolling. It explains that the ScrollTree captures the hierarchy and properties of scrollable elements, utilizing individual ScrollNodes to store geometric data (like content and container bounds) and behavioral flags (such as whether scrolling is handled on the main thread or if scroll snapping is active). Furthermore, the text details how the ScrollTree works in close coordination with the Transform Tree to apply scroll-induced translations and how it manages the entire scrolling lifecycle, from input event hit-testing and scroll latching to handling overscroll and synchronizing scroll offsets back to the main thread (Blink) via commit mechanisms. This system ensures that complex features like pinch-zoom, sticky positioning, and scroll-linked animations operate correctly and efficiently on the compositor thread.

Jaksot(395)

Web Browser Engineering

Web Browser Engineering

The excerpts provide an extensive overview of the complex field of web browser engineering, starting with the historical context of the web's foundational technologies like HTTP and HTML. The text det...

25 Syys 202536min

Animation Pipeline: Main Thread to Compositor

Animation Pipeline: Main Thread to Compositor

The sources provide an extensive architectural overview of the Chromium animation pipeline, detailing the complex process required to accelerate animations by moving them off the main thread onto the ...

25 Syys 202536min

cc::CommitState

cc::CommitState

The provided source offers an extensive architectural analysis of Chromium’s cc::CommitState struct, detailing its critical function as the intermediary data structure that facilitates communication b...

25 Syys 202540min

Blink and Compositor Stacking Contexts

Blink and Compositor Stacking Contexts

These sources provide an extensive technical explanation of how CSS stacking contexts are implemented within the Chromium rendering engine, focusing on the collaboration between the Blink renderer and...

25 Syys 202538min

Chromium Architecture: Input, Synchronization, and Animation Pipelines

Chromium Architecture: Input, Synchronization, and Animation Pipelines

These sources provide an extensive architectural overview of the core C++ classes that implement Chromium's input handling, synchronization, and animation systems. The documents detail the multi-proce...

25 Syys 202540min

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 Syys 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 Syys 202532min

viz::SkiaRenderer

viz::SkiaRenderer

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

23 Syys 202552min