# Google Chrome 146 - Product: Google Chrome (https://whatsnew.fyi/product/google-chrome) - Vendor: Google - Date: 2026-03-10 - Version: 146 - Original notes: https://developer.chrome.com/release-notes/146 - Permalink: https://whatsnew.fyi/product/google-chrome/releases/146 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **added** — Add scroll-position-based control of animations through CSS scroll-triggered animations, allowing declarative creation of animations that play, pause, and reset based on scroll position - **added** — Add trigger-scope property to limit the names of animation triggers declared by trigger-instantiating properties - **added** — Add meta name="text-scale" to scale root element's default font size in proportion to operating system and browser text scale settings - **added** — Add scoped custom element registry to allow multiple custom element definitions for a single tag name within a page - **added** — Populate LaunchParams.targetURL when a PWA is launched with file handling - **fixed** — Stop re-queueing LaunchParams on page reload to prevent the launchQueue from re-sending the last LaunchParams when a user reloads the page - **added** — Add ability to register a post-commit handler while invoking a precommit handler in the Navigation API - **added** — Add texture_and_sampler_let language feature to WGSL to store texture and sampler objects into let declarations - **added** — Add transient attachments functionality to WebGPU with TRANSIENT_ATTACHMENT GPUTextureUsage for render pass operations that stay in tile memory - **added** — Add WebGPU Compatibility mode as an opt-in restricted subset of the WebGPU API that can run on older graphics APIs including OpenGL and Direct3D11 Stable release date: March 10th, 2026 Unless otherwise noted, the following changes apply to Chrome 146 stable channel release for Android, ChromeOS, Linux, macOS, and Windows. ##### CSS and UI ###### Scroll-triggered animations This feature adds scroll-position-based control of animations, for example, playing, pausing, and resetting animations. A common pattern on pages across the web is to start an animation when a scroll position is reached. Developers often do this by using JavaScript to manually detect that an element is within its scroll container's viewport and to start a corresponding animation (for example, sliding that element into view). Many of these use cases rely on declaratively provided information. This feature lets you create such interactions declaratively with CSS, which lets the user agent offload this interaction to a worker thread. The API also includes JavaScript interfaces that let you extend the feature to web animations in addition to CSS animations. Tracking bug #390314945 | ChromeStatus.com entry | Spec ###### The trigger-scope property The trigger-scope property lets you limit the names of animation triggers declared by trigger-instantiating properties. Trigger-instantiating properties, for example, timeline-trigger, declare names that the animation-trigger property can reference to attach animations to triggers. However, these names are global by default (similar to anchor-name), and it is often useful to limit the visibility of the names to isolate animation-to-trigger interactions. Tracking bug #466134208 | ChromeStatus.com entry | Spec ###### meta name="text-scale" The root element's default font size scales in proportion to both the operating system's and browser's text scale setting. This lets pages that follow best practices around font-relative units (that is, use rem and em for font sizes and page elements that adapt to user text size preferences) respect the user's OS-level text scale setting. This also disables existing browser-based mechanisms (that is, full-page zoom on windows) and heuristics (that is, text autosizing on mobile). You can signal to the browser that the page is constructed in a way (that is, with rem and em) that scales well across various user-selected font size preferences. Similar to env(preferred-text-scale), which provides a way to access the text scale, this API extends this by enabling scaling using the root element's default font size and opting out of automatic text scaling. Tracking bug #430566925 | ChromeStatus.com entry | Spec ###### Scoped custom element registry This feature lets multiple custom element definitions for a single tag name exist within a page. This prevents custom element name conflicts when a web app uses libraries from multiple sources. This is achieved by allowing user code to create multiple custom element registries and associate them with tree scopes and elements that function as scoping objects. Tracking bug #40826514 | ChromeStatus.com entry | Spec ##### Capabilities ###### Populate targetURL during file handling The Launch Handler implementation now ensures LaunchParams.targetURL is populated when a PWA is launched with file handling. Before this change, the property was null when a file launch was directed to an existing window. This change ensures that the URL from the manifest action field (the same URL the document must currently load) is available to the launchQueue consumer. Tracking bug #464314997 | ChromeStatus.com entry | Spec ###### Stop re-queueing LaunchParams on reload Prevent the launchQueue from re-sending the last LaunchParams (including file handles) when a user reloads the page. Previously, a page refresh triggered the launch consumer again with the data from the original launch. This change ensures that a reload is treated as a standard navigation rather than a "re-launch," and the launchQueue won't be populated with duplicate files unless a new file launch event occurs. Tracking bug #40204185 | ChromeStatus.com _[Truncated at 4000 characters — full notes: https://developer.chrome.com/release-notes/146]_