Commit Graph
78364 Commits
Author SHA1 Message Date
Claudio DeSouza 2966bf1d7a [cr149] BookmarkBarController fetched through a static
The accessor is now gone, and `BrowserView::GetBrowserViewForBrowser` is
used in its place.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/aaed67f345e86a74c60a9f666cd19fe898d23605

commit aaed67f345e86a74c60a9f666cd19fe898d23605
Author: Thomas Lukaszewicz <tluk@chromium.org>
Date:   Wed Apr 15 11:32:42 2026 -0700

    [bedrock] Move bookmark-related methods to BookmarkBarController

    This CL re-homes bookmark-related methods on BrowserWindow to the
    BookmarkBarController browser window feature. Test-specific methods
    that only have a BrowserView impl have been removed and test code
    updated to check the BrowserView directly.

    This is part of an effort to slim BrowserWindow and better modularize
    browser feature code.

    Bug: 502745808
    Change-Id: I4046786862ff822a6a11c278e25948f478340aa2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7763260
    Reviewed-by: David Yeung <dayeung@chromium.org>
    Commit-Queue: Thomas Lukaszewicz <tluk@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1615305}
2026-05-22 16:24:58 -04:00
Claudio DeSouza b832a750a3 [cr149] FindAllTabbedBrowsersWithProfile deleted
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/4650246ccb09055bd278e075fb26055343174087
https://chromium.googlesource.com/chromium/src/+/830564b5f14f755a81fa9f9d5f1e171b568dfc6a

commit 4650246ccb09055bd278e075fb26055343174087
Author: Kun Wang <kunwang@microsoft.com>
Date:   Tue Apr 14 20:46:35 2026 -0700

    [bedrock] Remove FindAllTabbedBrowsersWithProfile() from BrowserFinder

    Bug: 494010890
    Change-Id: I7d237edf67693e11d23397813f06d4e32d27d5a4
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7738568
    Reviewed-by: Thomas Lukaszewicz <tluk@chromium.org>
    Reviewed-by: Qikai Zhong <qikaizhong@microsoft.com>
    Commit-Queue: Kun Wang <kunwang@microsoft.com>
    Cr-Commit-Position: refs/heads/main@{#1614924}

commit 830564b5f14f755a81fa9f9d5f1e171b568dfc6a
Author: Yu He <yhe@microsoft.com>
Date:   Thu Mar 19 12:08:13 2026 -0700

    Reland "[bedrock] FindAllTabbedBrowsersWithProfile() function call point refactoring"

    This is a reland of commit e1e46c26f73c2b52e384e7ea0b59d312ab6399c5

    The original CL was reverted because it caused
    ActorLoadAndExtractContentToolBrowserTest.WindowClosedPrematurely to
    fail on linux-wayland-mutter-rel-tests.

    Root cause: GetActiveWindowId() used ProfileBrowserCollection::ForEach()
    with the default kCreation order. On Wayland, when a new browser window
    is shown via BrowserView::Show(), DidBecomeActive() is called
    synchronously for the new window, but DidBecomeInactive() for the
    previous window only fires asynchronously when the compositor sends a
    "lost focus" event. This means both windows can have IsActive()==true
    simultaneously. With kCreation order, the older (wrong) window was found
    first. The original FindAllTabbedBrowsersWithProfile() iterated in
    activation order, so the most recently shown window was always checked
    first.

    Fix: Pass BrowserCollection::Order::kActivation to ForEach() in
    GetActiveWindowId() to match the original iteration order.

    Also re-enables the WindowClosedPrematurely test on Linux, which was
    disabled by a gardener after the original CL landed.

    Patchset 3 fixes the issue and has been verified locally by running the
    test 50 times under mutter/Wayland without failure.

    Original change's description:
    > [bedrock] FindAllTabbedBrowsersWithProfile() function call point refactoring
    >
    > Migrate all non-test call sites of FindAllTabbedBrowsersWithProfile()
    > from Browser* to BrowserWindowInterface*, adapting downstream method
    > calls accordingly.
    >
    > Call sites migrated:
    > - actor_proto_conversion.cc: session_id() → GetSessionID()
    > - load_and_extract_content_tool_request.cc: session_id() → GetSessionID()
    > - tab_sensitivity_cache.cc: tab_strip_model() → GetTabStripModel()
    >
    > The function still returns std::vector<Browser*>; each call site uses
    > BrowserWindowInterface* as the range-based for loop variable, relying
    > on the implicit upcast from Browser* to BrowserWindowInterface*.
    >
    > Bug: 431671320
    > Change-Id: Ie621746798e54642981b5d2330a653a5f2501821
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7665417
    > Auto-Submit: Yu He <yhe@microsoft.com>
    > Reviewed-by: Qikai Zhong <qikaizhong@microsoft.com>
    > Reviewed-by: Tom Lukaszewicz <tluk@chromium.org>
    > Commit-Queue: Qikai Zhong <qikaizhong@microsoft.com>
    > Cr-Commit-Position: refs/heads/main@{#1600308}

    Bug: 431671320
    Change-Id: I35bd2cc00fc4411c61570be4b906dc3b4dab5dba
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7678191
    Reviewed-by: Qikai Zhong <qikaizhong@microsoft.com>
    Commit-Queue: Tom Lukaszewicz <tluk@chromium.org>
    Reviewed-by: Tom Lukaszewicz <tluk@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1602148}
2026-05-22 16:24:57 -04:00
Claudio DeSouza 82a6cc677d [cr149] MV2DeprecationImpactChecker moved and ctor changed
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/b11ac9f51e136dd9f345c3f9f79b83aca5d6cb1f

commit b11ac9f51e136dd9f345c3f9f79b83aca5d6cb1f
Author: Miyoung shin <myid.shin@igalia.com>
Date:   Tue Apr 14 17:37:04 2026 -0700

    Move MV2DeprecationImpactChecker to //extensions

    This CL relocate MV2DeprecationImpactChecker to //extensions since
    it no longer depends on //chrome.

    Bug: 358567092
    Change-Id: Ie50342cb170f33ff1b2ae5981d6f556c134c0ac8
    Bypass-Check-License: Moving files
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7736242
    Reviewed-by: Devlin Cronin <rdevlin.cronin@chromium.org>
    Commit-Queue: Miyoung Shin <myid.shin@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#1614819}
2026-05-22 16:24:57 -04:00
Claudio DeSouza cb4ca01cfc [cr149] ActorTask::AddTab asks on-dettach behaviour for tab
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c93c5d88e4f60a6586e10ff1ce4a8feeaf3f4248

commit c93c5d88e4f60a6586e10ff1ce4a8feeaf3f4248
Author: Chris Fredrickson <cfredric@chromium.org>
Date:   Wed Apr 15 12:37:06 2026 -0700

    Add LoadAndExtractContent's tabs to ActorTask's tab set

    This ensures that LoadAndExtractContent does not bypass the enterprise
    policy blocklist, sensitive site list, or static navigation blocklist.

    This CL also adds the ability to add a tab to the controlled tabs set
    without stopping the ActorTask when that tab is detached/closed. This is
    needed for the ephemeral tabs created by the LoadAndExtractContent tool.

    Fixed: 497342466
    Change-Id: I355e2bc4ab9a27d52281de10ce6bdc98b50cc43a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7727485
    Reviewed-by: Jeremy Roman <jbroman@chromium.org>
    Auto-Submit: Chris Fredrickson <cfredric@chromium.org>
    Reviewed-by: Avi Drissman <avi@chromium.org>
    Commit-Queue: Chris Fredrickson <cfredric@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1615339}
2026-05-22 16:24:57 -04:00
Claudio DeSouza efd6458b00 [cr149] BrowserListObserver deleted
All classes are being migrated to BrowserCollectionObserver.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/2ebf7353bb2535b6121d1a26340d3f4e74046e42

commit 2ebf7353bb2535b6121d1a26340d3f4e74046e42
Author: Thomas Lukaszewicz <tluk@chromium.org>
Date:   Tue Apr 14 21:51:30 2026 -0700

    [bedrock] Remove BrowserListObserver

    Bug: 431671320
    Change-Id: Iff946bf520ab44049c855d91576ef53ca1916e00
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7744448
    Reviewed-by: Qikai Zhong <qikaizhong@microsoft.com>
    Commit-Queue: Thomas Lukaszewicz <tluk@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1614935}
2026-05-22 16:24:57 -04:00
Claudio DeSouza d422395bce [cr149][WIP] Fixing @typescript-eslint/no-explicit-any warnings
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/8f97262a2cc5aa37fcd710c3c141eb7f08c01f92

commit 8f97262a2cc5aa37fcd710c3c141eb7f08c01f92
Author: dpapad <dpapad@chromium.org>
Date:   Wed Apr 15 15:03:48 2026 -0700

    WebUI: Enable @typescript-eslint/no-explicit-any where possible.

    Since there are too many violations across the codebase, enabling this
    check by default will take a while. Instead of waiting until all
    violations are fixed before the check is enabled anywhere, enabling it
    for all targets that already don't exhibit any violations.

    As the remaining offending targets are fixed they will be removed from
    the exception list to ensure they can no longer regress after being
    fixed.

    The new check is skipped on Ash-only WebUI targets for now.

    Bug: 494464740
    Change-Id: Iadaa8718b1bb6e0188b80615cf2aff4ec3193588
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7763564
    Reviewed-by: John Lee <johntlee@chromium.org>
    Commit-Queue: Demetrios Papadopoulos <dpapad@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1615435}
2026-05-22 16:24:56 -04:00
Claudio DeSouza f783ea1495 [cr149] SettingSource::kTpcdGrant deleted
This was being passed along in a place, which can be easily deleted, and
in another place it was being used as a macro anchor, which has been
corrected.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/4f6f66374bd8fb36de59c75b329361eb1f4a0396

commit 4f6f66374bd8fb36de59c75b329361eb1f4a0396
Author: Fiona Macintosh <fmacintosh@google.com>
Date:   Wed Apr 15 01:49:38 2026 -0700

    Delete remaining obsolete 3PCD-related enum values

    Removes k3PCDMetadata, kTpcdGrant, kEnforcedByTpcdGrant

    Change-Id: Id9f3ac6fc20334ade63e62bb01d823396ea30a01
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7749186
    Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
    Commit-Queue: Judith Hemp <hempjudith@google.com>
    Reviewed-by: Judith Hemp <hempjudith@google.com>
    Auto-Submit: Fiona Macintosh <fmacintosh@google.com>
    Reviewed-by: Maks Orlovich <morlovich@chromium.org>
    Reviewed-by: Christian Dullweber <dullweber@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1615003}
2026-05-22 16:24:56 -04:00
Claudio DeSouza 92d5f95f44 [cr149] WebString::FromUTF8 renamed to FromUTF8
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/98defbb5fe4cd74acc53e9f8d3b3ad9443adda65

commit 98defbb5fe4cd74acc53e9f8d3b3ad9443adda65
Author: Kent Tamura <tkent@chromium.org>
Date:   Wed Apr 15 01:28:25 2026 -0700

    Reland "Remove blink::WebString::FromUTF8()"

    This is a reland of commit 64bea51a34e9a0f68769c2275e939d986f918495

    Differences from the original commit:
    Update `FromUTF8()` in the following files too:
    * chromecast/renderer/activity_filtering_websocket_handshake_throttle.cc
    * components/translate/content/renderer/translate_agent.cc
    * third_party/blink/renderer/core/script_tools/model_context_test.cc

    Original change's description:
    > Remove blink::WebString::FromUTF8()
    >
    > We prefer FromUtf8().
    > This CL has no behavior changes.
    >
    > Bug: 492927412
    > Change-Id: I3976e85012e2189dd4377a7cd49148771970d158
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7760402
    > Commit-Queue: Fredrik Söderquist <fs@opera.com>
    > Owners-Override: Kent Tamura <tkent@chromium.org>
    > Auto-Submit: Kent Tamura <tkent@chromium.org>
    > Reviewed-by: Fredrik Söderquist <fs@opera.com>
    > Cr-Commit-Position: refs/heads/main@{#1614316}

    Bug: 492927412
    Change-Id: I36fa1420e10759ad581bf8d2ccf7552831e10205
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7760406
    Reviewed-by: Fredrik Söderquist <fs@opera.com>
    Commit-Queue: Kent Tamura <tkent@chromium.org>
    Commit-Queue: Fredrik Söderquist <fs@opera.com>
    Owners-Override: Kent Tamura <tkent@chromium.org>
    Auto-Submit: Kent Tamura <tkent@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1614993}
2026-05-22 16:24:56 -04:00
Artem Samoilenko aad5b0bfa2 [cr149][Android] Changes for TabbedAdaptiveToolbarBehavior
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/bf83a63ce609a05fa1cbd9ad85b37920c3aa9e8d

commit bf83a63ce609a05fa1cbd9ad85b37920c3aa9e8d
Author: Hailey Wang <haileywang@google.com>
Date:   Mon Apr 13 15:16:05 2026 -0700

    [Glic] Make toggleGlic callback accept a boolean

    Bug: 498721993
    Change-Id: Ide0b83be60599c4ffa7c1b1e18d2340d2e6feab1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7747038
    Commit-Queue: Hailey Wang <haileywang@google.com>
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1614006}
2026-05-22 16:24:55 -04:00
Artem Samoilenko 24e1cd6e6f [cr149][Android] Changes for new SigninManager functions
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/3d0c9d82ee2db1ddbfab415e5bcb0d2e9515ff75

commit 3d0c9d82ee2db1ddbfab415e5bcb0d2e9515ff75
Author: Samar <samarchehade@google.com>
Date:   Mon Apr 13 14:00:14 2026 -0700

    [Signin][Android] Centralize check for whether to display the UI.

    This allows us to remove some unnecessary dependencies on the signin
    manager and makes it easier to modify the logic when needed in the long
    run.

    Bug: 467707243
    Change-Id: Id2740956e5ead126bf1b8527681608c768a97abc
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7707362
    Reviewed-by: Patrick Noland <pnoland@chromium.org>
    Commit-Queue: Samar Chehade <samarchehade@google.com>
    Reviewed-by: Lucia Giorgi <quacksort@google.com>
    Reviewed-by: Tanmoy Mollik <triploblastic@google.com>
    Cr-Commit-Position: refs/heads/main@{#1613961}
2026-05-22 16:24:55 -04:00
Artem Samoilenko dc6be03b0d [cr149] Modularize //chrome/browser/net
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/888790ca73faf676cc240d61c2e9991acea73de6

commit 888790ca73faf676cc240d61c2e9991acea73de6
Author: Erik Chen <erikchen@chromium.org>
Date:   Mon Apr 13 12:48:43 2026 -0700

    Modularize //chrome/browser/net

    Extract chrome/browser/net sources from the monolithic
    chrome/browser:browser static_library into dedicated :net (public
    headers) and :impl (sources) targets in chrome/browser/net/BUILD.gn.
    Update all dependent BUILD.gn files across chrome/browser and other
    components to depend on the new targets.

    Bug: 353332589
    Change-Id: Ibae86cdd78e6566f4688559c864baea61ae16833
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7748201
    Reviewed-by: Thomas Lukaszewicz <tluk@chromium.org>
    Reviewed-by: Joe Downing <joedow@chromium.org>
    Commit-Queue: Erik Chen <erikchen@chromium.org>
    Reviewed-by: Lei Zhang <thestig@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1613915}
2026-05-22 16:24:55 -04:00
Claudio DeSouza d1e78d9694 [cr149] Fixing unwanted Init substitution
Due to transient header inclusions and with `Init` being a common token,
we've got another unwanted substitution which this preemptive header
inclusion prevents.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/979202122d8d2ae3fffd4ffc027bdb86b78b7232

commit 979202122d8d2ae3fffd4ffc027bdb86b78b7232
Author: Qingxin Wu <qingxinwu@google.com>
Date:   Tue Apr 14 05:40:00 2026 -0700

    [WebUI LLBC] Introduce PermissionChip Interfaces.

    This CL is Phase 1 of decoupling the Left-Hand Side (LHS) location bar
    chips from native Views, preparing for a WebUI implementation.

    It introduces an abstract interfaces: `PermissionChipInterface`.

    The native `PermissionChipView` now inherit from this interface. C++
    controllers (`ChipController` and `PermissionDashboardController`) have
    been refactored to hold pointers to the interfaces rather than concrete
    View classes.

    Bug: 495419742
    Change-Id: I8451110f6c28d267528fa8ed2ead22dbb485e0a9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7705932
    Reviewed-by: Maks Orlovich <morlovich@chromium.org>
    Reviewed-by: Paul Jensen <pauljensen@chromium.org>
    Reviewed-by: Elias Klim <elklm@chromium.org>
    Reviewed-by: Thomas Lukaszewicz <tluk@chromium.org>
    Commit-Queue: Qingxin Wu <qingxinwu@google.com>
    Cr-Commit-Position: refs/heads/main@{#1614388}
2026-05-22 16:24:55 -04:00
Claudio DeSouza 68624bc8be [cr149] GetAppMenuControl() removed from ToolbarView
We are now accessing this value through a private accessor with the
parent class.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/0800caaa61eb1b551c622e41025def941ea6f0c9

commit 0800caaa61eb1b551c622e41025def941ea6f0c9
Author: Youssef Bourouphael <ybourouphael@google.com>
Date:   Tue Apr 14 06:30:17 2026 -0700

    Refactor: Extract AppMenuControl interface

    This change extracts the core functionalities of the app menu button
    into a new `AppMenuControl` interface.

    - Introduced `AppMenuControl` interface defining methods to interact with the app menu button.
    - Updated `AppMenuButton` to implement the new `AppMenuControl` interface.
    - Modified `ToolbarButtonProvider` to expose the `AppMenuControl` interface instead of directly returning `AppMenuButton`.
    - Migrated all call sites that previously accessed `AppMenuButton` directly to use the `AppMenuControl` interface.
    - Updated bubble anchoring logic to utilize `views::BubbleAnchor`, allowing for more flexible anchoring options.
    - Many existing calls to `GetAppMenuButton()` were migrated to use `views::ElementTrackerViews` to get the button view.

    This refactoring is a prerequisite for future work on a Web UI version
    of the app menu.

    Bug: 470045312
    Change-Id: I01d722ad76687e0f1e409f04a4feef4d0386540e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7722207
    Reviewed-by: Paul Jensen <pauljensen@chromium.org>
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Commit-Queue: Youseff Bourouphel <ybourouphael@google.com>
    Cr-Commit-Position: refs/heads/main@{#1614401}
2026-05-22 16:24:54 -04:00
Claudio DeSouza 8771818344 [cr149] extension_allowlist.h moved to new path
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/925b145d425b369c3c71dea1d266b25569a84b60

commit 925b145d425b369c3c71dea1d266b25569a84b60
Author: Miyoung shin <myid.shin@igalia.com>
Date:   Tue Apr 14 02:05:32 2026 -0700

    Move ExtensionAllowlist to //extensions

    This CL relocate ExtensionAllowlist to //extensions since it no
    longer depends on //chrome.

    Bug: 358567092
    Change-Id: I5af107be7b7506123ee53b755eb2da4f6e128cb6
    Bypass-Check-License: Moving files
    Low-Coverage-Reason: TRIVIAL_CHANGE
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7724912
    Commit-Queue: Miyoung Shin <myid.shin@igalia.com>
    Reviewed-by: Devlin Cronin <rdevlin.cronin@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1614325}
2026-05-22 16:24:54 -04:00
Claudio DeSouza 3e5f041d1b [cr149] mv2_experiment_stage.h changed path
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/277ef269ab36909b8f8e0408942855fc67de1a86

commit 277ef269ab36909b8f8e0408942855fc67de1a86
Author: Miyoung shin <myid.shin@igalia.com>
Date:   Mon Apr 13 22:37:48 2026 -0700

    Move mv2_experiment_stage.h to //extensions

    This CL relocate mv2_experiment_stage.h to //extensions since it no
    longer depends on //chrome.

    Bug: 358567092
    Change-Id: I8184bdfcdb3e6cc1dd60e310687f3f5a7b43bd5b
    Bypass-Check-License: Moving files
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7738462
    Commit-Queue: Miyoung Shin <myid.shin@igalia.com>
    Reviewed-by: Devlin Cronin <rdevlin.cronin@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1614234}
2026-05-22 16:24:54 -04:00
Max Karolinskiy 1d51d34e40 [cr149] chrome/browser/ui/test/ was componentized.
We don't need to add test_browser_dialog_mac.h|mm into
brave_browser_tests directly because they are now built by
chrome/browser/ui/test:dialog target which is pulled into our executable
via

//brave/test:brave_browser_tests --[public]-->
//brave/test:browser_tests_runner --[public]-->
//brave/test:browser_test_support --[public]-->
//chrome/test:test_support --[public]-->
//chrome/test:test_support_ui --[public]-->
//chrome/browser/ui/test:dialog

Chromium change:
https://source.chromium.org/chromium/chromium/src/+/e0cd9afb25e911c62c8c096ef55816bd9e3b665e

commit e0cd9afb25e911c62c8c096ef55816bd9e3b665e
Author: Tiago Vignatti <tvignatti@igalia.com>
Date:   Thu Apr 9 07:28:31 2026 -0700

    Componentize chrome/browser/ui/test/

    This changes create chrome/browser/ui/test/BUILD.gn with dedicated
    targets for all test files in this directory, which were previously
    scattered across chrome/test/BUILD.gn and chrome/browser/ui/BUILD.gn.
    Some of the files were duplicated in multiple targets, and has now
    fixed.

    New targets:
    - :dialog — moved from //chrome/test:test_support and de-duplicated from
      browser_tests/interactive_ui_tests
    - :closed_waiter — moved from //chrome/test:test_support_ui
    - :test_support — de-duplicated and moved from browser_tests,
      interactive_ui_tests, and //chrome/browser/ui:test_support
    - :confirm_bubble — moved from //chrome/browser/ui:test_support
    - :browser_tests — browser test files
    - :interactive_ui_tests — interactive UI test files
    - :app_window — moved from //chrome/browser/ui:test_support

    Bug: 353332589
2026-05-22 16:24:54 -04:00
Max Karolinskiy e5dd72c66a [cr149] Filter upstream tests as needed. 2026-05-22 16:24:53 -04:00
Claudio DeSouza e676e448a9 [cr149] SetCanonicalCookieAsync dropping default arg value
This is just a mirror of the change in upstream.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/4d84d8a0cdb1b946de455ec1f511c7205f9b27ab

commit 4d84d8a0cdb1b946de455ec1f511c7205f9b27ab
Author: Chris Fredrickson <cfredric@chromium.org>
Date:   Mon Apr 13 02:15:19 2026 -0700

    Remove default args from CookieStore virtual methods

    Virtual methods are forbidden to have default arguments by the style
    guide
    (https://google.github.io/styleguide/cppguide.html#Default_Arguments).

    Change-Id: I42528f3dd0aa2750cd6a1d773e53f6f4d5fc3891
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7726975
    Reviewed-by: Joey Arhar <jarhar@chromium.org>
    Auto-Submit: Chris Fredrickson <cfredric@chromium.org>
    Reviewed-by: Rohit Rao <rohitrao@chromium.org>
    Commit-Queue: Victor Vianna <victorvianna@google.com>
    Reviewed-by: Richard (Torne) Coles <torne@chromium.org>
    Reviewed-by: Victor Vianna <victorvianna@google.com>
    Cr-Commit-Position: refs/heads/main@{#1613572}
2026-05-22 16:18:10 -04:00
Claudio DeSouza 2541494417 [cr149] CookieMonster test-only ctor with reduced visibility
This ctor was not meant to be used in production, and now it is being
locked down with a passkey to avoid to accidental uses.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/fa56e60fe80ac8560c65cbf660cd8254fb701d8a

commit fa56e60fe80ac8560c65cbf660cd8254fb701d8a
Author: Chris Fredrickson <cfredric@chromium.org>
Date:   Mon Apr 13 08:59:55 2026 -0700

    Restrict visibility of test-only CookieMonster ctor

    This makes it either a compiler-error or a presubmit warning to use the
    test-only ctor inappropriately.

    Change-Id: I549948fc78258f18abb0a4bbacf48e91cd74b83a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7727488
    Reviewed-by: Maks Orlovich <morlovich@chromium.org>
    Auto-Submit: Chris Fredrickson <cfredric@chromium.org>
    Commit-Queue: Chris Fredrickson <cfredric@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1613764}
2026-05-22 16:18:10 -04:00
Claudio DeSouza 926443bba6 [cr149] TestBrowserClosedWaiter deleted
This change only removes a inclusion to the header for this class that
was left behind in our code.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/dd0cca1d9573996058b06159d99ef55904eae2a0

commit dd0cca1d9573996058b06159d99ef55904eae2a0
Author: Tiago Vignatti <tvignatti@igalia.com>
Date:   Mon Apr 13 05:30:29 2026 -0700

    Remove deprecated TestBrowserClosedWaiter

    Delete TestBrowserClosedWaiter and migrate all callers to use
    ui_test_utils::BrowserDestroyedObserver directly, as the class
    was already marked deprecated. The ASSERT_TRUE wrappers around
    WaitUntilClosed() are dropped since it unconditionally returned
    true.

    This also removes the circular dependency between
    //chrome/browser/ui/test:closed_waiter and
    //chrome/test:test_support_ui.

    Bug: 353332589
    Change-Id: I2685dba2a589870fcf1e6639f511932b2a051178
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7706499
    Reviewed-by: Darryl James <dljames@chromium.org>
    Commit-Queue: Tiago Vignatti <tvignatti@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#1613640}
2026-05-22 16:18:10 -04:00
Claudio DeSouza 3fc0b8733b [cr149] GetIndexOfExistingTab deleted
This function has been replaced with a more accurately named one,
`GetIndexOfExistingTabMatchingURL`, which has been declared in a
different header.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/3d5e08bc7b5649ff297b7a4026224b1040328de5

commit 3d5e08bc7b5649ff297b7a4026224b1040328de5
Author: Jack Thiesen <jthiesen@chromium.org>
Date:   Mon Apr 13 13:14:15 2026 -0700

    Move Navigation Helpers to Shared Location

    WML's Navigate() implementation relies on helpers inside of
    singleton_tabs.h that are not strictly used for singleton tabs and are
    not used by other code. This change updates these helpers to use
    platform-agnostic abstractions and moves them to a location that allows
    for easy sharing between platforms. New unit tests are added.

    Bug: 469764907
    Change-Id: I7f503ea505adc480037e363abe8534f38e7c8d7b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7747634
    Commit-Queue: Jack Thiesen <jthiesen@chromium.org>
    Reviewed-by: Elly <ellyjones@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1613927}
2026-05-22 16:18:09 -04:00
Claudio DeSouza 7dc349365c [cr149] FindLastActive returning BrowserWindowInterface
This change corrects several cascading places where passing
`BrowserWindowInterface` is already feasible. It also further corrects
some cases `Browser*` and `Profile*` were being passed alongside each
other, which is redundant.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c6268a491040e14ca749fb2ba8fb131ab7512f87

commit c6268a491040e14ca749fb2ba8fb131ab7512f87
Author: Kun Wang <kunwang@microsoft.com>
Date:   Sun Apr 12 23:56:11 2026 -0700

    [bedrock] Migrate FindLastActive Step 1

    Bug:494010890

    Change-Id: I52727f56f3e6172515e3f053a74cb81947c9b8f0
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7743380
    Reviewed-by: Tom Lukaszewicz <tluk@chromium.org>
    Reviewed-by: Hidehiko Abe <hidehiko@chromium.org>
    Commit-Queue: Kun Wang <kunwang@microsoft.com>
    Reviewed-by: Qikai Zhong <qikaizhong@microsoft.com>
    Cr-Commit-Position: refs/heads/main@{#1613517}
2026-05-22 16:18:09 -04:00
Claudio DeSouza 213462eaae [cr149][rust] hashbrown updated to 0.17.0
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/f7733a1032027ad3625e8356db8eab4490572128

commit f7733a1032027ad3625e8356db8eab4490572128
Author: Manish Goregaokar <manishearth@google.com>
Date:   Mon Apr 13 11:27:44 2026 -0700

    Roll indexmap: 2.13.1 => 2.14.0 in //third_party/rust.

    This CL has been created semi-automatically.  The expected review
    process and other details can be found at
    //tools/crates/create_update_cl.md

    Updated crates:

    * indexmap: 2.13.1 => 2.14.0; https://docs.rs/crate/indexmap/2.14.0

    New crates:

    * hashbrown@0.17.0; https://docs.rs/crate/hashbrown/0.17.0

    Removed crates:

    * hashbrown@0.16.1; https://docs.rs/crate/hashbrown/0.16.1

    Bug: None
    Cq-Include-Trybots: chromium/try:android-rust-arm32-rel
    Cq-Include-Trybots: chromium/try:android-rust-arm64-dbg
    Cq-Include-Trybots: chromium/try:android-rust-arm64-rel
    Cq-Include-Trybots: chromium/try:linux-rust-x64-dbg
    Cq-Include-Trybots: chromium/try:linux-rust-x64-rel
    Cq-Include-Trybots: chromium/try:win-rust-x64-dbg
    Cq-Include-Trybots: chromium/try:win-rust-x64-rel
    Disable-Rts: True
    Change-Id: I7f0b56f556a564befd67b51f91a4a4668407ab77
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7756739
    Auto-Submit: Manish Goregaokar <manishearth@google.com>
    Reviewed-by: Daniel Rubery <drubery@chromium.org>
    Commit-Queue: Manish Goregaokar <manishearth@google.com>
    Cr-Commit-Position: refs/heads/main@{#1613872}
2026-05-22 16:18:09 -04:00
Max Karolinskiy 01bcb265a5 [cr149] Explicitly allow reentrancy for AdsClientNotifierObserver.
Chromium change:
https://chromium.googlesource.com/chromium/src.git/+/83dc1d0f04002ced129aeae4a63de7069b43cfba

commit 83dc1d0f04002ced129aeae4a63de7069b43cfba
Author: Mitsuru Oshima <oshima@chromium.org>
Date:   Tue Apr 7 23:06:31 2026 -0700

    Disable reentrancy by default except for Android and iOS

    Android and iOS needs more work but I need help from platform
    expert as the readable stack isn't available.
    (see crrev.com/c/7604991)

    Include-Ci-Only-Tests: chromium.mac:mac15-x64-rel-tests|browser_tests
    Bug: 40562847, 484371187
2026-05-22 16:18:08 -04:00
Max Karolinskiy 9333f61d91 [cr149] Explicitly allow reentrancy for ai_chat::ToolProvider::Observer
Chromium change:
https://chromium.googlesource.com/chromium/src.git/+/83dc1d0f04002ced129aeae4a63de7069b43cfba

commit 83dc1d0f04002ced129aeae4a63de7069b43cfba
Author: Mitsuru Oshima <oshima@chromium.org>
Date:   Tue Apr 7 23:06:31 2026 -0700

    Disable reentrancy by default except for Android and iOS

    Android and iOS needs more work but I need help from platform
    expert as the readable stack isn't available.
    (see crrev.com/c/7604991)

    Include-Ci-Only-Tests: chromium.mac:mac15-x64-rel-tests|browser_tests
    Bug: 40562847, 484371187
2026-05-22 16:18:08 -04:00
Max Karolinskiy 9fd3ad630d [cr149] Reanchor override in HandleClearBrowsingData.
The symbol we used to anchor the override is now used elsewhere in the
file.

Chromium change:
https://chromium.googlesource.com/chromium/src.git/+/2dd959bfa7b3d

commit 2dd959bfa7b3d307941fb29e3a479f067262762d
Author: Steven Luong <stluong@chromium.org>
Date:   Thu Apr 9 15:08:16 2026 -0700

    [CUJService] Add journey tracking clear browser history

    Adds the user journey to track when the browser history is cleared via
    the app menu button or through the keyboard accelerator.

    Fixed: 495493456
2026-05-22 16:18:08 -04:00
Artem Samoilenko 0084f40607 [cr149][Android] Changes for null-annotation of RootUiCoordinator
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/be6d55a5fb2031ad63aad40de4bd47244f98ba77

commit be6d55a5fb2031ad63aad40de4bd47244f98ba77
Author: Henrique Nakashima <hnakashima@chromium.org>
Date:   Fri Apr 10 08:56:51 2026 -0700

    [Android] Null-annotate RootUiCoordinator (part 18)

    Fix 1 NullAway error due to:
    - mMerchantTrustSignalsCoordinatorSupplier

    Down to 0 errors!

    Bug: 485252552
    Change-Id: I9eae5b7906ea55e036290557fd877022af78eebb
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7736236
    Owners-Override: Andrew Grieve <agrieve@chromium.org>
    Reviewed-by: Andrew Grieve <agrieve@chromium.org>
    Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1612901}
2026-05-22 16:18:08 -04:00
Artem Samoilenko e8331ad5e4 [cr149][Android] Changes for removal of unused add|removeMostVisitedTileClickObserver
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/af52507108c6fe0f7cfda495aee2d256194266f2

commit af52507108c6fe0f7cfda495aee2d256194266f2
Author: Xi Han <hanxi@google.com>
Date:   Fri Apr 10 06:44:17 2026 -0700

    [NtpRefacotr] Remove unused add|removeMostVisitedTileClickObserver.

    Bug: 487641528
    Change-Id: Ia160a61ed693ddcd779b6936dfd28be057df2832
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7746025
    Reviewed-by: Xinyi Ji <xinyiji@chromium.org>
    Auto-Submit: Xi Han <hanxi@chromium.org>
    Commit-Queue: Xi Han <hanxi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1612819}
2026-05-22 16:18:08 -04:00
Claudio DeSouza c538264b6e [cr149] Adding missing push_messaging component
These sources were recently componentised.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/da1937096d3b9787f6c746cfe3e0ca38d9fa13c2

commit da1937096d3b9787f6c746cfe3e0ca38d9fa13c2
Author: Orko Garai <orko@igalia.com>
Date:   Fri Apr 10 14:39:46 2026 -0700

    Finish modularizing c/b/push_messaging

    Move the remaining push_messaging sources from c/b to
    c/b/push_messaging target.

    Cq-Include-Trybots: luci.chromium.try:android-cast-arm-rel

    Bug: 353332589
    Change-Id: I3a6d5767060edf283015835d1baa550990f60fcd
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7718621
    Commit-Queue: Orko Garai <orko@igalia.com>
    Reviewed-by: Darryl James <dljames@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1613110}
2026-05-22 16:18:07 -04:00
Claudio DeSouza 3c6b2847e1 [cr149] ESLint fixes for reactive properties
All the fixes in this change are cases where we are converting a
property to a function as more appropriate.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/9d25d0387044e57a67892521a2863a87c31b9cc9

commit 9d25d0387044e57a67892521a2863a87c31b9cc9
Author: rbpotter <rbpotter@chromium.org>
Date:   Thu Apr 9 23:38:18 2026 -0700

    WebUI: Validate that properties referenced in Lit template are reactive

    Adding an automated check to ensure that if a class property
    "this.someProp" is referenced in the HTML template, it is also properly
    declared as a reactive property so that Lit will re-render the element
    correctly when it changes.

    Bug: 500066216
    Change-Id: Ieb9989fc672d03cb2b20f2bd43301a688b42f270
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7731479
    Commit-Queue: Rebekah Potter <rbpotter@chromium.org>
    Reviewed-by: Demetrios Papadopoulos <dpapad@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1612640}
2026-05-22 16:18:07 -04:00
Max Karolinskiy 4c268a4ba1 [cr149][iOS] IWYU. 2026-05-22 16:18:07 -04:00
Max Karolinskiy 7068a632b8 [cr149][iOS] ML-DSA signature algorithms added to bssl.
Chromium change:
https://source.chromium.org/chromium/_/boringssl/boringssl/+/a99f83a8a5856561f9af7d40efbed4b75287137c

commit a99f83a8a5856561f9af7d40efbed4b75287137c
Author: Nick Harper <nharper@chromium.org>
Date:   Tue Mar 31 23:12:37 2026 +0000

    Support ML-DSA in verify_signed_data.cc

    This is a prerequisite for libpki supporting ML-DSA certs, but on its
    own does not enable that, because the IsPublicKeyAcceptable delegate
    needs to accept ML-DSA public keys.

    Bug: 497882859
2026-05-22 16:18:06 -04:00
Max Karolinskiy afe69cdec6 [cr149][iOS] Autofill UI utils moved.
Chromium change:
https://chromium.googlesource.com/chromium/src.git/+/4ea909abd3a14

commit 4ea909abd3a14b4f8def504120ac4b267244c66a
Author: YiwenQian <yiwenqian@google.com>
Date:   Tue Apr 7 17:59:36 2026 -0700

    [Scancard IOS] Relocate Autofill UI utilities for better sharing

    This CL moves Autofill UI utility files to dedicated or shared locations
    to improve codebase structure and allow sharing between settings and
    other Autofill features.

    - Moved `autofill_credit_card_util` (.h/.mm), `autofill_settings_util` (.h/.mm) and its unit test to `ios/chrome/browser/autofill/ui_bundled/util/`.
    - Updated all referencing `BUILD.gn` files and `#import` statements across the codebase.

    Bug: 484102792
2026-05-22 16:18:06 -04:00
Max Karolinskiy 28926fda9f [cr149] //chrome/browser/ui/cocoa was modularized.
Chromium change:
https://chromium.googlesource.com/chromium/src.git/+/8ae932c696b02

commit 8ae932c696b025ee7fe02fa650d9438f7936a696
Author: Erik Chen <erikchen@chromium.org>
Date:   Thu Apr 9 12:01:18 2026 -0700

    Reland 1: Modularize //chrome/browser/ui/cocoa

    The initial CL broke chrome-branded builds on CI.

    > Modularize //chrome/browser/ui/cocoa
    >
    > Extract the cocoa UI sources from //chrome/browser/ui:ui into a new
    > //chrome/browser/ui/cocoa build target. Update all dependent BUILD.gn
    > files to add the new dependency and allow circular includes where
    > needed.
    >
    > Bug: 353332589
2026-05-22 16:18:06 -04:00
Max Karolinskiy cbc460a935 [cr149] ShouldShowSyncPromo removed from signin_promo_util.
The content of the function was inlined into call sites.
We already override both call sites with returning false, so
we can just remove our override of ShouldShowSyncPromo.

Chromium change:
https://chromium.googlesource.com/chromium/src.git/+/461ee6c1264e2

commit 461ee6c1264e2cc599182c2562d24445778a21ad
Author: Paris <pmeuleman@chromium.org>
Date:   Thu Apr 9 06:26:36 2026 -0700

    Decouple sign-in promos from legacy sync checks

    This patch removes ShouldShowSyncPromo and inlines its core validation
    logic directly into ShouldShowSignInPromoCommon to simplify the sign-in
    promo infrastructure.

    Removing the explicit ConsentLevel::kSync check is safe because
    ShouldShowSignInPromoCommon relies on signin_util::GetSignedInState(),
    which already suppresses the promo for users who are syncing or
    sync-paused.

    Additionally, this cleanup removes redundant platform guards (#if
    !BUILDFLAG(IS_ANDROID) and #if BUILDFLAG(IS_CHROMEOS)) since the code is
    already compiled only when ENABLE_DICE_SUPPORT is true (which is false
    on Android and ChromeOS).

    Bug: 40890809
2026-05-22 16:18:06 -04:00
Max Karolinskiy d0a0d82584 [cr149] rust_logger was split into smaller modules.
Also, verbose param has been removed from the print_rust_log function
signature.

Chromium changes:
https://chromium.googlesource.com/chromium/src.git/+/fafff21

commit fafff21030e1c11d6bbb1acccd6b28013cfd887f
Author: Lukasz Anforowicz <lukasza@chromium.org>
Date:   Tue Apr 7 17:28:03 2026 -0700

    [rust] Split the `rust_logger` crate into smaller modules.

    This helps to hide some implementation details as private items of
    the new, smaller modules.  In addition to moving the new modules into
    `//base/logging/rust_logger` subdirectory, this CL also moves tests
    into the same directory.  Summary of the changes/moves:

    * `base/logging/logger.rs` has been split into 4 modules:
        - `base/logging/rust_logger/lib.rs` (entry point via C API)
        - `base/logging/rust_logger/log_crate_integration.rs` and
          `base/logging/rust_logger/custom_panic_hook.rs`
        - `base/logging/rust_logger/print_rust_log.rs` (low-level
          implementation for invoking `LOG(...)` from Rust).
    * `base/logging/rust_log_integration.h/.cc` has been moved to
      `base/logging/rust_logger/print_rust_log_ffi.h/.cc`
    * `base/test/logging/test_rust_logger_consumer.rs` has been moved to
      `base/logging/rust_logger/test_support.rs`
    * `base/logging/rust_log_integration_unittest.cc` has been moved to
      `base/logging/rust_logger/unittests.cc`

    Bug: 495537792

https://chromium.googlesource.com/chromium/src.git/+/750f91c315307c59cb4f4b2445642e97187e620f

commit 750f91c315307c59cb4f4b2445642e97187e620f
Author: Lukasz Anforowicz <lukasza@chromium.org>
Date:   Wed Apr 8 16:25:46 2026 -0700

    [rust] Delete unfinished `VLOG(INFO)` <=> Rust integration.

    Bug: 495537792
2026-05-22 16:18:06 -04:00
Max Karolinskiy b8a38f2adf [cr149] chrome/browser/component_updater was modilarized.
Chromium change:

https://chromium.googlesource.com/chromium/src.git/+/c44b7b1a

commit c44b7b1ae99cd03bba9fcdb1047306de12a4809a
Author: Erik Chen <erikchen@chromium.org>
Date:   Tue Apr 7 09:42:24 2026 -0700

    [reland 1] Modularize chrome/browser/component_updater

    The initial landing failed a gn check out a configuration that is CI
    only (android-cast-arm-rel). This issue has been fixed.

    > Modularize chrome/browser/component_updater
    >
    > Extracts `chrome/browser/component_updater` sources out of the
    > monolithic `chrome/browser/BUILD.gn` into a new dedicated
    > `chrome/browser/component_updater/BUILD.gn`. The new file defines a
    > header-only `:component_updater` target and a separate `:impl` target
    > containing the `.cc`/`.mm` sources, following the standard split pattern
    > used elsewhere in `//chrome/browser`. Downstream `BUILD.gn` files across
    > `chrome/browser/` and `chrome/test/` are updated to depend on the new
    > targets directly.
    >
    > Bug: 353332589
2026-05-22 16:18:05 -04:00
Artem Samoilenko f754331198 [cr149][Android] Fixes for ParameterName warnings 2026-05-22 16:18:05 -04:00
Artem Samoilenko 28db03daf6 [cr149][Android] Fix for gn check on component_updater
Unlike upstream, we use RegisterZxcvbnDataComponent on Android as well, see chromium_src/chrome/browser/component_updater/registration.cc

Otherwise we have an error on check:
ERROR at //chrome/browser/component_updater/registration.cc:63:11: Include not allowed.
          ^-----------------------------------------------------------------
It is not in any dependency of
  //chrome/browser/component_updater:impl
The include file is in the target(s):
  //brave/browser/component_updater:zxcvbn_data_component_installer
which should somehow be reachable.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c44b7b1ae99cd03bba9fcdb1047306de12a4809a

commit c44b7b1ae99cd03bba9fcdb1047306de12a4809a
Author: Erik Chen <erikchen@chromium.org>
Date:   Tue Apr 7 09:42:24 2026 -0700

    [reland 1] Modularize chrome/browser/component_updater

    The initial landing failed a gn check out a configuration that is CI
    only (android-cast-arm-rel). This issue has been fixed.

    > Modularize chrome/browser/component_updater
    >
    > Extracts `chrome/browser/component_updater` sources out of the
    > monolithic `chrome/browser/BUILD.gn` into a new dedicated
    > `chrome/browser/component_updater/BUILD.gn`. The new file defines a
    > header-only `:component_updater` target and a separate `:impl` target
    > containing the `.cc`/`.mm` sources, following the standard split pattern
    > used elsewhere in `//chrome/browser`. Downstream `BUILD.gn` files across
    > `chrome/browser/` and `chrome/test/` are updated to depend on the new
    > targets directly.
    >
    > Bug: 353332589
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7712966
    > Reviewed-by: Tom Lukaszewicz <tluk@chromium.org>
    > Commit-Queue: Erik Chen <erikchen@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#1609648}

    Change-Id: Ibcefe56cd3af36d977ce6f42c83eca1e93737a25
    Cq-Include-Trybots: luci.chromium.try:android-cast-arm-rel
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7729243
    Reviewed-by: Tom Lukaszewicz <tluk@chromium.org>
    Reviewed-by: Darryl James <dljames@chromium.org>
    Commit-Queue: Erik Chen <erikchen@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1610826}
2026-05-22 16:18:05 -04:00
Artem Samoilenko ee0bf49c3c [cr149][Android] NTP vertical gaps for MVT
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/1527e1c0fa38dfb971603f9f59faf7de58c3f313

commit 1527e1c0fa38dfb971603f9f59faf7de58c3f313
Author: Samuel Huang <huangs@chromium.org>
Date:   Wed Apr 8 21:43:14 2026 -0700

    [Android NTP] Fix vertical gaps between adjacent main sections

    The New Tab Page (NTP) has multiple "sections" that are vertically
    stacked. Let's specify these with abbreviations:
    * FSB: Fake Search Box.
    * AIM: AI Mode Button + Incognito Button, AKA Composeplate.
    * MVT: Most Visited Tiles.
    * MS: Magic Stack, AKA New Tab Page Cards.
    * DF: Discovery Feed.

    Note that we're ignoring the Logo (above FSB) and promotion (e.g., for
    Sign in) sections.

    {MVT, MS, DF} may be absent sometimes:
    * NTP Customization can toggle {MVT, MS, DF}.
    * MS dynamically appears / disappears.

    AIM is now a permanent component of the layout and cannot be optionally
    removed.

    Let FSB-AIM be the vertical gap between the FSB bottom and AIM top.
    Similarly, define other spacings. Since {MVT, MS, DF} may be absent,
    there are 7 gap cases: FSB-AIM, AIM-{MVT,MS,DF}, MVT-{MS,DF}, MS-DF.

    Recently we found that these gap sizes are inconsistent. This CL fixes
    the inconsistency by making FSB-AIM = 8 dp, and everything else 16 dp:

      Gap          Old      Goal
      FSB-AIM     9 dp      8 dp
      AIM-MVT    25 dp     16 dp
      AIM-MS     18 dp     16 dp
      AIM-DF     18 dp     16 dp
      MVT-MS     16 dp     16 dp
      MVT-DF     16 dp     16 dp
       MS-DF     16 dp     16 dp

    Strategy:
    * Assign top margins to 12 dp for {FSB, MVT, MS, DF} and 4 dp for AIM.
    * Assign bottom margins to 4 dp. Previously this existed so that
      sections can expand to accommodate shadows. This is no longer
      needed, but we keep the margin anyway as buffer space.

    Note that 4 dp + 12 dp = 16 dp, which will be the standard spacing
    between sections; and the FSB-AIM exception is managed by 4 dp + 4 dp.

    In a previous CL (crrev.com/c/7603164), we removed the dynamic resizing
    logic that was previously required to accommodate the AIM view's shadow.
    With that logic removed, we can now rely entirely on these static
    margins, greatly simplifying the spacing definitions.

    Details:
    * For common dimensions define and use:
      @dimen/ntp_section_top_margin = 12 dp
      @dimen/ntp_section_bottom_margin = 4 dp
    * For AIM top margin define and use:
      @dimen/composeplate_view_margin_top = 4 dp
    * Define "padding" quantities to replace previous uses of
      section-specific "margin" quantities for padding.
    * Update ShowNtpAtStartupTest to expect the new standardized
      @dimen/ntp_section_bottom_margin on the MVT container.
    * Bump revisions in TabSwitcherLayoutPTTest and FeedV2NewTabPageTest to
      trigger Skia Gold rebaselines for the new spacing.

    Bug: 481717794
    Change-Id: I77adb4c8980a3bc2e0803a5b6cd0b2ac7a66d48a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7589698
    Commit-Queue: Samuel Huang <huangs@chromium.org>
    Reviewed-by: Brandon Wylie <wylieb@google.com>
    Reviewed-by: Xi Han <hanxi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1611969}
2026-05-22 16:18:05 -04:00
Artem Samoilenko 5a7d81f4d1 [cr149][Android] Clean up viewport from FeedSurfaceCoordinator
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/6e568c66f774e3be549348fd1805242fb7a7b0c6

commit 6e568c66f774e3be549348fd1805242fb7a7b0c6
Author: Xi Han <hanxi@google.com>
Date:   Tue Apr 7 12:03:25 2026 -0700

    [Feeds] Clean up viewport from FeedSurfaceCoordinator.

    The viewport is always null in FeedSurfaceCoordinator. Remove it to
    clean up.

    Bug: 487641528, 493844946
    Change-Id: I1219e1c7556254f5394e45d78ffe54072858ac2c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7736941
    Reviewed-by: Xinyi Ji <xinyiji@chromium.org>
    Commit-Queue: Xi Han <hanxi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1610924}
2026-05-22 16:18:04 -04:00
Claudio DeSouza a14306c238 [cr149] Fixing kPageActionProperties patching formating
Recent changes in upstream have changed the tabulation. Although this
has not caused any conflict when applying patches, this change updates
the plaster to better reflect the current desired patching.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/39f1fc11de89a81d446d6ee520973294a4023254

commit 39f1fc11de89a81d446d6ee520973294a4023254
Author: Ian Wells <iwells@chromium.org>
Date:   Tue Apr 7 09:48:58 2026 -0700

    Add contextual cueing v2 page action

    Contextual cueing v2 will show cues for a few different features, so
    while the page action is registered with the other browser actions, its
    icon, anchored message details and click handler aren't set until it's
    time to show a cue for a specific feature.

    Bug: 497231692
    Change-Id: I641e13d43661806a64759018a837f6fe316bfaac
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7732046
    Reviewed-by: Charlie Harrison <csharrison@chromium.org>
    Reviewed-by: Sophie Chang <sophiechang@chromium.org>
    Commit-Queue: Ian Wells <iwells@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1610829}
2026-05-22 16:18:04 -04:00
Claudio DeSouza 89f4eb930e [cr149] String::Substring renamed to DeprecatedSubstring
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c6f8d3ab428ec002d18b29ecd18c0c124b667e87

commit c6f8d3ab428ec002d18b29ecd18c0c124b667e87
Author: Kent Tamura <tkent@chromium.org>
Date:   Thu Apr 9 01:44:49 2026 -0700

    WTF: Rename String::Substring() to DeprecatedSubstring()

    * inspector_css_parser_observer.cc:
      A DCHECK assumes `comment_text` is not empty, so `start_offset`
      should not be greater than `parsed_text_.length()`. We can use
      subview().

    Bug: 473854537
    Change-Id: Ia38b03fd58755e9370037c483bce7bfd5482343e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7740859
    Auto-Submit: Kent Tamura <tkent@chromium.org>
    Reviewed-by: Fredrik Söderquist <fs@opera.com>
    Commit-Queue: Fredrik Söderquist <fs@opera.com>
    Cr-Commit-Position: refs/heads/main@{#1612041}
2026-05-22 16:18:04 -04:00
Claudio DeSouza 794beb15af [cr149] EnterprisePolicyUrlChecker now EnterprisePolicyChecker
This change updades our checker to use the newer version and keeps a
nullified implementation for the new method added to this new class.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/75b2acce79497326ac3388f8d3e6d03a21b1459e

commit 75b2acce79497326ac3388f8d3e6d03a21b1459e
Author: Haihan Chen <haihan@google.com>
Date:   Thu Apr 9 08:57:26 2026 -0700

    [GLIC CEP Paste Support] Merge actor enterprise checks into single `EnterprisePolicyChecker` interface

    To simplify the API and avoid extra param for actor tasks for content
    policy checks specifically, since glic is the only user and implements
    both url and content checks in a single class right now
    (`glicactorpolicychecker`).

    This is a refactor, content validation usage in tools like `PageTool` in
    follow-up CL.

    Bug: 473047343
    Change-Id: I8fb9b45955ccff15c3331af445df05dfcc589ac4
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7735646
    Reviewed-by: Kevin McNee <mcnee@chromium.org>
    Commit-Queue: Haihan Chen <haihan@google.com>
    Cr-Commit-Position: refs/heads/main@{#1612275}
2026-05-22 16:18:04 -04:00
Claudio DeSouza c1df6b7336 [cr149] Several actor headers moved
These are merely header inclusion path changes.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/a04bd984f618f1b601d1f1eed03c79526fede1df

commit a04bd984f618f1b601d1f1eed03c79526fede1df
Author: Andrew Liu <liu@chromium.org>
Date:   Thu Apr 9 13:21:47 2026 -0700

    Move actor_features, actor_switches, and actor_util to components

    This allows cross-platform (i.e. iOS) reuse of the feature flags. This
    CL also splits out the ScreenshotIframeRedactionScope enums to clean up
    the transitive dependencies.

    Bug: b:498735476
    Link: https://chromium-review.googlesource.com/id/I34099ac7e63ab047fbe2d8afa78bde996a6a6964
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7726881
    Commit-Queue: Andrew Liu <liu@chromium.org>
    Reviewed-by: Siddhartha S <ssid@chromium.org>
    Reviewed-by: Kevin Graney <kmg@google.com>
    Cr-Commit-Position: refs/heads/main@{#1612467}
2026-05-22 16:18:03 -04:00
Claudio DeSouza cac9a404dd [cr149] kTrackingProtection3pcd deleted
This feature has been deleted with the flag, which we were disabling.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/6cecf5c9cf156340d248173d59672e41981467af

commit 6cecf5c9cf156340d248173d59672e41981467af
Author: Fiona Macintosh <fmacintosh@google.com>
Date:   Thu Apr 9 01:59:36 2026 -0700

    Delete kTrackingProtection3pcd feature

    Fixed: b:482352097
    Change-Id: I856bdd18a750581b6bc717652e4a531ee5cda00f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7741961
    Auto-Submit: Fiona Macintosh <fmacintosh@google.com>
    Reviewed-by: Christian Dullweber <dullweber@chromium.org>
    Commit-Queue: Christian Dullweber <dullweber@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1612047}
2026-05-22 16:18:03 -04:00
Claudio DeSouza 3b0f99edcf [cr149] Rely on //chrome/browser/ui/test:dialog
This the componentisation of these files, we do not need anymore to
include these sources ourselves in `brave_browser_tests`.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/e0cd9afb25e911c62c8c096ef55816bd9e3b665e

commit e0cd9afb25e911c62c8c096ef55816bd9e3b665e
Author: Tiago Vignatti <tvignatti@igalia.com>
Date:   Thu Apr 9 07:28:31 2026 -0700

    Componentize chrome/browser/ui/test/

    This changes create chrome/browser/ui/test/BUILD.gn with dedicated
    targets for all test files in this directory, which were previously
    scattered across chrome/test/BUILD.gn and chrome/browser/ui/BUILD.gn.
    Some of the files were duplicated in multiple targets, and has now
    fixed.

    New targets:
    - :dialog — moved from //chrome/test:test_support and de-duplicated from
      browser_tests/interactive_ui_tests
    - :closed_waiter — moved from //chrome/test:test_support_ui
    - :test_support — de-duplicated and moved from browser_tests,
      interactive_ui_tests, and //chrome/browser/ui:test_support
    - :confirm_bubble — moved from //chrome/browser/ui:test_support
    - :browser_tests — browser test files
    - :interactive_ui_tests — interactive UI test files
    - :app_window — moved from //chrome/browser/ui:test_support

    Bug: 353332589
    Change-Id: I602615d0b8a96af88af82cf1caaf75a3a2184d07
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7704138
    Reviewed-by: Darryl James <dljames@chromium.org>
    Commit-Queue: Tiago Vignatti <tvignatti@igalia.com>
    Cr-Commit-Position: refs/heads/main@{#1612208}
2026-05-22 16:18:03 -04:00
Claudio DeSouza 0e4e07ea90 [cr149] AddFakeURLToHistoryDB deleted
`history::AddFakeURLsToHistoryService` should be used instead.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/b93f6d1f2368fadbd2367931cc2fbccb1abcc790

commit b93f6d1f2368fadbd2367931cc2fbccb1abcc790
Author: Greg Thompson <grt@chromium.org>
Date:   Tue Apr 7 06:58:55 2026 -0700

    Add sequence checks to sql::Database

    Also in this change:

    - Fix a few tests that were violating the sequence requirements.
    - Remove Database::ReportMemoryUsage, which was unused.

    Bug: 40827949
    Change-Id: I1a5c4630ed150552cdf66cf5951e2111c7aa8434
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7687491
    Commit-Queue: Greg Thompson <grt@chromium.org>
    Auto-Submit: Greg Thompson <grt@chromium.org>
    Reviewed-by: Jean-Philippe Gravel <jpgravel@chromium.org>
    Reviewed-by: Moe Ahmadi <mahmadi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1610716}
2026-05-22 16:18:02 -04:00
Claudio DeSouza 2a75a3f8c6 [cr149] MakeOptionsFor[Set|Get] with top_frame_origin arg
This recent change requires us to fix our own overrides and callers for
these functions.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/1575bebcd1c16fa1508c87eda06c5b3b1c364c3c

commit 1575bebcd1c16fa1508c87eda06c5b3b1c364c3c
Author: Duncan Mercer <mercerd@google.com>
Date:   Wed Apr 8 15:31:53 2026 -0700

    [Blink/Network] Support origin targeting for secure exemptions

    This change updates WebSecurityPolicy to support origin targeting
    for secure embedder exceptions by allowing specific origins instead
    of applying globally to an entire scheme.

    It also migrates secure cookie exemptions—specifically those affecting
    third-party cookie blocking and SameSite restrictions—in CookieManager
    and CookieSettings from scheme/host-based registration to
    url::Origin-based registration. This enables precise, unscoped
    exemptions for secure origins (such as chrome-untrusted://lens)
    without modifying the properties or behavior of the cookie origin
    itself.

    Bug: b:483614998
    Change-Id: I7fe2a00e631513c6ebcdb5fb996914f5b48a9447
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7689068
    Reviewed-by: Daniel Cheng <dcheng@chromium.org>
    Reviewed-by: Nidhi Jaju <nidhijaju@chromium.org>
    Reviewed-by: Dylan Cutler <dylancutler@google.com>
    Commit-Queue: Duncan Mercer <mercerd@google.com>
    Reviewed-by: Joshua Hood <jdh@chromium.org>
    Reviewed-by: Lily Chen <chlily@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1611822}
2026-05-22 16:18:02 -04:00
Claudio DeSouza 8070a2b7f7 [cr149] TranslateLanguageList with TranslateUrlFetcher arg
This change corrects several places to pass `TranslateUrlFetcher` into
`TranslateLanguageList`.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/6aef37c345ee6449713a213c04878417dd87d0c4

commit 6aef37c345ee6449713a213c04878417dd87d0c4
Author: Danilo Françoso Tedeschi <danft@google.com>
Date:   Wed Apr 8 06:26:11 2026 -0700

    Replace static DisableUpdate with dependency injection for TranslateLanguageList.

    This change removes the global static flag `update_is_disabled` from TranslateLanguageList and instead allows injecting a TranslateUrlFetcher instance. This improves testability by allowing mock fetchers to be used without relying on global state. TranslateDownloadManager now has a setter for its TranslateLanguageList.

    Change-Id: I739659aba52e95e6236e0b5d85fd9672b090c864
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7719220
    Reviewed-by: Basia Zimirska <basiaz@google.com>
    Commit-Queue: Danilo Françoso Tedeschi <danft@google.com>
    Cr-Commit-Position: refs/heads/main@{#1611437}
2026-05-22 16:18:02 -04:00