0
Commit Graph

113943 Commits

Author SHA1 Message Date
b76139ee60 PA: Auctions may start processes before loading IGs
Auctions are often stuck waiting for processes to be created.
Using the in-memory cache for interest group owners, we can anticipate
which worklet processes to start in parallel to interest group loading.

Bug: 365528726
Change-Id: Id6970baa964c4857ca544b7fb7a6fec6a1b3cf83
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939361
Reviewed-by: Orr Bernstein <orrb@google.com>
Reviewed-by: mmenke <mmenke@chromium.org>
Commit-Queue: Abigail Katcoff <abigailkatcoff@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370829}
2024-10-18 21:13:13 +00:00
6d7f846a22 [shared storage] Add result status and timing UMAs for interestGroups()
Bug: 367992703
Change-Id: I208b403b2ac2536aef05827f1f7ea1078e1fa540
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941655
Reviewed-by: Ayu Ishii <ayui@chromium.org>
Commit-Queue: Yao Xiao <yaoxia@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370826}
2024-10-18 21:07:25 +00:00
be1dfd15d3 FLEDGE: Add flag to run in-render worklet service off main thread
...since that's very congested. Also add a metric to monitor the
impact on download queuing delays.

Bug: 374034252
Change-Id: I3d73340b07448283c31b6602782bc6a3042ac6d6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5936777
Reviewed-by: mmenke <mmenke@chromium.org>
Commit-Queue: Maks Orlovich <morlovich@chromium.org>
Reviewed-by: Orr Bernstein <orrb@google.com>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370798}
2024-10-18 20:07:13 +00:00
43eeeebb15 Add a runtime feature for WebXR/WebGPU bindings
This feature also partially overlaps with the WebXRLayers feature, but
we don't want to enable all of that when enabling the WebGPU bindings.
To address that a "WebXRLayersCommon" feature was added that is implied
by either the WebXRGPUBinding feature or the WebXRLayers feature and
which only enables the interfaces that are needed by both features.

Bug: 359418629
Change-Id: Ifff19456a6a8f968dc7064953844ba31052f0be8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5940998
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Alexander Cooper <alcooper@chromium.org>
Reviewed-by: Ian Vollick <vollick@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370731}
2024-10-18 18:23:10 +00:00
8ff750c8b5 Add 'confidence' field to PerformanceNavigationTiming
To enable developers to discern if the navigation timings are
representative for their web application, the change adds a new ‘confidence’ field to the PerformanceNavigationTiming struct.
The confidence field should not be populated until the confidence value
is finalized.

This change contains the blink changes to expose the new API, as well as
the infrastructure for the cross-process communication. This change
always returns a value of 'high' confidence for top level navigations,
and returns null for iframes. In future changes noise will be added
via a differential privacy algorithm.

The finalized confidence is stored in the DocumentLoadTiming class,
and is sent by the RenderFrameHostImpl in response to a notification
that the document is now 'interactive'.

Changes to add usecounters will be added after this change lands.

Explainer: https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/PerformanceNavigationTiming%20for%20User%20Agent%20Launch/explainer.md
Chrome Status: https://chromestatus.com/feature/5186950448283648
Dev Design: https://docs.google.com/document/d/1D6DqptsCEd3wPRsZ0q1iwVBAXXmhxZuLV-KKFI0ptCg/edit?usp=sharing
I2P: https://groups.google.com/a/chromium.org/g/blink-dev/c/o0F7nBKsgg0/m/bJSp3ekfAAAJ
W3C Issue: https://github.com/w3c/navigation-timing/issues/202

Manual testing steps:

1) Start the browser with these command line parameters:
   --enable-features=PerformanceNavigationTimingConfidence https://example.com
2) Open the developer tools, and switch to the Console tool.
3) Run "window.performance.getEntriesByType('navigation')[0].confidence"
   into the console, and you should see 'high' returned.

Bug: 1413848
Change-Id: I9590c6a3899aa756af6abc6d6c1a7c2b88bde439
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5906123
Auto-Submit: Mike Jackson <mjackson@microsoft.com>
Commit-Queue: Mike Jackson <mjackson@microsoft.com>
Reviewed-by: Yoav Weiss (@Shopify) <yoavweiss@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370718}
2024-10-18 18:07:33 +00:00
b24e5ac706 Remove comment about DB maintenance
crrev.com/c/4891458 added a `storage_size` column to store the
EstimatedSize() upon each join and update, so this comment is no
longer true.

Change-Id: I87c50e231e35d80f35061713d2c24591f71e4bb7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941090
Reviewed-by: Russ Hamilton <behamilton@google.com>
Commit-Queue: Russ Hamilton <behamilton@google.com>
Auto-Submit: Caleb Raitto <caraitto@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370712}
2024-10-18 18:02:39 +00:00
51013ca54e [test] Suppress more WebGL2 failures
Suppress one more wasm 16gb test -
conformance2/wasm/texsubimage2d-16gb-wasm-memory.html
and another conformance/rendering/rendering-stencil-large-viewport.html
with similar crash signature and failure history on Win11 Qualcomm bot

Builds with failures
- https://ci.chromium.org/ui/p/chromium/builders/ci/Win11%20FYI%20arm64%20Release%20(Qualcomm%20Adreno%20690)/3620/overview
- https://ci.chromium.org/ui/p/chromium/builders/ci/Win11%20FYI%20arm64%20Release%20(Qualcomm%20Adreno%20690)/3619/overview

Bug: 373852610
Change-Id: Ibc91d2ff7142c645be193c5f99c520cd5d82f06e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939464
Commit-Queue: Saifuddin Hitawala <hitawala@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Saifuddin Hitawala <hitawala@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370697}
2024-10-18 17:44:21 +00:00
f1147f74e2 Move SimpleMenuModel out of ui/base
This is a precursor CL to allow SimpleMenuModel to include actions.h, in order to be able to create menu items from action items.
Currently, simple_menu_model cannot include actions, as doing so creates a dependency cycle from ui/base -> ui/actions -> ui/base.

Many of the changes here are simply renaming include paths from ui/base/models -> ui/menus/models. The only significant changes here that need to be reviewed are changes in BUILD.gn and DEPS files.

Change-Id: I345efc6c42bbf2d7fdd539c0b312a8f5db338382
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5892572
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Achuith Bhandarkar <achuith@chromium.org>
Commit-Queue: Joseph Park <josephjoopark@chromium.org>
Reviewed-by: Emilia Paz <emiliapaz@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370692}
2024-10-18 17:39:17 +00:00
c8cf4b850d Reuse policy-check algorithm in both web and OS registrations
And reduce nesting due to repeated absl::visit calls on queued
registrations.

This CL has no intentional user-visible behavioral changes.

Change-Id: Icfa4351576e2fec488d1b638a5b96948e5727819
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5936916
Reviewed-by: Nan Lin <linnan@chromium.org>
Commit-Queue: Andrew Paseltiner <apaseltiner@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370690}
2024-10-18 17:36:42 +00:00
c0f2cf42fa Remove assumption about max aggregatable reports from interop tests
Per the spec, this is a vendor-specific value, and as such, interop
tests should not be assuming it has a particular value outside the
default configuration.

https://wicg.github.io/attribution-reporting-api/#max-aggregatable-reports-per-source

This also allows us to drastically reduce the size of the
max_aggregatable_reports_per_source test using a smaller maximum.

Change-Id: I85613bdbeef4fa3bbdfad191b430559de394a98d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939463
Reviewed-by: Nan Lin <linnan@chromium.org>
Commit-Queue: Andrew Paseltiner <apaseltiner@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370658}
2024-10-18 16:45:04 +00:00
8a8cc644d8 Remove kChromeWideEchoCancellationAllowAllSampleRates
Bug: 374115884
Change-Id: Ibff1d1bcf780a9bea9c73d443cc14638c10189d5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5942356
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Colin Blundell <blundell@chromium.org>
Reviewed-by: Sam Zackrisson <saza@chromium.org>
Commit-Queue: Olga Sharonova <olka@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370592}
2024-10-18 15:01:39 +00:00
15367dd5b4 Updating XTBs based on .GRDs from branch main
Change-Id: I52f2a88f283038a3709a7ed6fd54a569e8f179ed
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941352
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Ben Mason <benmason@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1370588}
2024-10-18 14:50:01 +00:00
c0314cc64e Migrate all callers to optional-based GetNormalizedHeader overload
This also deletes the out-param-based overload.

Change-Id: I74b03b454bfaa99ea9b75227511801e50aa0f138
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939082
Owners-Override: Rick Byers <rbyers@chromium.org>
Commit-Queue: Chris Fredrickson <cfredric@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Rick Byers <rbyers@chromium.org>
Auto-Submit: Chris Fredrickson <cfredric@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370586}
2024-10-18 14:48:51 +00:00
f4d7f0fabb Remove kChromeWideEchoCancellationMinimizeResampling
Bug: 374115884
Change-Id: Iafe7186fa7ffb6938fc7d77fee7283c4c89b5385
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5938875
Reviewed-by: Sam Zackrisson <saza@chromium.org>
Reviewed-by: Colin Blundell <blundell@chromium.org>
Commit-Queue: Olga Sharonova <olka@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370585}
2024-10-18 14:47:48 +00:00
0a3f8d17a4 Add dump for unexpected inline text box generation
AX-Relnotes: N/A
Bug: 372718628
Change-Id: Ie1cc2c6f5fc74e79589009bdbb2b111bede63ffe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5940120
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Commit-Queue: Mark Schillaci <mschillaci@google.com>
Auto-Submit: Mark Schillaci <mschillaci@google.com>
Cr-Commit-Position: refs/heads/main@{#1370579}
2024-10-18 14:41:30 +00:00
e653034d14 [Privacy Sandbox] Chrome client layer implementation of local
unpartitioned data access attestation check.

Implement the browser client layer check of the new attestation API.
Apply this check for shared storage get.

Browser tests for testing shared storage get with respect to the new
attestation check is added in:
chrome/browser/storage/shared_storage_browsertest.cc.

Update other existing tests to work with this check.

Please note other than the attestation, the local unpartitioned data
access is also gated on 3pc setting. See crrev.com/c/5860019.

Bug: 361375807
Change-Id: I338bb9fa756b9e2b793f3bf4a491281cd41409f6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5854085
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Xiaochen Zhou <xiaochenzh@chromium.org>
Reviewed-by: Shivani Sharma <shivanisha@chromium.org>
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Reviewed-by: Cammie Smith Barnes <cammie@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370560}
2024-10-18 14:14:03 +00:00
72430aa4ac Adds RenderInputRouterSupportAndroid implementation in Viz.
This CL does the following:
* Implements RenderWidgetHostViewInput interface as
RenderInputRouterSupportAndroid mirroring RenderWidgetHostViewAndroid
class in browser for handling input on Viz with InputVizard. This CL
just adds the skeleton of RenderInputRouterSupportAndroid class's
implementation with bunch of TODO's which are being tracked with bugs
and will be added later in the upcoming CL's. Implementation of
RenderWidgetHostViewChildFrame will be added in an upcoming CL.

Doc Link:
https://docs.google.com/document/d/1tRPUd11fuPcXxb2ep_kGYPahgv0OOlV7DvsGkbom7VA/


Bug: b:367695776
Change-Id: I5e662f1456c9d4ff8cc361d86716ce4f69c3dfa4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5905858
Commit-Queue: Aman Verma <amanvr@google.com>
Reviewed-by: Hidehiko Abe <hidehiko@chromium.org>
Reviewed-by: Jonathan Ross <jonross@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370553}
2024-10-18 14:00:19 +00:00
cacd043afd Get actual supported HEVC decode capability from GPU factory for RTC.
Previous implementation uses a fixed 1080p@30fps configuration and query if GPU factory supports that. As a result, the level of HEVC reported in
SDP offer/answer is always 3.1.
Switch to iterate over the profiles/resolutions reported from GPU factory and use that to create supported format lists for HEVC.

Bug: 41480904, 368478704
Change-Id: I8bf895a734789299cda7faad70e6d840025ffedb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5880164
Reviewed-by: Eugene Zemtsov <eugene@chromium.org>
Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
Reviewed-by: Antonio Rivera <antoniori@google.com>
Commit-Queue: Jianlin Qiu <jianlin.qiu@intel.com>
Cr-Commit-Position: refs/heads/main@{#1370549}
2024-10-18 13:52:00 +00:00
6cc2e461c5 Change B&A requests to use recencyMs instead of recency
All released version of B&A support both the new and old fields. The
new field allows the B&A server to provide the same precision to
worklets as is available in on-device auctions.

Bug: 374088337
Change-Id: Ia1a5d40501da41300c7d9fd5e4e3bd7bfc8303ab
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5940498
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Commit-Queue: Russ Hamilton <behamilton@google.com>
Cr-Commit-Position: refs/heads/main@{#1370523}
2024-10-18 12:54:16 +00:00
16ee5d2ae9 Clean up DecreaseProcessingAudioFifoSize feature
Bug: 374115889
Change-Id: I623e3a2a89803dbf719eb9678aecc118e52b012c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5937953
Commit-Queue: Olga Sharonova <olka@chromium.org>
Reviewed-by: Colin Blundell <blundell@chromium.org>
Reviewed-by: Guido Urdaneta <guidou@chromium.org>
Reviewed-by: Olga Sharonova <olka@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370499}
2024-10-18 11:53:07 +00:00
9bde1bf879 [A11y] Finish removing Accessibility Object Model
Bug: 369945541
Change-Id: I435e709f321e1f1e192e44c71a92ca2c433a93c9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5938694
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Aaron Leventhal <aleventhal@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370493}
2024-10-18 11:18:32 +00:00
15c90a9534 webcodecs: Narrow down QP range for h264 in GPU tests
Some Intel GPUs don't support QP less than 10 on h264.
Unfortunately currently we don't have a way for web API to communicate supported
QP range.

Bug: 333426465
Change-Id: Id897015dde14b820ba9954ddb8ef98c5c0e7d420
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941642
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Commit-Queue: Eugene Zemtsov <eugene@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370458}
2024-10-18 09:05:09 +00:00
c6fff21db2 PrefetchReusable: Make PrefetchReusable depends on PrefetchNewWaitLoop
This CL adds a feature param `kPrefetchReusableUseNewWaitLoop` to use
the new wait loop to reduce ambiguity.

Bug: 373804539
Change-Id: I72414a9a62d51957254354f6266bec8e1b4a89ba
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5937371
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Commit-Queue: Ken Okada <kenoss@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370418}
2024-10-18 05:43:53 +00:00
f0b5639066 Android: Enable another set of Error Prone checks
Enables:
* CollectionToArraySafeParameter
* Finally
* FragmentNotInstantiable
* InlineFormatString
* MissingSuperCall
* SynchronizeOnNonFinalField
* ToStringReturnsNull

Bug: 40661145
Change-Id: I8f8471cf120bd2eea7d3ea8bdff26c3bd3bc445c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941259
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370352}
2024-10-18 00:28:50 +00:00
9c9b0baa6e Fix DedicatedStyleAuctionProcessManagerTest inheritance.
DedicatedStyleAuctionProcessManagerTest was inheriting from
AuctionProcessManagerTest instead of AuctionProcessManagerTestBase.
As a result of this, DedicatedStyleAuctionProcessManagerTests had access
to methods that operated on the AuctionProcessManager created in
AuctionProcessManagerTest, instead of
DedicatedStyleAuctionProcessManagerTest's own AuctionProcessManager.

Inheriting from the base class prevents this issue, since it doesn't
create its own process manager.

Bug: none
Change-Id: Ia742e01e279aa2bfb0c876a2db21468a85c3bc18
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5940145
Commit-Queue: mmenke <mmenke@chromium.org>
Reviewed-by: Abigail Katcoff <abigailkatcoff@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370296}
2024-10-17 22:41:09 +00:00
a3cf92a41d use std::optional base::GetFileSize() in //content
Bug: 371234479
Change-Id: Ic324561e0c6fd20d85e5895fb45c89ca5866876a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5905147
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Owners-Override: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Eric Seckler <eseckler@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370248}
2024-10-17 21:09:58 +00:00
379eb69842 Revert "Re-enable RD-subframe by default"
This reverts commit ed0bc104ae.

Reason for revert: Introduced audio bug (crbug.com/371871759)

Original change's description:
> Re-enable RD-subframe by default
>
> We previously disabled it when a bug surfaced, which is confirmed to
> be fixed now. This CLs re-enables the subframe level by default.
>
> Bug: 936696
> Change-Id: Ie5235e658366a8c499457fbf61be6ad93473e60d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5848030
> Auto-Submit: Rakina Zata Amni <rakina@chromium.org>
> Commit-Queue: Fergal Daly <fergal@chromium.org>
> Reviewed-by: Fergal Daly <fergal@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1353149}

Bug: 936696, 371871759
Change-Id: Iebed284b081d308d4041e14740dec06b07615612
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5940119
Commit-Queue: Rakina Zata Amni <rakina@chromium.org>
Commit-Queue: Daniel Yip <danielyip@google.com>
Reviewed-by: Daniel Yip <danielyip@google.com>
Auto-Submit: Rakina Zata Amni <rakina@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370195}
2024-10-17 19:29:06 +00:00
a2b1a34c77 Fix screen_ai deps
Fixes build issues with enable_screen_ai_service flag disabled.

Bug: None
Change-Id: I503ed41a5d391568a36d2d67e7a3aff47fc2fb3a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5933966
Auto-Submit: Tomasz Moniuszko <tmoniuszko@opera.com>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370192}
2024-10-17 19:20:43 +00:00
4d3dad034f Prefetch: Record PrefetchStatus in UMA
Adds a new UMA metric ("Preloading.Prefetch.PrefetchStatus") to record
the final PrefetchStatus value** of a PrefetchContainer.

** For prefetches with a "failure" status, we record the first failure
status set; which may not be the final one.

Bug: 365376512
Change-Id: I93e9df7f4427ea60c04fcf72efd9a7180f85f307
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5925314
Reviewed-by: Taiyo Mizuhashi <taiyo@chromium.org>
Reviewed-by: Max Curran <curranmax@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Commit-Queue: Adithya Srinivasan <adithyas@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370141}
2024-10-17 18:06:59 +00:00
99e9d6690c [shared storage] Check IsInterestGroupAPIAllowed() for interestGroups()
What: Check privacy sandbox settings for interestGroups().

How:
1. Add `browser_context` to the `IsInterestGroupAPIAllowed()` parameters
   to get the `PrivacySandboxSettings` for general permission check.
   This is because `render_frame_host` can be null (e.g., due to the
   initiator frame being destroyed and the worklet is in keep-alive
   phase). In this case, certain operations like console error will
   be skipped, but the core permission check will still be
   performed.
2. Introduce and use a new InterestGroupApiOperation::kRead type.

Bug: 367992703
Change-Id: I9e1b44efc3f67a408433e6284be82197bb594a73
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5936920
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Reviewed-by: Russ Hamilton <behamilton@google.com>
Reviewed-by: Fiona Macintosh <fmacintosh@google.com>
Reviewed-by: Ben Kelly <wanderview@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Commit-Queue: Yao Xiao <yaoxia@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370140}
2024-10-17 18:05:33 +00:00
fffe2c8c47 Revert "[HitTestOpaqueness] Enable by default"
This reverts commit a56e352a2b.

Reason for revert: There are several bugs, some fixed on ToT
(crbug.com/348520453, crbug.com/367166494), some
still need investigation (crbug.com/372722559). We need to unlaunch
the feature and restart the experiment after all bugs are fixed.

Original change's description:
> [HitTestOpaqueness] Enable by default
>
> Also change status of FastNonCompositedScrollHitTest to stable to make
> it merely depend on the status of RasterInducingScroll, to simplify
> dependencies.
>
> Bug: 40062957, 40256365, 329115115
> Change-Id: Ia675bf7a2e833f26f3c113bda12735317d218a07
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5824528
> Reviewed-by: Philip Rogers <pdr@chromium.org>
> Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
> Reviewed-by: Jonathan Ross <jonross@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1348709}

Bug: 40062957, 40256365, 329115115
Change-Id: Ibeeeed2eda9365c850c174ca0854bba9ba77855a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5941138
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Jonathan Ross <jonross@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370123}
2024-10-17 17:36:27 +00:00
aa9dae08bb Blob Storage: Fix test flakiness by correcting expectations
The BlobStorageBrowserTest.BlobCombinations test performs some blob
operations through a test JS file and expects the memory usage and disk
space usage of BlobMemoryController to be non-zero. In some test runs,
however, all the new memory and disk allocations get revoked by the time
the posted task to measure the current memory and disk usage runs, and
hence the test fails.

Memory and disk allocations start getting revoked right after the blobs
have been transferred to their destination, so it's incorrect to expect
point-in-time usage of memory and disk space in the controller to be
non-zero always. There is sufficient unit-test coverage for the usages
already, so this CL removes these expectations from the browser test.

Memory and disk allocations start getting revoked soon a

Bug: 363225483
Change-Id: I9a747285df5333a0c3e2db5a90075b54e7fa18a1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5929408
Reviewed-by: Evan Stade <estade@chromium.org>
Auto-Submit: Abhishek Shanthkumar <abhishek.shanthkumar@microsoft.com>
Commit-Queue: Abhishek Shanthkumar <abhishek.shanthkumar@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1370102}
2024-10-17 17:10:59 +00:00
b0ed505210 Have ExceptionState immediately throw exceptions into v8
This removes the need for a non-trivial destructor. Exceptions can
still be caught if needed with v8::TryCatch.

In order to keep dictionary-conversion exception messages the same,
add DictionaryFromV8Context (very similar to
ExceptionState::ContextScope, which was removed in
https://chromium-review.googlesource.com/c/chromium/src/+/5867470).

Binary-Size: reversing some of the binary size win in the above CL
Fuchsia-Binary-Size: reversing some of the binary size win in the above CL
Bug: 328104148
Change-Id: I017294ff9bbec31798e2ed7a40ebaea07d7bc940
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5882467
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Owners-Override: Nate Chapin <japhet@chromium.org>
Commit-Queue: Nate Chapin <japhet@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370066}
2024-10-17 16:29:10 +00:00
ab83fb57eb Show aggregatable report filtering IDs in Attribution Internals UI
When the filtering ID is null, we display it as 0, which is equivalent
per the existing defaulting during parsing and report creation.

This originates from a feature request at
https://github.com/privacysandbox/privacy-sandbox-dev-support/issues/421.

Bug: 345274918
Change-Id: Ie0a387c8419f62c00da883f1e874d2013e2c8080
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939817
Reviewed-by: Nan Lin <linnan@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Commit-Queue: Andrew Paseltiner <apaseltiner@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370064}
2024-10-17 16:19:17 +00:00
19ec439971 [DNT] Removed double caching CHECK in SetScreenshotInternal
This CL removes the CHECK to avoid crashes. In the meanwhile, the cause
is being investigated more in depth in a follow up bug crbug.com/373893401.

Bug: 370210970
Change-Id: I3cdaef3812626ab8bbb79cb51302546dc8bbd67a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5938684
Reviewed-by: William Liu <liuwilliam@chromium.org>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Commit-Queue: Baran Erfani <baranerf@google.com>
Cr-Commit-Position: refs/heads/main@{#1370054}
2024-10-17 16:05:49 +00:00
9a450718fb Quota: remove code for quotachange event/Storage Pressure API.
The flag was not enabled, so there should be no behavioral change.

Bug: 40276596
Change-Id: I1a323a45d97b661a574f046a61954397439d48a4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5930607
Commit-Queue: Evan Stade <estade@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Ayu Ishii <ayui@chromium.org>
Reviewed-by: Dmitry Gozman <dgozman@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Greg Thompson <grt@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370046}
2024-10-17 15:48:32 +00:00
31497928d8 Wire up ScoringSignals request logic to TrustedSignalsFetcher.
The API already exists, and outer response parsing is the same for
bidding and scoring signals, so this only adds code to create the CBOR
for scoring signals requests.

Bug: 333445540
Change-Id: I7fcf9363bcb1aa7932f7f9900281484506c32ddc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5938446
Reviewed-by: Russ Hamilton <behamilton@google.com>
Commit-Queue: mmenke <mmenke@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370027}
2024-10-17 15:19:28 +00:00
040941e6e9 [DNT] Resume dialogs in dtor
Fixed: 374077411
Change-Id: Ib0756e5cb7a00e90383b2ef58e6e42d9a1f87a4e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5937425
Commit-Queue: William Liu <liuwilliam@chromium.org>
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Commit-Queue: Khushal Sagar <khushalsagar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1370013}
2024-10-17 14:58:26 +00:00
73103f060a [mojo] Guard browser's DiscardableSharedMemoryManager endpoint setup
In Android browser tests, a new renderer can try to establish a new mojo
pipeline after the DiscardableSharedMemoryManager is reset, making
DiscardableSharedMemoryManager::Get() a nullptr.

The remedy is to partially "revert" https://crrev.com/c/1670289

Tested: with the Fieldtrial testing config added, `autoninja -C out/android android_browsertests && out/android/bin/run_android_browsertests -f SearchPreloadUnifiedBrowserTest.PrerenderHintReceivedAfterSucceed --fast-local-dev --gtest_repeat=100 --break-on-failure` passed.

Cq-Include-Trybots: luci.chromium.try:android-12-x64-rel,android-12l-x64-dbg,android-13-x64-rel,android-14-x64-rel,android-15-x64-rel,android-pie-x86-rel,android-oreo-x86-rel

Fixed: 373698143
Change-Id: I0d0574759841915ac16d05417c3994447355e39b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5932591
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Commit-Queue: William Liu <liuwilliam@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369985}
2024-10-17 14:20:08 +00:00
c1fd397ece Android: Fix remaining UnusedVariable Error Prone violations
Applies only to private symbols non-test code.

Bug: 372458640
Change-Id: Id9e4f06e8f5875f73f242384173ddf99d8d7e505
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5938920
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Owners-Override: Andrew Grieve <agrieve@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369982}
2024-10-17 14:15:30 +00:00
5dcd503d13 Migrate some callers to optional-based GetNormalizedHeader overload
This doesn't migrate every callsite; it just migrates the ones where
the optional-based overload is clearly more ergonomic.

Change-Id: I01feb24e5bde8f48ff57e5f963b0ea2f4eef40c8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5935252
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Commit-Queue: Chris Fredrickson <cfredric@chromium.org>
Reviewed-by: Ryan Sultanem <rsult@google.com>
Cr-Commit-Position: refs/heads/main@{#1369953}
2024-10-17 13:00:34 +00:00
82cc66701f [iOS Blink] Add //components/input dep to //content/browser deps
As https://crrev.com/c/5923866 did a refactoring, it missed adding
//components/input dependency to //content/browser's ios dependencies.

This CL adds it to the deps to fix a build break caused by the
refactor CL.

Bug: b:367695776
Change-Id: Id59a465e550bec5f6abdf9a3058d7e6635c2fa44
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939014
Reviewed-by: Aman Verma <amanvr@google.com>
Commit-Queue: Gyuyoung Kim <gyuyoung@igalia.com>
Cr-Commit-Position: refs/heads/main@{#1369922}
2024-10-17 11:41:22 +00:00
aa7dbe71a3 [] PrefetchFallback: Regard prefetch ahead of prerender reusable partially
This CL adds a feature parameter
`kPrerender2FallbackPrefetchReusablePolicy` to control the behavior of
multiple use of prefetch, mainly for prerender integration.

In particular, with option `kUseIfIsLikelyAheadOfPrerender`, this CL
makes prefetch ahead of prerender reusable partially to prevent the
second fetch when a prefetch is started with `IsLikelyAheadOfPrerender`
and a prerender initial navigation used the prefetch result and failed,
e.g. due to use of forbidden mojo interface.

Note that this CL doesn't make a prefetch reusable if it is started by a
SpeculationRules of "prefetch" and then marked as
`IsLikelyAheadOfPrerender` by a SpeculationRules of "prerender".

Fixed: 372444497
Change-Id: I5a8e69b8243c2f4b185054cca79afe721fc6f8d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5923166
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Commit-Queue: Ken Okada <kenoss@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369918}
2024-10-17 11:20:03 +00:00
c010fa45f2 Enable kProcessReuseOnPrerenderCOOPSwap on Desktop by default
Corresponding cl: cl/684171519

Bug: 41492112
Change-Id: I6a2b85647b3b273c12c76de143a5c63792f5eb6d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5920294
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Commit-Queue: Taiyo Mizuhashi <taiyo@chromium.org>
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369855}
2024-10-17 08:53:08 +00:00
332e097811 Modernize codec usage in content/
Codec calls have new API that uses std::optional and spans. Switch usage
to those new APIs, and lightly modernize the calling code.

Bug: 370696612
Change-Id: I84589ca62e8ab5ae7c560e295b6b6b20a7403114
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5938466
Auto-Submit: Avi Drissman <avi@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369823}
2024-10-17 07:11:44 +00:00
28355f07e1 Reland "[prerender] Fix crash when discarding a speculative main RenderFrameHost"
This is a reland of commit 33493d2d85
This restores a branch in RenderViewHostImpl::CreateRenderView() that
was mistakenly removed in the original CL.

Original change's description:
> [prerender] Fix crash when discarding a speculative main RenderFrameHost
>
> Previously, starting a prerender navigation would create a speculative
> RenderFrameHost for the root frame tree node in the browser process.
> However, the corresponding RenderFrame in the renderer process would
> be created as the active/current main RenderFrame. This is a result of
> the interaction between `CreateProxiesForSiteInstanceGroup()`, which
> skips creating a proxy if it thinks the early commit optimization will
> be used, and `PerformEarlyRenderFrameHostSwapIfNeeded()`, which skips
> performing early commits in prerendering frame trees.
>
> Intentional or not, this is problematic because:
>
> - The browser process assumes speculative RenderFrameHosts can be
>   cleaned up by deleting the corresponding RenderFrame in the renderer
>   process.
> - The renderer process assumes the active/current main RenderFrame is
>   never explicitly deleted, and that it will only be implicitly deleted
>   as a side effect of explicitly deleting its blink::WebView.
> - Blink assumes a blink::WebView always has an active main frame (i.e.
>   non-null). Rather than crashing non-deterministically, the renderer
>   process CHECK-fails if the browser tries to explicitly delete a
>   non-provisional main RenderFrame.
>
> Taken together, this means discarding a speculative main RenderFrameHost
> during a prerender navigation will crash the renderer process. Needless
> to say, this is not desirable. Previous fixes have centered around
> identifying the cases that would discard a speculative RenderFrameHost
> and disabling prerendering for those cases.
>
> However, this doesn't fix the underlying issue and ends up being a game
> of whack-a-mole. This CL implements a proper fix: the corresponding
> main RenderFrame in the renderer process is now created as a provisional
> frame during a prerender navigation. This is implemented using a
> placeholder RemoteFrame; RenderDocument already uses this concept for
> local -> local frame swaps.
>
> This CL also refactors several ancillary components to make the updated
> logic easier to follow:
>
> - Rather than using a non-null `previous_frame_token` as the implicit
>   signal for creating a provisional main local frame, Mojo now uses the
>   CreateProvisionalLocalMainFrameParams variant subtype to convey this
>   intent. This is a required cleanup, since prerender navigations should
>   not set a `previous_frame_token`, but still want the placeholder
>   RemoteFrame + provisional LocalFrame behavior.
> - With the updated union, the different main frame cases are also broken
>   out more distinctly in `AgentSchedulingGroup::CreateView()`.
> - Rename `EnsureWidgetInitialized()` to `InitializeWidgetAtSwap()`,
>   since that is the only situation it is called.
> - Remove `previous_frame_token_for_compositor_reuse` from the frame
>   widget creation params, and replace it with the `reuse_compositor`
>   bool. The frame token is redundant, since the frame widget creation
>   params are always paired with frame creation params.
> - Refactor `WillDetach()` and `InitializeWidgetAtSwap()` to account for
>   the removal of `previous_frame_token_for_compositor_reuse`. It turns
>   out the renderer process already has all the information needed to
>   determine the previous frame; passing it directly significantly
>   simplifies this coordination.
>
> Finally, this also removes the crash instrumentation that was previously
> added to help track down situations where prerender navigations would
> discard speculative main RenderFrameHosts. Since this no longer crashes,
> the instrumentation is no longer needed.
>
> Bug: 40076091
> Change-Id: I1c19853c75580492653e608afb1db3442a264b3a
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5922799
> Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
> Commit-Queue: Daniel Cheng <dcheng@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1369647}

Bug: 40076091
Change-Id: I10ecdf8233f6dfd42e0478c819447831d50256c3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5937586
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369798}
2024-10-17 05:42:08 +00:00
ad0d3f5a38 [iOS blink] Enable touch feature detection on iOS with use_blink
Previously, touch event feature detection was only enabled on Android by
default. This led to certain touch events (such as ontouchstart and
ontouchend) not being found in window and document. Since iOS also
employs the blink engine with USE_BLINK = true, touch feature detection
should be enabled for iOS as well.

Bug: 40254930
Change-Id: I120ad70251287a9edd89ae0e0834083c406e0dc7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5933085
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Leon Han <shulianghan@microsoft.com>
Commit-Queue: Lichen Liu <lichenliu@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1369765}
2024-10-17 02:13:46 +00:00
2fba7b96ae Rename debug_cookie_set to cookie_based_debug_allowed
Bug: 369506940
Change-Id: I8abc49f60fbeceea5a1d550521bf890ef74f085c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5886699
Reviewed-by: Andrew Paseltiner <apaseltiner@chromium.org>
Commit-Queue: Nan Lin <linnan@chromium.org>
Reviewed-by: Ken Buchanan <kenrb@chromium.org>
Reviewed-by: John Delaney <johnidel@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369721}
2024-10-17 00:16:59 +00:00
0da1aba681 [IndexedDB] Add Microsoft owners to help maintain and improve
Change-Id: I5a7eb0f26ae4b29b892c4439c6dac6fdeac8657c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5937870
Reviewed-by: Evan Stade <estade@chromium.org>
Commit-Queue: Steve Becker <stevebe@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1369706}
2024-10-16 23:45:45 +00:00
b4e1639ef8 [Device Posture] Mark the Device Posture API stable.
API was approved for shipping [1]. Viewport Segments is
still behind flags because the WebDriver story is not done.

[1] https://groups.google.com/a/chromium.org/g/blink-dev/c/Xbhdn0u6Z9A

Bug: 40124716
Change-Id: Iddb9f61f0bc45aa0094f5d4f9495caf42d3c66a1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5939268
Reviewed-by: Kent Tamura <tkent@chromium.org>
Reviewed-by: Matt Reynolds <mattreynolds@chromium.org>
Auto-Submit: Alexis Menard <alexis.menard@intel.com>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1369681}
2024-10-16 22:47:54 +00:00