Chromium Digest: 2026-03-14
Overview
This digest covers 69 commits from the Chromium repository, focusing on major breaking changes, new features, and significant bug fixes. Key updates include breaking API changes in the Search Engines and Android UI components, advancements in CSS rendering for Grid and transitions, and continued development of AI-related features in the Omnibox and Page Content Annotation services. Internal refactoring efforts have also improved the modularity of the webapps and Glic build targets.
API Changes & Refactoring
-
⚠️ BREAKING
BREAKING: Renames public methods in the
TemplateURLclass within thecomponents/search_enginescomponent.RequiresDeletionConfirmationis nowRequiresRemovalConfirmationin both C++ and Java, andShouldConfirmDeletionis nowShouldConfirmRemovalin C++. Embedders using these methods must update their code. (ea9f934) -
⚠️ BREAKING
BREAKING: The
ActionConfirmationDialog.show()method on Android has been refactored to use a builder pattern. Instead of accepting a long list of parameters, it now takes a singleConfirmationDialogParamsobject. This is a signature change to a public UI component that will break existing callers. (1e426a2) -
The internal API for Device-Bound Session Credentials (DBSC) has been simplified. The
priorityparameter was removed fromSessionStore::RestoreSessionBindingKeyas part of a larger refactor moving garbage collection logic into theSessionStore. (01c58d5) -
The
chrome::CanSavePage()function has been updated to operate over theBrowserWindowInterfaceinstead of directly usingbrowser_finder.hAPIs. This is part of an ongoing effort to reduce dependencies from//chrome/browser/sharing_hubto//chrome/browser/ui. (3e8881c) -
The
WebUIBubbleDialogViewno longer observes widget closing events directly, simplifying its lifecycle management. This is an internal UI refactoring with no impact on embedders. (d18477d)
Features & Services
- The Page Content Annotations API has been extended to allow consumers to observe results from the on-device category classifier. This is accompanied by a change to validate that the classifier model is only used with the correct embedding model version. (adbe66e) (faa0230)
- On Android, the extensions menu has been updated with native C++ and JNI plumbing to support optional sections, such as reload prompts or host access requests. This lays the groundwork for future UI changes. (7169aed)
- A logical implementation of Document Isolation Policy (DIP) has been added for environments without default SiteInstanceGroups, such as Android WebView. This enables cross-origin isolated capabilities as a short-term solution until SiteInstanceGroups are fully available. (1175447)
- FedCM navigation interception is now permitted for embedder login requests, even if the broader interception feature flag is not enabled. Additionally, the ambient FedCM UI will now use the IdP-claimed login state for accounts. (e1dfa92) (222fae6)
-
Client-side code has been added to support a new Optimization Guide feature,
MODEL_EXECUTION_FEATURE_ANNOTATION_REDUCER_QUERY_CLASSIFIER. (243bb0b)
UI & UX
- A confirmation dialog is now shown on Android before removing a search engine. (b7ada3f) (0694ab8)
- The Android Omnibox (AIM) continues to see development, with changes to build the AIM URL from input state, control new tool/model buttons, and show the current model selection. (d4aa1f2) (cef8547) (f49ad1c) (4cb3667) (44dda5e)
- In Vertical Tabs, the close button is now hidden on inactive tabs until hovered. Additionally, keyboard shortcuts (Cmd/Ctrl+Shift+Arrow) to move tabs to the start/end of the list have been re-enabled. (d8e69d7) (0492460)
- On the New Tab Page, a toast notification has been added to allow users to undo the disabling of action chips. (773ba66) (6409484)
Blink & Rendering
- A behavioral change has been made to CSS Grid layout to align with a CSSWG resolution. Row gaps will now be suppressed across fragmentation breaks, even if a spanning item is present. (bdeb9e7)
-
Bugs in discrete CSS transitions (
CSSTransitionDiscrete) have been fixed, improving behavior for unregistered custom properties and transitions starting from an unset state. (95f88e4) - Selection handle visibility checks have been improved by using the full selection edge for calculations in both Blink and the compositor, which should lead to more reliable handle rendering. (ceeb95d)
Build & Infrastructure
-
Significant refactoring of the
chrome/browser/webappsbuild targets has been completed to create more modular, platform-specific targets and clearer dependency boundaries. (c26595f) (f68a6c0) -
A new ESLint check has been added to the WebUI build process to disallow the use of the legacy
chrome.sendAPI in new Desktop WebUI, enforcing the move to Mojo. (d9c984b) -
The GlicNudge classes have been moved to
//chrome/browser/glic/browser_uito better separate nudge logic from tab strip UI, and their build targets have been refactored. (ee1115b) -
The extensions schema compiler now supports the
nodocattribute on enum values, allowing specific values to be excluded from generated documentation. (f698dba)
Bug Fixes
-
Fixed a memory leak and a potential use-after-free in the Glic
HostManagerby ensuring tab-only hosts are correctly removed when their WebUI handler is destroyed. (811ffd3) -
Corrected a
bad_variant_accesscrash in the PDF Ink signature feature's undo/redo model caused by an incorrect variable reference. (54539cd) - Fixed context lost checks for WebGL query and sync objects. (f7d4fef)
- Disabled the Enhanced Safe Browsing (ESB) migration prompt when Safe Browsing preferences are managed by enterprise policy. (bfa6fc4)
All Commits (110)
- a4e73f6 Roll Chrome Mac PGO Profile
- f15b207 Roll Chrome Win64 PGO Profile
- d8d6fca Roll Chrome Mac Arm PGO Profile
- ea9f934 Site Search: Rename function to keep consistency
- b7ada3f Site Search: Add confirm remove logic to mediators
- 0694ab8 Site Search: Add confirm dialog for search engine removal
- 3902596 Roll Chrome Win32 PGO Profile
- b0586fb [Frameworks roll] Roll to 883523733 piper revision
- 3e8881c Operate over BrowserWindowInterface in chrome::CanSavePage()
- 7c89d33 Roll Chrome Win ARM64 PGO Profile
- 01c58d5 [dbsc] Move garbage collection to SessionStore
- bdba381 Roll Chrome Android Desktop x64 PGO Profile
- 387cc31 Roll Chrome Mac Arm PGO Profile
- 5edcdcc Roll Chrome Win32 PGO Profile
- a32d298 Roll Chrome Win64 PGO Profile
- adbe66e [PageContentAnnotations] Extend API for Category Classifier
- 9e90283 Roll Chrome Win32 PGO Profile
- 7a0fcce Roll Chrome Mac Arm PGO Profile
- bc234d2 Import wpt@378adb7ec1f9536682866e02c70082b1b5cab74a
- 95f88e4 CSSTransitionDiscrete: Fix retarget and unset-start for unregistered custom properties
- 584461e update git url for third_party/WTL
- 811ffd3 [glic] Fix tab Host memory leak and UAF on WebUI handler removal
- 2a38f4e [PromptAPI] call.arguments_json should not be nullptr
- 071b762 Add Gemini Thread and AI Thread feature flags to chrome://flags
- 243bb0b Adds client side code to on board new MES feature MODEL_EXECUTION_FEATURE_ANNOTATION_REDUCER_QUERY_CLASSIFIER
- 9751bae Roll Chrome Mac PGO Profile
- 592f4f6 [Contextual tasks] Disable animation on toolbar close button
- 2db80aa Roll Chrome Mac Arm PGO Profile
- 1e426a2 [Android] Refactor ActionConfirmationDialog to use a parameters object
- 7169aed [Desktop Android] Add OptionalSectionType and native plumbing for menu
- 3f02624 Updating trunk VERSION from 7734.0 to 7735.0
- 33f4cdb Roll WebRTC from 2ee2982cb31b to 2d45ac97748f (1 revision)
- c26595f [webapps] Split subdirectory BUILD targets and rebase boundaries
- 11c6cd1 Roll Chrome Android ARM64 Orderfile from roZluvkdM8DSLC0Th... to ehw0zBRPeNxP4CcRy...
- 3ad31ba [PDF Ink Signatures] Simplify stroke ID recycling
- dde94b8 Roll ios_internal from 3b3b19ff6bd7 to 9efb3233a721
- 3e80955 [Setup list] Update OWNERS for Setup List components
- 26cb04f Roll Chrome Win32 PGO Profile
- 75d9ae9 Update `TestExpectations` with bugs filed for crrev.com/c/7666381
- f68a6c0 [webapps] Modularize chrome/browser/webapps and installable targets
- 7b3ad06 Roll Chrome Linux PGO Profile
- 2a7eb55 Roll PDFium from ab5a98e4b1d6 to 8947a4dd8fc9 (8 revisions)
- d4aa1f2 [AIM] Dismiss popup when selecting a model.
- cef8547 [AIM] Popup header text now tracks branded color scheme (incog).
- 54539cd [PDF Ink Signatures] Fix command ref in PdfInkUndoRedoModel::StartImpl()
- f49ad1c [AIM] Show current model selection.
- 396a915 [PDF Ink Signatures] Use IdType return type in StartAdd()/StartRemove()
- 4cb3667 [AIM] Control new tool/model buttons with InputState.
- f2e85a3 [PDF Ink Signatures] Move IdType and IdTypeComparator
- 3df2023 Add structs which mirror the new Corp IqStanza messages
- 44dda5e [AIM] Build aim url from input state.
- 4e25af5 Roll Chrome Win ARM64 PGO Profile
- d8e69d7 [Vertical Tabs] Hide close button except on active tab on hover
- 773ba66 [ntp-next] Add a toast for undoing the action chips disablement
- 677e951 Update Gemini Personal Context URL.
- aea1a74 Rebaseline ancient -webkit-box-reflect tests
- 383d83e [MIR] Validate taskId against AppTasks in #isRestorableInstance
- 6409484 [ntp-next] Refactor/rename methods
- faa0230 Check embedder version for edu classifier
- db71d57 Roll Chrome Android Desktop x64 PGO Profile
- 4a7b00e Roll Chrome Win64 PGO Profile
- d9c984b WebUI: Add ESLint check to disallow use of chrome.send in Desktop.
- bdeb9e7 [Gap Decorations]: Suppress row gaps even when there is a spanning item
- c897b43 Roll V8 from a6589c1ba30d to 732df51836c6 (4 revisions)
- f7d4fef Fix context lost checks for query and sync objects.
- d18477d Remove WidgetObserver::OnWidgetClosing from WebUIBubbleDialogView
- ceeb95d selection: Use full-edge visibility in blink and cc
- e66e686 [Masonry] Make ComputeGridLanesGeometry return GridLayoutSubtree
- e4a9f48 Replace UNSAFE_TODO in PushPullFIFO with safe operations
- 74d49c2 Roll Chrome Mac Arm PGO Profile
- 9034dc3 Roll eigen from 2a2456c873d6 to 9ae0e0f195e0 (13 revisions)
- f8bc9ad [Extensions Cleanup] Simple JS updates in downloads API
- 928ae0c [Extensions Cleanup] Simple JS updates in api_test/fileapi
- 7ff5759 Import wpt@e1d141414f248bfe6653ca049bf70db7146ecf8d
- 261f692 [Extensions Cleanup] Simple JS updates in chrome.dom API
- 4ef8723 Roll WebRTC from cdc36b7fbf44 to 2ee2982cb31b (1 revision)
- f49feb6 Added flag ResetSuggestionsScroll for scrolling suggestions dropdown to top during layout
- a57bab5 Add ganesh to `third_party/WTL/OWNERS`
- 5614bae [Extensions Cleanup] Simple JS updates in font_settings API
- c67313e [Extensions Cleanup] Simple JS updates in alarms api
- 839a387 Roll BoringSSL from de8c7af5e7c4 to d61cb8f3df75 (1 revision)
- 0492460 [Vertical Tabs] Re-Enabling MoveTabFirst / MoveTabLast Functionality
- 4642786 Roll compiler-rt from c8ee65668814 to ea94b34eeb63 (1 revision)
- 9455cd9 Extend expiration for a couple of Navigation.Guest histograms.
- e9738c6 Make Cast 'info' icon have link role for screen readers
- 696a3f5 Remove single-instance tests in glic_tab_indicator_helper_interactive_uitest
- b6c13e7 Roll Chrome Win32 PGO Profile
- 01a06e8 [Extensions Cleanup] Simple JS updates: api_test/content_security_policy
- b091a6d [Extensions Cleanup] Simple JS updates in events API tests
- bfa6fc4 [Bundled Security Settings] Disabled ESB Migration When a Policy is Applied
- 1175447 Implement logical DIP without default SiteInstanceGroup
- 05b9e19 [Extensions Cleanup] Simple JS updates in content_settings API
- f38ba5e [PDF Ink Signatures] Extend pdf-ink2 flag
- 02f53be Roll Chrome Android ARM64 Orderfile from IVDFrVcgQ9NcQsWR8... to roZluvkdM8DSLC0Th...
- e1dfa92 [FedCM] Allow interception when there is an embedder login request
- be2f2e2 Roll src-internal from c07fe7ee9237 to e3ecf8f24476 (1 revision)
- 222fae6 [fedcm] Use the IdP claimed login state for the ambient UI
- 6a1bfcf Roll clank/internal/apps from 47a222b5a082 to 2d142d6b0852 (1 revision)
- 3be785e [CUJService] Use private member instead of unique_ptr per styleguide
- b1feb72 [Extensions Cleanup] Simple JS updates in extension_action API
- ee1115b Move GlicNudge classes to //chrome/browser/glic/browser_ui
- 74f94b0 Fix string splitting in SVGFilterElementSimTest.FilterInvalidated...
- 7671675 [projects] Fix panel close button
- b541a4a Roll ANGLE from 934bca7d3ecb to 455477231ca6 (2 revisions)
- bd247c2 [MultiColumn][Settings Search] Allow for non searchable providers
- f698dba [Extensions] Support nodoc on enum values for API schemas
- af949c0 Roll vulkan-deps from c62cc268373c to e50fc8e9c4a5 (1 revision)
- 92399d6 Add tsconfig for language servers for glic
- b4f6d75 Move PageInfoPermissionContentView bottom margin to FlexLayout's InteriorMargin.
- 6fb43a7 [Extensions Cleanup] Simple JS updates in api_test/extension_module