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(392)

Testing New CSS Features for the Web Platform

Testing New CSS Features for the Web Platform

This guide outlines the process of creating and implementing Web Platform Tests (WPT) for a new CSS feature within Chromium's Blink engine. It details steps from initial feature implementation under a...

7 Syys 20251h 23min

Blink's Rendering Engine: A Forest of Trees

Blink's Rendering Engine: A Forest of Trees

The provided source details the intricate rendering pipeline of Google Chrome's Blink engine, explaining how web content transforms from HTML/CSS into on-screen pixels. It outlines a sequence of speci...

6 Syys 202540min

Blink's StyleEngine: Chromium CSS Deep Dive

Blink's StyleEngine: Chromium CSS Deep Dive

The provided document details Blink's StyleEngine, a crucial component within Chromium's rendering engine responsible for managing all CSS styles for a web document. It orchestrates style data and ope...

5 Syys 202555min

Deep Dive: The CSS Flexbox Layout Model

Deep Dive: The CSS Flexbox Layout Model

This source offers a comprehensive technical lecture on the CSS Flexbox Layout Model, beginning with an overview of traditional CSS layout methods like block, inline, table, positioned, and float layo...

5 Syys 20251h 2min

Fixing Chrome Bug 40786326: A Developer Walkthrough

Fixing Chrome Bug 40786326: A Developer Walkthrough

This resource provides a thorough guide to resolving Chrome Bug 40786326, which involves an inside marker trailing margin overshoot. The explanation will begin with the process of test creation, detai...

5 Syys 202541min

Flexible Grid Systems: CSS Grid and Beyond

Flexible Grid Systems: CSS Grid and Beyond

This source provides an extensive overview of CSS Grid Layout, a powerful two-dimensional system for web design. It details Grid's specifications and capabilities, explaining how tracks are sized, ite...

5 Syys 202551min

Blink's LayoutNG: Fragment Tree Generation Deep Dive

Blink's LayoutNG: Fragment Tree Generation Deep Dive

This lecture outline provides an in-depth overview of LayoutNG's fragment tree generation within Blink, Google Chrome's rendering engine. It highlights the transition from the legacy layout system, wh...

5 Syys 20251h 2min

Blink's Layer Tree: Architecture, Rendering, and Performance

Blink's Layer Tree: Architecture, Rendering, and Performance

The provided text offers an in-depth look into Blink's layer tree, a crucial component in Chromium's rendering engine responsible for transforming web pages into pixels. It explains the architecture o...

5 Syys 20251h 2min