B2: Frame Tree Navigation and Process Management
Blink28627 Marras 2025

B2: Frame Tree Navigation and Process Management

This document details the Chromium browser's Layer 2 architecture, which is responsible for coordinating the structure and navigation of complex webpages across multiple renderer processes. The core object is the FrameTree, which maintains the hierarchy of frames on the browser side, mirrored by individual FrameTreeNodes that hold persistent frame identity and state. Navigations are controlled by the Navigator, which handles incoming URL requests, determines necessary security isolation (SiteInstance), and orchestrates the loading process. Crucially, the RenderFrameHostManager is attached to each frame node, managing the complex logic of process switching, creating new RenderFrameHost instances for cross-site content, and setting up proxies to ensure secure communication between frames in separate processes. This layered infrastructure enables features like Out-of-Process iframes (OOPIFs) and multi-page architecture (MPArch), ensuring secure and reliable content management during frame creation, navigation, and cleanup.

Jaksot(392)

Mastering Chained CLs in the Chromium Workflow

Mastering Chained CLs in the Chromium Workflow

In Chromium development, chained change lists (CLs) allow engineers to decompose massive features into a stack of smaller, dependent commits for easier code review. This workflow utilizes depot_tools,...

6 Helmi 38min

Blink’s LocalFrameView: Orchestrating the Rendering Pipeline

Blink’s LocalFrameView: Orchestrating the Rendering Pipeline

The LocalFrameView class serves as the primary engine for managing a document's visual viewport and orchestrating its rendering pipeline within the Blink engine. It functions as a critical bridge betw...

5 Helmi 40min

Chromium View Transitions: A Complete Implementation Deep-Dive

Chromium View Transitions: A Complete Implementation Deep-Dive

This technical documentation explains how Chromium implements View Transitions by coordinating four distinct architectural layers: Blink, the cc compositor, the Viz service, and CSS animations. It det...

5 Helmi 32min

CSS Scroll-Margin: Specification and Implementation in Blink

CSS Scroll-Margin: Specification and Implementation in Blink

The provided text explains the CSS scroll-margin property, a tool within the Scroll Snap module that establishes additional space around an element when it is scrolled into view. While it functions si...

5 Helmi 31min

Modern CSS Carousels: Engineering Performance and Accessibility

Modern CSS Carousels: Engineering Performance and Accessibility

This text explores the technical evolution of CSS carousels, which allow developers to create interactive slideshows using web standards rather than heavy scripting. It details various implementation ...

5 Helmi 33min

CSS Media Queries: Specification and Chromium Implementation Deep Dive

CSS Media Queries: Specification and Chromium Implementation Deep Dive

This document provides a technical deep dive into the evolution and implementation of CSS media queries, tracing their progress from the initial Level 3 standard to the emerging Level 5 draft. It expl...

5 Helmi 36min

Technical Analysis of CSS Nesting and Cascade Layers

Technical Analysis of CSS Nesting and Cascade Layers

The provided text details the technical evolution and implementation of native CSS Nesting, a feature that allows developers to write hierarchical styles directly in the browser. It tracks the specifi...

5 Helmi 32min

Mastering the Third Dimension: A Guide to CSS Perspective

Mastering the Third Dimension: A Guide to CSS Perspective

The provided text explains the CSS perspective property, a technical tool used to simulate three-dimensional depth by defining the distance between a viewer and the screen. It distinguishes between ap...

5 Helmi 31min