blink::PaintController
Blink28610 Okt 2025

blink::PaintController

builds the display list + paint chunks and manages caching.

As painters call into GraphicsContext, they also drive a PaintController which groups drawing into display items and paint chunks (each keyed by the current property‑tree state). It also handles reuse of cached items to avoid repaint when nothing visually changed. Output is an immutable PaintArtifact. (Chromium Git Repositories)

Key fields

  • PaintArtifact* new_paint_artifact_ — being built for this frame;

  • PaintArtifact* old_paint_artifact_ — previous frame for cache matching;

  • PaintChunker paint_chunker_ — forms chunk boundaries based on property state;

  • PaintControllerPersistentData* persistent_data_ — holds prior artifact & subsequences. (Chromium Git Repositories)

Most important methods

  • UpdateCurrentPaintChunkProperties(const PropertyTreeStateOrAlias&) — starts/updates the current chunk when property state changes. (Chromium Git Repositories)

  • template <class T> CreateAndAppend(...) — appends a display item (records drawing op + metadata). (Chromium Git Repositories)

  • bool UseCachedItemIfPossible(...) — reuses prior items to skip repaints. (Chromium Git Repositories)

  • void BeginFrame(const void* frame) / FrameFirstPaint EndFrame(const void* frame) — delimit a painting pass for metrics + cache book‑keeping. (Chromium Git Repositories)

  • (Internals also maintain id→index maps to support O(1)/linear cache lookups.) (Chromium Git Repositories)

Hands off to: the PaintArtifact it produces.


Episoder(408)

Gemini CLI Extensibility and Customization Guide

Gemini CLI Extensibility and Customization Guide

The Google Gemini CLI is an open-source terminal assistant designed for high levels of extensibility and customization. Users can expand its capabilities through a pluggable extension system, custom s...

27 Des 202535min

Google Gemini Command-Line Interface

Google Gemini Command-Line Interface

The provided text outlines the Google Gemini CLI, an open-source tool that integrates advanced AI language models directly into a developer’s terminal. It functions as an agentic assistant capable of ...

27 Des 202538min

Git Grep: The Definitive Technical Guide

Git Grep: The Definitive Technical Guide

This technical guide provides an exhaustive analysis of git grep, a specialized search utility built into the Git version control system. It explains how the tool optimizes code searches by targeting ...

27 Des 202537min

The Evolution and Deprecation of Blink’s PaintLayer Tree

The Evolution and Deprecation of Blink’s PaintLayer Tree

The provided text outlines the Blink rendering engine's multi-year transition away from its legacy PaintLayer tree toward a more efficient RenderingNG architecture. Traditionally, PaintLayers managed ...

27 Des 202542min

[EXPERT] The PaintLayer Tree in Blink Rendering

[EXPERT] The PaintLayer Tree in Blink Rendering

The provided text explains the PaintLayer tree, an internal architectural component of Google Chrome’s Blink rendering engine that manages complex visual tasks. PaintLayers are selectively created for...

26 Des 202540min

CSS Sticky Positioning and Paint Property Trees

CSS Sticky Positioning and Paint Property Trees

This documentation details how the Blink rendering engine manages CSS sticky positioning through its PrePaint and paint property tree workflows. During the PrePaint phase, the engine identifies sticky...

26 Des 202551min

[General] Inside Blink: The Paint Property Tree Builder Pipeline

[General] Inside Blink: The Paint Property Tree Builder Pipeline

The PaintPropertyTreeBuilder is a critical component within Google Chrome’s Blink engine that converts layout data into structural property trees used for rendering. Operating during the PrePaint phas...

24 Des 202550min

Inside Blink: The Paint Property Tree Builder Pipeline

Inside Blink: The Paint Property Tree Builder Pipeline

The PaintPropertyTreeBuilder is a critical component within Google Chrome’s Blink engine that converts layout data into structural property trees used for rendering. Operating during the PrePaint phas...

24 Des 20251h 4min

Populært innen Teknologi

lydartikler-fra-aftenposten
romkapsel
rss-avskiltet
energi-og-klima
nasjonal-sikkerhetsmyndighet-nsm
teknisk-sett
teknologi-og-mennesker
elektropodden
rss-impressions-2
shifter
smart-forklart
tomprat-med-gunnar-tjomlid
pedagogisk-intelligens
fornybaren
rss-ai-forklart
i-loopen
rss-for-alarmen-gar
rss-praktisk-proptech
rss-ki-praten
rss-anleggspraten