Chromium Main Console

24 min read Original article ↗

Roll Chrome Mac Arm PGO Profile

Roll Chrome Mac Arm PGO profile from chrome-mac-arm-main-1785880779-2bab148a2721ccecec9d08298d2dc7558b40ee9b-779a1a2770a1eab25ae024d66412362c9ca2d0e9.profdata to chrome-mac-arm-main-1785887995-f8a660ec2549d87bf8e1586aa6603618246fda2b-57bfe2e85a94de2e9fef091a945029c108094be1.profdata

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/pgo-mac-arm-chromium
Please CC chrome-brapp-engprod@google.com,pgo-profile-sheriffs@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.chrome.try:mac-chrome
Tbr: pgo-profile-sheriffs@google.com
Merge-Approval-Bypass: Chrome autoroller
Change-Id: Ie354c3042866eb6de45605ca7bbf795674ff93f1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8196372
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673836}

Reland "chrome: Add inputs for grit actions"

This reverts commit e15aea9be4ff861c41d7655826c6818217192790.

Reason for revert: Updated build/private_code_test/private_code_test.gni

Original change's description:
> Revert "chrome: Add inputs for grit actions"
>
> This reverts commit 5ad575770205dc5e19788e48cfe532672c003044.
>
> Reason for revert: Caused linux-chrome bot to fail. tested locally and passed without this commit.
>
> Failure Link: https://ci.chromium.org/ui/p/chrome/builders/ci/linux-chrome/108233/overview
>
> Original change's description:
> > chrome: Add inputs for grit actions
> >
> > Goal of this CL is to make the grit action runs on remote worker so that
> > we can reduce local resource usage and share build cache between
> > bots/developers. But we need to tell which files are read by grit
> > actions to siso from build system layer.
> >
> > Although we need to specify inputs both in grit and BUILD.gn, I'll add a
> > check to detect which files are missed or overspecified in grit.py and
> > we can now rely on AI agent to fix them easily.
> >
> > Extracted from https://crrev.com/c/8085243.
> >
> > Bug: 535044365
> > Change-Id: Ibf18c9074906c639ea435e4b698cbccd72c03c76
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8179964
> > Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
> > Reviewed-by: Nico Weber <thakis@chromium.org>
> > Commit-Queue: Nico Weber <thakis@chromium.org>
> > Cr-Commit-Position: refs/heads/main@{#1671804}
>
> Bug: 535044365
> Change-Id: Id793947a58de0ae4cd8fd1b8dc4b6b75fa8e4fce
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8179924
> Auto-Submit: Syed AbuTalib <lowkey@google.com>
> Commit-Queue: Syed AbuTalib <lowkey@google.com>
> Reviewed-by: Siddhartha S <ssid@chromium.org>
> Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
> Owners-Override: Syed AbuTalib <lowkey@google.com>
> Cr-Commit-Position: refs/heads/main@{#1671992}

Bug: 535044365
Cq-Include-Trybots: luci.chrome.try:linux-chrome
Change-Id: Ic42ad754954bcee7d156a74cd745a505ae487d11
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191496
Reviewed-by: Siddhartha S <ssid@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673835}

[WebAudio] Update realtime_analyser for configurable render quantum

Previously the ring buffer in realtime_analyser assumed the frames to
process would evently divide the buffer size. Now that we have
configurable render quantums, implement a more robust ring buffer by
splitting into two writes when necessary.

Also re-enable the test.

Bug: 502309240
Change-Id: Id7a3d2151ef8416e95c2a389b4fd5a57588723c7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8179094
Commit-Queue: Michael Wilson <mjwilson@chromium.org>
Reviewed-by: Mahesh Kannan <kmaheshb@google.com>
Cr-Commit-Position: refs/heads/main@{#1673834}

Revert "[glic] Fix Android ConcurrentVisibility test failure in bisection"

This reverts commit d6d1d6b2d86e750cb118788dd7d6147dadb34771.

Reason for revert: In order to revert https://crrev.com/c/8185659.

Failure Link:
https://ci.chromium.org/ui/p/chromium/builders/ci/linux-wayland-mutter-rel-tests/25989/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/linux-wayland-weston-rel-tests/17749/overview

Original change's description:
> [glic] Fix Android ConcurrentVisibility test failure in bisection
>
> LUCI's test bisection runner runs disabled tests to help pin down
> failures. This means tests disabled with the "DISABLED_" prefix (like
> ConcurrentVisibility on Android) still run during bisection. Since
> Android doesn't support detaching, this test fails when bisection
> executes it.
>
> To fix this, this CL compiles out the ConcurrentVisibility test
> completely on Android using preprocessor guards (#if
> !BUILDFLAG(IS_ANDROID)).
>
> To keep multi-window concurrent visibility covered across platforms,
> this change adds a new ConcurrentVisibilityMultiWindow test. Since
> creating browser windows is different on Android (it's asynchronous)
> compared to desktop, this CL also adds a helper called
> CreateAdditionalBrowserWindow to GlicBrowserTestMixin to clean up the
> tests and make window creation consistent.
>
> Bug: 530661117
> Change-Id: Ic61169b4658cd5ca173aff587ea112716a6a6964
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8032669
> Commit-Queue: Bryant Chandler <bryantchandler@chromium.org>
> Reviewed-by: Dan H <harringtond@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1673499}

Bug: 530661117
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Change-Id: I899317eed85e7d01fc828f4a7ea40bac09dbbfb9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8198284
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuki Shiino <yukishiino@chromium.org>
Commit-Queue: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Yuki Shiino <yukishiino@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673833}

extensions: Add inputs for grit actions

Goal of this CL is to make the grit action runs on remote worker so that
we can reduce local resource usage and share build cache between
bots/developers. But we need to tell which files are read by grit
actions to siso from build system layer.

Although we need to specify inputs both in grit and BUILD.gn, I'll add a
check to detect which files are missed or overspecified in grit.py and
we can now rely on AI agent to fix them easily.

Extracted from https://crrev.com/c/8085243.

Bug: 535044365
Change-Id: Iae4b703bfbab416b6a881f2347aaf80bdcfc2732
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8181089
Reviewed-by: Andrea Orru <andreaorru@chromium.org>
Auto-Submit: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Devlin Cronin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673832}

crash@system.gserviceaccount.com

Revert non-fatal CHECK back to DCHECK in OverscrollController

A recent bulk change converted a DCHECK to a non-fatal CHECK macro
which triggers DumpWithoutCrashing() under certain conditions when a
gesture scroll update event is received but IsGestureEventFromTouchpad(event)
returns false. Defer the conversion until we are confident the condition is safe.

**This fix was generated by the Crash Autofix pipeline for the crash http://crash/430d5335b0400000. Please see go/crash-autofix for more details.**

Bug: 542429522
Change-Id: If92afb094bee1aab44437a42bd7c93bc3278758b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191956
Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
Commit-Queue: Yuki Shiino <yukishiino@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673831}

Set EnableHighChannelLayouts to enabled by default

Now that this flag is on stable without any issues, it is time to set it
enabled by default.

Bug: 474107074
Change-Id: If05077e39a7e2c7a113ce312a74e1fdce1494c03
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191539
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Commit-Queue: Syed AbuTalib <lowkey@google.com>
Cr-Commit-Position: refs/heads/main@{#1673830}

Revert "[glic] Add SimulateUserInputSubmitted helper to GlicBrowserTest"

This reverts commit 87707644ac8fa98480c7b9e4fe151318e4d6764b.

Reason for revert: In order to revert https://crrev.com/c/8185659.

Failure Link:
https://ci.chromium.org/ui/p/chromium/builders/ci/linux-wayland-mutter-rel-tests/25989/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/linux-wayland-weston-rel-tests/17749/overview

Original change's description:
> [glic] Add SimulateUserInputSubmitted helper to GlicBrowserTest
>
> Introduce SimulateUserInputSubmitted in GlicBrowserTest to allow tests
> to trigger the full browser-side OnUserInputSubmitted pipeline via
> OnUserInputSubmittedForTesting. Update selection_overlay_browsertest to
> use this new helper.
>
> Bug: b:537848933
> Change-Id: I3a364a6c1b61c9ee578bcf6901a0de426a6a6964
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8194367
> Reviewed-by: Dan H <harringtond@chromium.org>
> Commit-Queue: Bryant Chandler <bryantchandler@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1673514}

Bug: b:537848933
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Change-Id: Ibcdf4fac45ea38b4979f74dd3c438d374b247b2f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197745
Auto-Submit: Yuki Shiino <yukishiino@chromium.org>
Commit-Queue: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Yuki Shiino <yukishiino@chromium.org>
Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673829}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Perfetto from c0f38c2b9bed to 5b36564bf4fa (1 revision)

https://chromium.googlesource.com/external/github.com/google/perfetto.git/+log/c0f38c2b9bed..5b36564bf4fa

2026-08-04 runpinglai@google.com tp: convert continuous_estimates from TABLE to VIEW for UI startup speed (#6994)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/perfetto-chromium-autoroll
Please CC amanvr@google.com,perfetto-bugs@google.com,primiano@chromium.org on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.chromium.try:linux-perfetto-rel
Bug: chromium:542664776
Tbr: amanvr@google.com,perfetto-bugs@google.com
Test: Test: diff test and UI test
Change-Id: I4031330e63a8b366e1d6281d1b6cfe43af96e61e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8192819
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673828}

Add IAMF fuzzing to pipeline integration fuzzer

Add fuzzing for IAMF MP4 files via MSE.

Bug: 535279329
Change-Id: Ia537c7fd2f0fa4a98ccadfb7228f4273571fa3d3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8196227
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Commit-Queue: Syed AbuTalib <lowkey@google.com>
Cr-Commit-Position: refs/heads/main@{#1673827}

Extend Bookmarks.BookmarkBar.PrerenderNavigationToActivation expiry date

As the histogram is still needed to evaluate the prerendering
performance impact, the expiry date of the histogram is extended.

Bug: 531725533
Change-Id: I745ef82cfaac6b4ee830ef84e455dbe3c257e939
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8189558
Reviewed-by: Emily Shack <emshack@chromium.org>
Commit-Queue: Huanpo Lin <robertlin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673826}

[browser_actuator] Reconnect stream connections on new session registrations

Adds an Observer hook to TransportSessionRegistry to notify when
new sessions are registered. TransportChannelImpl observes session registrations and, if its stream connection is active, disconnects
and reconnects so the updated set of watched sessions is included
in the WatchSessionsRequest body.

Also updates BuildWatchSessionsRequestBody to include all active sessions in the registry even if no downstream sequence numbers
have been received yet.

Bug: b:537868475
Change-Id: I99cbcaa0abb4aca5ba085b3b971d1ca7d607522a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8165489
Reviewed-by: Anusha Muley <anushamuley@google.com>
Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
Commit-Queue: Andy Li <andylky@google.com>
Cr-Commit-Position: refs/heads/main@{#1673825}

[BNPL-Tabs][Clank] Log user action when dismissing tabbed home screen

Introduced the Autofill.TouchToFill.Bnpl.UserAction.TabbedHomeScreen
.Dismissed metric to record when a user dismisses the Touch-to-Fill
bottom sheet while on the tabbed home screen.

Design: go/clank-pay-now-pay-later-tabs

Bug: 527629659, 526718267
Change-Id: Id6dee2f11a567c9e2c4f15d97bfd60a88232cc6a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8163224
Reviewed-by: Darwin Yang <darwinyang@chromium.org>
Reviewed-by: Vinny Persky <vinnypersky@google.com>
Reviewed-by: Timofey Chudakov <tchudakov@google.com>
Commit-Queue: Viplav Kadam <viplavkadam@google.com>
Cr-Commit-Position: refs/heads/main@{#1673824}

[Hub] Update Close Button tint in HubToolbarView

Update the Close Button in HubToolbarView to update its color tint when
the toolbar color scheme changes. Previously, only the Menu Button tint
was updated, causing the Close Button to have incorrect contrast and
appear missing in certain color schemes, such as Incognito.

Preview: https://screenshot-v2.corp.google.com/image/2aoi3tpjrpv9o.png

Bug: 542023520
Change-Id: I03ff995850d116bae955ff06d626821746784094
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197386
Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org>
Auto-Submit: Gazal Agarwal <agazal@google.com>
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673823}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Perfetto Trace Processor Win from ee819b5f2cfa to c0f38c2b9bed

https://chromium.googlesource.com/external/github.com/google/perfetto.git/+log/ee819b5f2cfa..c0f38c2b9bed

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/perfetto-trace-processor-win-chromium
Please CC chrometto-team@google.com,perfetto-bugs@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: perfetto-bugs@google.com
Change-Id: I443309e7a59c5afe644d18dde3272e6d7141c130
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197186
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673822}

Fix UIA Navigate First/LastChild for hidden WebViews

A live WebView can be counted as an accessibility child while its hidden
WebContents has no native provider. Navigate then dereferences a null
child when requesting the first or last child.

Fall back to the WebView's Views provider when web content has no
provider, and make UIA first/last-child navigation tolerate null child
lookups.

Bug: 542677298
Change-Id: Ibd0a526549c6a7c69d8501132f23f52f29484ffc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191196
Reviewed-by: David Yeung <dayeung@chromium.org>
Commit-Queue: Jacques Newman <janewman@microsoft.com>
Reviewed-by: Benjamin Beaudry <benjamin.beaudry@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1673821}

views: Lower PenId statics prewarm priority

PenIdHandler posts speculative WinRT activation to the thread pool to
avoid startup jank, but the task currently defaults to USER_BLOCKING.
Run the prewarm at USER_VISIBLE so startup-critical USER_BLOCKING work
takes precedence while early pen input can still benefit from the
prewarm. If pen input needs the statics first, the existing GetInstance()
path still initializes them synchronously.

Bug: None
Change-Id: I51700d7b1140538f1553888ba10af14836c0d233
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8181082
Reviewed-by: David Bienvenu <davidbienvenu@chromium.org>
Reviewed-by: Chris Davis <chrdavis@microsoft.com>
Commit-Queue: Adarsh Yhenishetty <t-adarshyh@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1673820}

Remove horo@ from storage/OWNERS file

horo@ was added to storage-related OWNERS files in crrev.com/c/6158152
(January 2025) as part of the Storage team. Since horo@ left the Storage
team in July 2026, this CL removes horo@ from storage/OWNERS.

(I forgot to remove horo@ from storage/OWNERS in
https://crrev.com/c/8104855 .)

Change-Id: Ibb06cdc330ffb665e43c47814048718223ddf1e5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8192056
Commit-Queue: Tsuyoshi Horo <horo@chromium.org>
Reviewed-by: Ming-Ying Chung <mych@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673819}

policy: Cache component cloud policy at USER_VISIBLE priority

CloudPolicyManager::CreateComponentCloudPolicyService() creates the
backend SequencedTaskRunner shared by ComponentCloudPolicyService and
its ResourceCache via CreateSequencedTaskRunner({base::MayBlock()}).
Task traits with no explicit priority default to USER_BLOCKING (see
base/task/task_traits.h), so this component-policy cache I/O currently
runs at the highest task priority.

This backend performs blocking file I/O for the component policy cache
and nothing on the UI thread blocks on it, so it need not run at
USER_BLOCKING. Set it to USER_VISIBLE so it no longer preempts
user-blocking work while keeping enterprise policy caching responsive;
BEST_EFFORT is avoided here since it could be starved and delay policy
application.

Bug: None
Change-Id: I30d46b2da97127c8353cfa9e41b5bc800c208bbe
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8034224
Reviewed-by: Anqing Zhao <anqing@chromium.org>
Commit-Queue: Adarsh Yhenishetty <t-adarshyh@microsoft.com>
Reviewed-by: Chris Davis <chrdavis@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1673818}

content: Coalesce privileged WebContents into a shared process

Privileged content (see //chrome's PrivilegedWebContents) already
requires a dedicated process. Make privileged SiteInfos also use the
process-per-site model so that multiple privileged WebContents of the
same feature share a single renderer process across windows, instead of
each spawning its own. Distinct features carry distinct feature ids in
their SiteInfo, so different features still land in separate processes,
and ordinary content never joins a privileged process.

This is done in SiteInfo::ShouldUseProcessPerSite (beside the existing
error-page short-circuit), keeping the privileged concept inside
//content rather than routing it through the embedder.

Browsertest: two privileged WebContents of the same feature share a
process; an ordinary WebContents at the same URL does not.

Bug: 539909218
Change-Id: I9c084dd87e006963ef5c5119dd8d3f3314a02306
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8184157
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673817}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Chrome Android ARM64 Orderfile from 7aTYMjp47p7dVcbT4... to rRiQzNcyvp4iO2vrb...

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/orderfile-android-arm64-chromium
Please CC clank-build@google.com,clank-library-failures@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: clank-library-failures@google.com
Merge-Approval-Bypass: Chrome autoroller
Change-Id: Ia8b6b1bc7be6df46203e0eab54744a462c27e5b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191187
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673816}

content: Skip the service worker for privileged WebContents navigations

A privileged WebContents (see //chrome's PrivilegedWebContents) created
with `disallow_service_worker_control` must never have its documents
controlled by a service worker. Clamp skip_service_worker on for the
main resource of every navigation it hosts, in
NavigationRequest::OnStartChecksComplete, so the service worker is never
consulted -- covering both browser- and renderer-initiated navigations
and all frame trees (subframes, prerender, fenced).

Because navigation_request.cc (//content/browser/renderer_host) cannot
reach the WebContents' params directly, the opt-out bit is surfaced
through a new FrameTree::Delegate method
(GetPrivilegedContentsDisallowsServiceWorkerControl), mirroring the
existing GetPrivilegedContentsFeatureId seam.

This is defense in depth alongside the per-client service-worker
ineligibility bit (a separate CL): it prevents controller assignment at
navigation time regardless of any existing registration.

Browsertest: with a service worker active for the origin, an ordinary
tab in scope is controlled, while a privileged WebContents that
disallows service worker control commits an uncontrolled document.

Bug: 539909218
Change-Id: I6c07196aa789067424941c820fb5c408381753cb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8186051
Reviewed-by: Alex Moshchuk <alexmos@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673815}

[NTP] Fix composebox button focus ring clipping and alignment

In <ntp-composebox>, when controls inside #carouselContainer (such as
<cr-composebox-submit> or the +/tab entrypoint button) are focused,
their 2px focus outline hits composebox's overflow: hidden bottom border
and gets clipped. Previously, increasing bottom margin on
<cr-composebox-submit> (margin-block: 12px 4px) prevented clipping on
the submit button, but caused it to sit 2px higher than siblings in
carouselContainer (align-items: flex-end), breaking bottom alignment
with tool chips and the +/tab entrypoint button. This CL fixes focus
ring clipping and button alignment without impacting zero-state height
or zero-state button alignment:

Defines semantic design tokens
(--ntp-composebox-carousel-padding-block-end,
--ntp-composebox-carousel-inner-margin-block-end, and
--ntp-composebox-tool-chip-padding-block-end) in :host of
ntp_composebox.css using CSS logical properties. Sets padding-block-end:
2px on carouselContainer scoped to expanded states
(:host([show-file-carousel]) and :host([submit-enabled])) to provide
universal clearance against overflow: hidden clipping and align the +
button's left margin with the Tool Chip button (16px total).

Restores <cr-composebox-submit> to margin-block: 12px 2px (2px bottom
margin) and sets margin-block-end: 2px on .carousel-container-inner so
all controls in #carouselContainer share the same baseline.

Overrides padding-block-end: 0px on toolChipsContainer so tool chips are
vertically centered and bottom-aligned with the submit button.

Adds regression tests to the NTP composebox invariant checks suite
('tool chip is bottom aligned with submit button when tool mode is
active' and '+ button is bottom aligned with submit button with tab
context') in app_test.ts.

Screenshot before the fix:
https://screenshot-v2.corp.google.com/10o3qvuibnvn0

Screenshot w/ the fix:
https://screenshot-v2.corp.google.com/7n4iub93at0u8

Tool chip and submit button are bottom aligned:
https://screenshot-v2.corp.google.com/2glm27j2q74k8

+ menu button and submit button are bottom aligned: https://screenshot-v2.corp.google.com/5v4c1ep0s2pdo

Fixed: b:542648390, b:524243796
Change-Id: Id5ee12aebba3d1df9498be5879ea456713a81de0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8196049
Reviewed-by: Dhruv Kathpalia <dhruvkathpalia@google.com>
Reviewed-by: Sho Mizoe <shomizoe@google.com>
Commit-Queue: Bofeng Chen <bofengchen@google.com>
Cr-Commit-Position: refs/heads/main@{#1673814}

[CodeHealth] Spanify VideoCaptureDevice (Apple AVFoundation)

Spanify VideoCaptureDeviceApple and AVFoundation frame receiver
implementations to pass base::span<const uint8_t> to
VideoCaptureDevice::Client::OnIncomingCapturedData.

R=tguilbert@chromium.org

TAG=agy

Bug: 542295549
Change-Id: I783432787cf175a34b091a2cdfbb5261310b5f65
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8193771
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Commit-Queue: Alexander Cooper <alcooper@chromium.org>
Auto-Submit: Alexander Cooper <alcooper@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673813}

glic: Add testAllTestsAreRegistered to attempt OTP filling test

Change-Id: I105aba15485ebc531125c8157ec7543a6a6a6964
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197206
Reviewed-by: Nick Birnie <birnie@google.com>
Commit-Queue: Dan H <harringtond@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673812}

[updater] Prevent uninstall.cmd race condition during updater recovery

This change adds the `--skip-uninstall-script` command-line switch,
passed by `AppRecover::ReinstallUpdater()` when launching
`uninstall_command`. When present, `UninstallImpl()` skips launching the
asynchronous `uninstall.cmd` script.

Skipping `uninstall.cmd` during recovery is safe because: 1. All system
state cleanup (stopping/deleting services, unregistering
COM interfaces, removing registry keys, and deleting scheduled tasks)
is completed synchronously inside `UninstallImpl()` prior to
`uninstall.cmd`.
2. `uninstall.cmd`'s sole responsibility is executing `rmdir` on disk
after `updater.exe` exits (required for permanent uninstallation
because Windows locks running binaries).
3. During recovery, `setup_path --install` immediately re-populates the
installation directory with fresh updater binaries, overwriting
existing payload files. Therefore, purging the folder on disk is both
redundant and harmful.

Fixed: 527023419
Change-Id: Ib25a53aadd78baae7d1d3a98bfa0962d71325426
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8192254
Reviewed-by: Sorin Jianu <sorin@chromium.org>
Commit-Queue: S Ganesh <ganesh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673811}

[Glic] Set accessible title on floating Glic window and remove TODO

Set accessible title on glic_delegate_ using IDS_GLIC_WINDOW_TITLE
in GlicFloatingUi::CreateAndSetupWidget, and remove the TODO comment.

Bug: none
Change-Id: Ifb975a7e6a586f26ae319f2182da687898cc6e98
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8193675
Commit-Queue: Ian Wells <iwells@chromium.org>
Reviewed-by: Andrea Gomez <andreaxg@google.com>
Reviewed-by: Ian Wells <iwells@chromium.org>
Auto-Submit: Kevin Rooney <kevroon@google.com>
Cr-Commit-Position: refs/heads/main@{#1673810}

Create IAMF playback test

This CL introduces a basic test to ensure that iamf audio files can be
played. We confirm 'played' status by checking `timeupdate`.

Bug: 540492014
Change-Id: Iaaa8e8b414a253d17b34245e914c0a7fc45baa48
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8168460
Commit-Queue: Syed AbuTalib <lowkey@google.com>
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673809}

chromium-internal-autoroll@skia-corp.google.com.iam.gserviceaccount.com

Roll optimization-guide from 4f1d6b9d577f to fdd555cbcd04

https://chrome-internal.googlesource.com/chrome/components/optimization_guide.git/+log/4f1d6b9d577f..fdd555cbcd04

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://skia-autoroll.corp.goog/r/optimization-guide-chromium
Please CC chrome-ai-ondevice-eng-core@google.com,chrome-ai-ondevice-eng@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: chromium:514743962
Change-Id: I3171fbd2871e344e011b2bec5c68a15c77d6fae4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8194345
Bot-Commit: chromium-internal-autoroll@skia-corp.google.com.iam.gserviceaccount.com <chromium-internal-autoroll@skia-corp.google.com.iam.gserviceaccount.com>
Commit-Queue: chromium-internal-autoroll@skia-corp.google.com.iam.gserviceaccount.com <chromium-internal-autoroll@skia-corp.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673808}

hitarthkothari@google.com

Prevent switching tab models for parent tab selection when other tabs exist.

When a tab is closed, NextTabSelectionUtil attempts to select its parent
tab. This change restricts searching for the parent tab in other tab
models (e.g., switching between regular and incognito) to cases where
the current tab model is empty (has 1 or fewer tabs remaining). If other
tabs exist in the current model, one of those will be selected instead
of switching models.

Bug: 541221316
Change-Id: I3a3531d468e04cac6f004db08dc3ebeebce815ba
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197165
Auto-Submit: Hitarth Kothari <hitarthkothari@google.com>
Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673807}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Arm AFDO from 153.0.7988.0_pre1672415_rc-r1-merged to 153.0.7989.0_pre1672499_rc-r1-merged

This CL may cause a small binary size increase, roughly proportional
to how long it's been since our last AFDO profile roll. For larger
increases (around or exceeding 100KB), please file go/crostc-bug.

Please note that, despite rolling to chrome/android, this profile is
used for both Linux and Android.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/afdo-arm-chromium
Please CC c-compiler-chrome@google.com,gbiv@google.com,mobiletc-prebuild@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium Main: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: mobiletc-prebuild@google.com
Merge-Approval-Bypass: Chrome autoroller
Change-Id: I00efd2b4048788f2b281bb78af8529effe6b14cf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197647
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673806}

[remoting] Add Validate()/is_valid() to session policy structs

Mojo review mandates that deserialization should only do structural
validation but not semantic validation, and the latter should be done in
post-deserialization logic (Rule SEC-T1-01).

To support this, this CL adds Validate() and is_valid() methods to
SessionPolicies and PortRange. As for the difference in the method,
SessionPolicies has multiple fields so it is useful to return a
structure that can hold information about which field is invalid, while
PortRange is rather simple so is_valid() suffices.

The validation logic is factored out from existing parsing code. I also
looked into implementing a structural vs semantic validation split for
the existing logic, but that makes the API contract rather confusing,
and it is uncommon (outside of mojo) in Chromium.

Currently both structs allow for changing values after parsing, and they
were not validated afterwards, so introducing these methods is actually
a security improvement.

PeerSessionImpl will now call SessionPolicies::Validate(), which ensures
that SessionPolicies post-mojo-deserialization is validated.

TAG=agy
CONV=30efd205-45d4-4a5d-a399-c1249f18e03c

Bug: 502281489
Change-Id: Iaa958befb7a479ce7675ce42b5cf43384a0e16db
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8189934
Auto-Submit: Yuwei Huang <yuweih@chromium.org>
Reviewed-by: Joe Downing <joedow@chromium.org>
Commit-Queue: Joe Downing <joedow@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673805}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Chrome Mac Arm PGO Profile

Roll Chrome Mac Arm PGO profile from chrome-mac-arm-main-1785873589-e66e05b3f9cbcb4b6ff6f492badc1508ff6e0aae-a5558f936c8c9331f0360ea2276999519371bb24.profdata to chrome-mac-arm-main-1785880779-2bab148a2721ccecec9d08298d2dc7558b40ee9b-779a1a2770a1eab25ae024d66412362c9ca2d0e9.profdata

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/pgo-mac-arm-chromium
Please CC chrome-brapp-engprod@google.com,pgo-profile-sheriffs@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.chrome.try:mac-chrome
Tbr: pgo-profile-sheriffs@google.com
Merge-Approval-Bypass: Chrome autoroller
Change-Id: If7e9ff01287b00a3562225007020dca538ff4d6d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197406
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673804}

thomasanderson@chromium.org

Reland "Sanitize cursor theme name and size in GTK and Wayland"

This is a reland of commit 283ac1ef12df16eb0256a4d5ce83477b5afba061

Original change's description:
> Sanitize cursor theme name and size in GTK and Wayland
>
> This change extends GtkSettingsSetProperty interceptor and GtkUi to
> sanitize gtk-cursor-theme-name and gtk-cursor-theme-size at write-time,
> preventing unsanitized cursor theme names from being set in GTK
> settings.
>
> It also introduces unified ui::IsValidCursorThemeName and
> ui::IsValidCursorThemeSize validation helpers in //ui/base/cursor, and
> adds validation to WaylandCursorFactory to ensure invalid or
> path-traversing cursor theme names are rejected before calling
> wl_cursor_theme_load.
>
> Change-Id: Ibe8a3ce208d76d2e724902424491a6116d4352f6
> Fixed: 540289900
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8164559
> Reviewed-by: Yichen Zhou <yichenz@chromium.org>
> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1670761}

Bug: 542165218
Fixed: 540289900
Change-Id: I29b295e3296eb82a1304d9884d547cf939528f5a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8180111
Reviewed-by: Yichen Zhou <yichenz@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673803}

Add a fieldtrial testing entry for GlicCSPConfig.

Bug: 542214587
Change-Id: I721e50825cb6a89d9ac4f45462cfef3756ce7ad0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8195146
Reviewed-by: Mark Pearson <mpearson@chromium.org>
Reviewed-by: Justin DeWitt <dewittj@chromium.org>
Commit-Queue: Alex Chen <alexwchen@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673802}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll androidx from 4ro1uzKfrIPsQglnD... to Q9UCmU29yblEAObf6...

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/androidx-chromium
Please CC clank-build@google.com,clank-library-failures@google.com,wnwen@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.chrome.try:android-internal-binary-size;luci.chrome.try:android-internal-rel;luci.chrome.try:test-emulator
Tbr: clank-library-failures@google.com
Change-Id: I89dadb8e4e513769833a6c30c5f0f6b68b887246
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8190816
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673801}

[WebNN] Fix conv2d buffer size validation for large-kernel depthwise conv

XNNPACK only takes the dwconv path when a dwconv microkernel exists for
the kernel size (kernel_size <= max primary_tile, which is 25). For
larger kernels it falls back to the igemm path even for depthwise
convolutions. This CL adds a `kernel_size <= kMaxPrimaryTile` check to
the dwconv path selection, so large-kernel depthwise conv is validated
with the igemm formulas, matching XNNPACK's runtime behavior.

Bug: 541006756
Change-Id: I070305f5316ffa297ad7c21080edef6ec88fb56f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8183487
Reviewed-by: Hu, Ningxin <ningxin.hu@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Commit-Queue: Wang, Wei4 <wei4.wang@intel.com>
Cr-Commit-Position: refs/heads/main@{#1673800}

ImageDecoder: Accommodate WebP color transforms

When WebP sees that it is going to do a color transform, it will decode
to unpremultiplied BGRA, and then do any required premultiplication or
swizzling to N32 in the color transform.

Add parameters to DoDecodeTimeColorTransformIfNeeded to accommodate
this.

Bug: 540759552
Change-Id: I689a44c0648ca6078c4cf4a05ccec9a492d99d57
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8180483
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: ccameron chromium <ccameron@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673799}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Open Screen from 04a10ebab30f to d06a113ef8d4 (2 revisions)

https://chromium.googlesource.com/openscreen.git/+log/04a10ebab30f..d06a113ef8d4

2026-08-04 taesuny@google.com WebTransport 2/7: Platform API Definition
2026-08-04 jophba@chromium.org Roll tinycbor from d393c16f3eb3 to 9441b2ca882f (100 revisions)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/openscreen-chromium
Please CC jophba@chromium.org on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: jophba@chromium.org
Change-Id: I3c113e3483dbe1af157bb6040c7f7eb7ad3ea78a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191527
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673798}

[a11y] Fix WebUI Toolbar screen reader announcements

This CL fixes an issue where focusing controls in WebUI Toolbar
(--enable-features=InitialWebUI,WebUIToolbar) caused screen readers to
announce "Section: chrome://webui-toolbar.top" instead of "Toolbar".

Changes:
In <toolbar-app>, set an empty title and expose role="toolbar",
as both are required to suppress the URL announcement.

Bug: 538653130
Test: Manually verified with NVDA, JAWS and VoiceOver.
Change-Id: Icecd2cd4693f8b3f0bbc54962d1deff162dbfcaf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8178828
Commit-Queue: David Segovia <davidsegovia@google.com>
Reviewed-by: David Tseng <dtseng@chromium.org>
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673797}

Do not process Pix copy events from error documents in iframes

This CL updates ContentFacilitatedPaymentsDriverFactory::OnTextCopiedToClipboard
so that the IsErrorDocument check is restricted specifically to
iframe copy events. Copy events occurring in error document iframes
are rejected and logged with
PixFlowExitedReason::kFrameIsErrorDocument.

Bug: 536076343
Change-Id: I39ea6d34807cc7ae12f821178d81023f38c7df63
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8170940
Reviewed-by: Siddharth Shah <siashah@google.com>
Reviewed-by: Mark Pearson <mpearson@chromium.org>
Commit-Queue: Longsheng Yin <longsheng@google.com>
Cr-Commit-Position: refs/heads/main@{#1673796}

Clean up ArcDemoModeDelegateImplTest

Follow up of crrev.com/c/8186039.

Bug: None
Test: Tryjob
Change-Id: Ifebf497e4def320b8607b0c25deae1b5b0c47628
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8189860
Reviewed-by: Achuith Bhandarkar <achuith@chromium.org>
Commit-Queue: Hidehiko Abe <hidehiko@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673795}

[CodeHealth] Spanify VideoCaptureDevice (Linux V4L2 & WebRTC)

Spanify V4L2 capture delegates, GPU helper, and WebRTC video capture
device on Linux to pass base::span<const uint8_t> to
VideoCaptureDevice::Client::OnIncomingCapturedData.

R=tguilbert@chromium.org

TAG=agy

Bug: 542295549
Change-Id: Ie3e6ca9d88030d0ac03a582e66c0b1d5c2778e37
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8195450
Commit-Queue: Thomas Guilbert <tguilbert@chromium.org>
Auto-Submit: Alexander Cooper <alcooper@chromium.org>
Commit-Queue: Alexander Cooper <alcooper@chromium.org>
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673794}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Skia from a6f1360753bb to ad7abeecbb6d (3 revisions)

https://skia.googlesource.com/skia.git/+log/a6f1360753bb..ad7abeecbb6d

2026-08-04 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial).
2026-08-04 recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com Roll recipe dependencies (trivial).
2026-08-04 michaelludwig@google.com [graphite] Tune search limit parameters for DrawListLayers

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skia-autoroll
Please CC alexisdavidc@google.com,skiabot@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:gpu-fyi-cq-android-arm64;luci.chromium.try:linux-blink-rel;luci.chromium.try:linux-chromeos-compile-dbg;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:gpu-fyi-cq-mac-arm64;luci.chromium.try:mac14.arm64-blink-rel;luci.chromium.try:win_optional_gpu_tests_rel;luci.chromium.try:gpu-fyi-cq-win-arm64
Cq-Do-Not-Cancel-Tryjobs: true
Bug: chromium:419535595
Tbr: alexisdavidc@google.com
Change-Id: I4d088f5cbde14881786803a29514b84a93f3ffd8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197724
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673793}

chromium-autoroll@skia-public.iam.gserviceaccount.com

Roll Truth from 21421c64c210 to 32a4b983b1d4 (1 revision)

https://chromium.googlesource.com/external/github.com/google/truth.git/+log/21421c64c210..32a4b983b1d4

2026-08-04 cpovirk@google.com For Truth array subjects, include `isEqualTo` tests for both a non-array and an array of an incorrect type.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/truth-chromium
Please CC colibie@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Truth: https://github.com/google/truth/issues/new
To file a bug in Chromium: https://g-issues.chromium.org/issues/new?component=1493362&template=0

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Bug: None
Tbr: colibie@google.com
Change-Id: Ieb8ce9272aebb492f4013ed89c8dc7da817b0269
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191891
Commit-Queue: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll@skia-public.iam.gserviceaccount.com <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1673792}

[APC] Fix timeout in GetAIPageContent for embedded contexts

GetAIPageContent was hanging for 30 seconds and timing out in embedded
contexts (e.g., GuestViews or SurfaceEmbed within custom WebUI
containers).

The root cause was that the frame classification logic in
PageContentProtoProvider treated any frame with a parent/embedder as a
subframe (is_subframe = parent_frame != nullptr).

In embedded contexts, the Primary Main Frame of the inner WebContents
has an outer document or embedder, so parent_frame is not null. This
caused it to be incorrectly classified as a subframe. Consequently, it
was assigned a subframe closure instead of the main frame closure,
leading to the dedicated main frame closure never being invoked and the
system hanging until the watchdog timer expired.

This CL updates the classification to explicitly respect the identity of
the Primary Main Frame of the target WebContents, so that even if a
frame has an embedder, it will be treated as the main frame by the
timeout helper.

Bug: 542325174
Change-Id: Idd8a6fba3cd9e6cb007400f2a3901196b17c6bf9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8188589
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Reviewed-by: David Maunder <davidjm@chromium.org>
Commit-Queue: Gabriella Queen <gqueen@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673791}

[TabStrip] Add android_tab_strip watchlist entry

Add a new android_tab_strip watchlist definition for path chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/, with nemco+watch@google.com set as a watcher.

TAG=agy

Bug: N/A
Change-Id: I261ef0b54cf3fb23c6ab0cfeb70df0e1f3d80589
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8197824
Commit-Queue: Neil Coronado <nemco@google.com>
Reviewed-by: Zhe Li <zheliooo@google.com>
Cr-Commit-Position: refs/heads/main@{#1673790}

Add comments to new_glic_api_test.h

Change-Id: I2308448fbdc8222706cb09ef6c39ebb96a6a6964
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8190380
Reviewed-by: Bryant Chandler <bryantchandler@chromium.org>
Commit-Queue: Bryant Chandler <bryantchandler@chromium.org>
Auto-Submit: Dan H <harringtond@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673789}

[ash] Remove unsafe usages from unit tests

Use span and cstring_view for bounded test data, replace unsafe iterator
and strcmp operations, and compare vector icons by identity.

Bug: 40285824
Change-Id: I4f052e0e73ff9f2acfd9c9ef5b50bd37687edbae
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8191024
Reviewed-by: James Cook <jamescook@chromium.org>
Commit-Queue: Aaron Teo <hocheung@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673788}

Add explanation why CHECK(widget_destroying_handled_) may fail.

TAG=agy
CONV=b97400c5-8c8b-481a-9b5c-fce28e001e10

Bug: 540755275
Change-Id: I49bed3432c0b07cb21229b3a0c3d1e884ee7befa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/8190535
Reviewed-by: Keren Zhu <kerenzhu@chromium.org>
Commit-Queue: Keren Zhu <kerenzhu@chromium.org>
Commit-Queue: Mitsuru Oshima <oshima@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1673787}