blink::GraphicsContext
Blink28610 Okt 2025

blink::GraphicsContext

immediate drawing API that records to a display list.

Painters for layout objects use GraphicsContext to “draw”—but in modern Blink those calls get recorded into a display list (PaintRecord) backed by Skia commands. This recording is scoped and batched between BeginRecording(...)/EndRecording(). (Chromium Git Repositories)

Key methods (how display items get their pixels)

  • Recording: BeginRecording(const FloatRect&) → sk_sp<PaintRecord> EndRecording() — wraps a run of drawing commands for later replay. (Chromium Git Repositories)

  • Draw ops (representative): DrawRect, DrawImage(...), DrawText(...), BeginLayer/EndLayer — the stuff that becomes Skia ops inside display items. (Chromium Git Repositories)

Important fields

  • cc::PaintCanvas* canvas_ (owned by recorder), PaintRecorder paint_recorder_ — actual recording guts;

  • float device_scale_factor_, state stacks/flags — needed for correct pixel snapping/appearance. (Chromium Git Repositories)

Hands off to: PaintController, which packages these recorded ops into chunks/items.


Episoder(399)

Blink's PendingLayer: Bridge Between Paint and Compositor

Blink's PendingLayer: Bridge Between Paint and Compositor

The document provides an extensive technical overview of the PendingLayer class, a critical internal component within Blink’s Composite After Paint (CAP) architecture. PendingLayer acts as a liaison, ...

15 Nov 202530min

RasterSource and Rendering Pipeline

RasterSource and Rendering Pipeline

The source provides an extensive technical overview of the RasterSource concept within the Chromium browser's rendering pipeline. This component serves as a crucial, immutable, and thread-safe contain...

14 Nov 202532min

Containing Blocks in CSS and Blink Layout

Containing Blocks in CSS and Blink Layout

The source provides a highly technical, in-depth analysis of the concept of containing blocks in CSS layout, explaining how these invisible boundaries determine the sizing and positioning of elements,...

13 Nov 202554min

Chromium Compositor Scroll and Gesture Event Handling

Chromium Compositor Scroll and Gesture Event Handling

The source text explains how Chromium handles gesture and scroll events within its input pipeline, particularly focusing on the interaction between the Blink/UI thread and the compositor thread. It de...

12 Nov 202536min

Chrome Finch Field Trial Configuration Deep Dive

Chrome Finch Field Trial Configuration Deep Dive

The source provides an extensive explanation of Chrome Finch Field Trials, which is the framework Chrome uses for running experiments and feature rollouts without requiring a full browser update. Spec...

11 Nov 202541min

Advanced Scrolling Scenarios – Fixed Elements, Sticky Positioning, and Lifecycle Coordination

Advanced Scrolling Scenarios – Fixed Elements, Sticky Positioning, and Lifecycle Coordination

The source provides an extensive technical explanation of how the Chrome rendering engine, Blink, and its Compositor implement advanced CSS scrolling features like position: fixed and position: sticky...

11 Nov 202551min

Chrome Compositor Tiling, Raster, and Scroll Optimization

Chrome Compositor Tiling, Raster, and Scroll Optimization

The source provides an extensive explanation of the Chrome Compositor's tiled rendering architecture, detailing how it achieves smooth scrolling and efficient visual updates. It outlines the process o...

11 Nov 202559min

LCD Text Rendering – Algorithm, Heuristics & Scroll Raster Impacts

LCD Text Rendering – Algorithm, Heuristics & Scroll Raster Impacts

The source text provides an extensive technical overview of LCD text rendering (subpixel antialiasing) within the Google Chrome browser's architecture, involving the Blink rendering engine and the Ski...

11 Nov 202542min

Populært innen Teknologi

lydartikler-fra-aftenposten
romkapsel
smart-forklart
rss-avskiltet
teknisk-sett
tomprat-med-gunnar-tjomlid
nasjonal-sikkerhetsmyndighet-nsm
energi-og-klima
shifter
rss-impressions-2
elektropodden
rss-alt-vi-kan
fornybaren
teknologi-og-mennesker
pedagogisk-intelligens
rss-for-alarmen-gar
rss-fjorsilkebris-podcast
hans-petter-og-co
rss-byggepodden
rss-polypod