Commit Graph
75096 Commits
Author SHA1 Message Date
Artem Samoilenko 7533dcd3f5 [cr145] Remove brave/browser/ui/browser_window/internal dep from Android builds
Otherwise we hit numerous `assert(!is_android)` in deps inside it.
2026-01-29 13:41:13 -05:00
Artem Samoilenko d450d5dc80 [cr145][Android][Permission Dialog] Rename Closing to Dismiss
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/11d1c233f2a83623899b11979908a5f971c3984e

commit 11d1c233f2a83623899b11979908a5f971c3984e
Author: Elias Klim <elklm@chromium.org>
Date:   Fri Jan 9 08:58:26 2026 -0800

    [CodeHealth] Rename `Closing` to `Dismiss`

    This CL renames `Closing` method to `Dismiss` as it is the action name on the permission request.

    Bug: 436493801
    Change-Id: I84c3d22f06baa3284f1bc53a424447d8aa7db370
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7420694
    Commit-Queue: Elias Klim <elklm@chromium.org>
    Reviewed-by: Judith Hemp <hempjudith@google.com>
    Cr-Commit-Position: refs/heads/main@{#1566979}
2026-01-29 13:41:13 -05:00
Claudio DeSouza 6945c1d676 [cr145] Fix for glic code in TabStripActionContainer
This fix corrects the leaking of glic code in `TabStripActionContainer`
into non-glic builds. A fix has been submitted for this:
https://crrev.com/c/7455366

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/834ae1ecb73f7e375c6091a4b5

commit 834ae1ecb73f7e375c6091a4b5fe3fa954c08712
Author: Ian Wells <iwells@chromium.org>
Date:   Thu Jan 8 17:26:42 2026 -0800

    GlicButtonPressedState [1/2]: update container background

    When GlicButton and GlicActorTaskIcon are both visible, they are in a
    container view with a background. New designs for those buttons' pressed
    states call for the container background color to update.

    The container's specific background color and its animated updates were
    easiest to achieve with InkDrop, as is done for the buttons.

    Changes to the button colors are coming next.

    Recording: https://screencast.googleplex.com/cast/NTkzNTAxNzIyNTA5MzEyMHwxNDBjYTBhYS05Zg

    Change-Id: I0aa78f4d1135b9712b6ad81ddcec15151f58689e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7318142
    Commit-Queue: Ian Wells <iwells@chromium.org>
    Reviewed-by: Darryl James <dljames@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1566656}
2026-01-29 13:41:13 -05:00
Claudio DeSouza 8d990a64cd [cr145] Fix flic inclusion in ActorTaskListBubbleRowButton
This fix reproduces a fix submitted upstream correcting glic code being
included with `enable_glic=false`. Upstream CL for this fix is:
https://crrev.com/c/7452315

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/13eb4d940cf2fdeba1db5ac56518537a3da2033c

commit 13eb4d940cf2fdeba1db5ac56518537a3da2033c
Author: chrstne <chrstne@google.com>
Date:   Fri Jan 9 12:03:23 2026 -0800

    Nudge shows task done text

    Screencast: https://screencast.googleplex.com/cast/NjAzNTU0NDY5Mjc1MjM4NHw1YzBhOTAyYy05Zg

    Bug: b:469814713, b:469817191
    Change-Id: I55bc2ac6c0f9e37e98ccc7081f2269c7305539e7
    Fixed: b:469814713, b:469817191
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7349077
    Reviewed-by: David Bokan <bokan@chromium.org>
    Reviewed-by: Maggie Jennings <mjenn@google.com>
    Commit-Queue: Christine Ying <chrstne@google.com>
    Reviewed-by: Abe Boujane <boujane@google.com>
    Reviewed-by: Erik Chen <erikchen@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1567117}
2026-01-29 13:41:12 -05:00
Claudio DeSouza d4f14001cf [cr145] TabStripController::GetBrowser() deleted
This change corrects one of the accesses, while another is marked for
migration, as that particular one has too many dependants.

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

commit 2caf7a29c55e960fea36c55eb83f1d3a02c9a2fb
Author: Steven Luong <stluong@chromium.org>
Date:   Fri Jan 9 14:09:08 2026 -0800

    [VerticalTabs] Remove browser() accessor from TabStripController

    Bug: 439956588
    Change-Id: I7724025c3cc7db6251019c186112447e4d1e558c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7404070
    Commit-Queue: Steven Luong <stluong@chromium.org>
    Reviewed-by: Darryl James <dljames@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1567206}
2026-01-29 13:41:12 -05:00
Claudio DeSouza cd5fa2415f [cr145] BrowserView::ShouldDrawStrokes renamed
This method is now called `ShouldDrawTabStrokes`.

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

commit b26a5e135a2162191266b69cf2ace7e27c6f3ae2
Author: dljames <dljames@chromium.org>
Date:   Fri Jan 9 10:47:45 2026 -0800

    Rename BrowserView::ShouldDrawStrokes to ShouldDrawTabStrokes

    ShouldDrawStrokes was renamed to ShouldDrawTabStrokes as that name more
    explicitly captures what the function is verifying.

    Change-Id: I382f7f453eb9da8aefe845295831a1acded7c4c6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7411034
    Reviewed-by: Muhammad Salmaan <musalmaan@chromium.org>
    Commit-Queue: Darryl James <dljames@chromium.org>
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Reviewed-by: Steven Luong <stluong@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1567053}
2026-01-29 13:41:12 -05:00
Claudio DeSouza 6c35ccdb8a [cr145] native_widget_types => native_ui_types
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/0935a2bf7574620cd166bbec8434666121240fea

commit 0935a2bf7574620cd166bbec8434666121240fea
Author: Mitsuru Oshima <oshima@chromium.org>
Date:   Fri Jan 9 13:33:13 2026 -0800

    Migrate "gfx::native_widget_types*" target to "gfx::native_ui_types*"

    the file ui/gfx/native_widget_types.h has beeb
    renamed to "native_ui_types.h", and so should the gn targets be.

    This also updates the reference in the comments.

    Bug: 440644556

    Change-Id: I44e6568b1b5f78050340b27e33257ce3b6aa09d1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7396436
    Reviewed-by: Elly FJ <ellyjones@chromium.org>
    Commit-Queue: Mitsuru Oshima <oshima@chromium.org>
    Reviewed-by: Colin Blundell <blundell@chromium.org>
    Reviewed-by: James Cook <jamescook@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1567187}
2026-01-29 13:41:12 -05:00
Claudio DeSouza 1c1b76b0a7 [cr145] Several sync proto SVG-related things renamed
This is an exclusive renaming fix for Brave, with what appears to be a
proto update.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/5071e4a7c1d9f673627c43ac3f39325a4581b2a4

commit 5071e4a7c1d9f673627c43ac3f39325a4581b2a4
Author: Alex Turner <alexmt@chromium.org>
Date:   Fri Jan 9 11:37:12 2026 -0800

    Sync feature protos.

    This CL was initially generated by a Copybara workflow. See the attached
    bug for more details. Then, manual changes were made to the rest of the
    codebase reflect the updated proto.

    Bug: b:452908424, b:474253933
    Change-Id: I817a1155e357bdb4fab317558c66ba1cd5ad24cd
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7416271
    Auto-Submit: Copybara Service <copybara-worker-blackhole@google.com>
    Reviewed-by: Salvador Guerrero Ramos <salg@google.com>
    Reviewed-by: Sophie Chang <sophiechang@chromium.org>
    Commit-Queue: Alex Turner <alexmt@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1567100}
2026-01-29 13:41:11 -05:00
Claudio DeSouza 404d331b13 [cr145][android] Patches for monocrhome targets deleted
This patch is not necessary anymore as the whole thing has been deleted.

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

commit ecf6c3c62a8fea27a56341162de22c2bf90e9211
Author: Nate Fischer <ntfschr@google.com>
Date:   Fri Jan 9 11:03:12 2026 -0800

    Android: remove unused monochrome targets

    This removes more build targets which were previously used by
    monochrome, however these are now dead code because the top-level
    monochrome targets have been removed. This removes the corresponding
    monochrome-specific Java code.

    Bug: 434045992
    Test: gn gen out/Default
    Change-Id: I9c5e7188e70ef6ce5cf8ba4e621fe07269d3b9dc
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7411410
    Commit-Queue: Nate Fischer <ntfschr@chromium.org>
    Reviewed-by: Andrew Grieve <agrieve@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1567064}
2026-01-29 13:41:11 -05:00
Max Karolinskiy fbb5cd013f [cr145] Adds ECDSA_SHA384 to switch in GetAlgorithmName.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/1d9b855ced4c7ee53124d44af3d215789292515b

commit 1d9b855ced4c7ee53124d44af3d215789292515b
Author: Ernest Nguyen Hung <ernn@google.com>
Date:   Wed Jan 7 10:43:58 2026 -0800

    [DBSC] Add Mojo handler for chrome://unexportable-keys-internals

    It adds a Mojo handler for `chrome://unexportable-keys-internals` to
    fetch and delete keys. UI changes will be added in future CL(s).

    Bug: 454585857
2026-01-29 13:41:11 -05:00
Max Karolinskiy b1fbe1c3e2 [cr145] New sync data type SKILL has been added.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/5e25e8cc98026bbc782cf7048c786f85de0595b1

commit 5e25e8cc98026bbc782cf7048c786f85de0595b1
Author: Rushan Suleymanov <rushans@google.com>
Date:   Wed Jan 7 23:52:17 2026 -0800

    Add scaffold for DataType::SKILL

    Adds the new DataType enum value and an empty specifics proto. Generated
    from components/sync/bootstrap_new_data_type.sh.

    Note to sync reviewer: please verify for every touched static_assert(),
    the change is fitting or has a corresponding TODO.

    Bug: 471793686
2026-01-29 13:41:10 -05:00
Max Karolinskiy c5224dee8c [cr145] Updates lit mangler snapshot. 2026-01-29 13:41:10 -05:00
Max Karolinskiy 2f46bec186 [cr145] gcm was modularized.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/afd5fc4065dccedff1f3ab2f2a4149aaf643caf1

commit afd5fc4065dccedff1f3ab2f2a4149aaf643caf1
Author: Devlin Cronin <rdevlin.cronin@chromium.org>
Date:   Thu Jan 8 11:20:21 2026 -0800

    [Modularization] Create a build file for //chrome/browser/gcm

    Pull out the files in //chrome/browser/gcm into a separate build file
    and build target.

    This CL should have no production behavior change.

    Bug: 353332589
2026-01-29 13:41:10 -05:00
Max Karolinskiy 6c4e4b94fe [cr145] Use a patch for Browser::DeprecatedCreateOwnedForTesting.
Using an override for the method by copying code is not safe as it
misses upstream changed.

Chromium change:

https://source.chromium.org/chromium/chromium/src/+/961e7f0682c362f078d346556998198f6deca99c

commit 961e7f0682c362f078d346556998198f6deca99c
Author: Thomas Lukaszewicz <tluk@chromium.org>
Date:   Wed Dec 3 12:08:19 2025 -0800

    [bedrock] Add BrowserManagerService::AddBrowserForTesting()

    There are currently several deprecated unit tests under //chrome that
    manually instantiate self-owned browsers via the
    Browser::DeprecatedCreateOwnedForTesting() API.

    Recent CLs have introduced the new ProfileBrowserCollection and
    GlobalBrowserCollection abstractions to track application browser
    objects with appropriate scope.

    All code will be converted from using BrowserList to instead use
    these classes for Browser-related lookups / operations.

    This CL adds support for ProfileBrowserCollection to unit tests that
    instantiate Browsers via the deprecated test-only API. This is done
    by updating BrowserManagerService to track unowned Browser instances
    created by these unit tests. This change is intended to unblock
    BrowserList deprecation without requiring removal of all Browser
    unit tests from the codebase.

    Fixes a couple of unit tests incorrectly tearing down the Browser to
    fix the dangling refs.

    Bug: 431671320
2026-01-29 13:41:09 -05:00
Artem Samoilenko 99b9265c0e [cr145][Android] Fixes for BraveVpnParentActivityTest
This fixes the following error:
C 07:43:50.007   21.797s Main   1| java.lang.IllegalArgumentException: SemanticColorUtils requires a value for the brave.junit.tests:attr/colorSurface attribute to be set in your app theme. You can either set the attribute in your theme or update your theme to inherit from Theme.MaterialComponents (or a descendant).
C 07:43:50.007   21.797s Main   1| 	at com.google.android.material.resources.MaterialAttributes.resolveTypedValueOrThrow(MaterialAttributes.java:72)
C 07:43:50.007   21.797s Main   1| 	at com.google.android.material.color.MaterialColors.getColor(MaterialColors.java:94)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.components.browser_ui.styles.SemanticColorUtils.resolve(SemanticColorUtils.java:33)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.components.browser_ui.styles.SemanticColorUtils.getDefaultBgColor(SemanticColorUtils.java:43)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.chrome.browser.ChromeBaseAppCompatActivity.initializeSystemBarColors(ChromeBaseAppCompatActivity.java:315)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.chrome.browser.ChromeBaseAppCompatActivity.onCreate(ChromeBaseAppCompatActivity.java:251)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.chrome.browser.init.AsyncInitializationActivity.abortLaunch(AsyncInitializationActivity.java:453)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.chrome.browser.init.AsyncInitializationActivity.onCreateInternal(AsyncInitializationActivity.java:419)
C 07:43:50.007   21.797s Main   1| 	at org.chromium.chrome.browser.init.AsyncInitializationActivity.onCreate(AsyncInitializationActivity.java:344)
C 07:43:50.007   21.797s Main   1| 	at android.app.Activity.performCreate(Activity.java:9155)
C 07:43:50.007   21.797s Main   1| 	at android.app.Activity.performCreate(Activity.java:9133)
C 07:43:50.007   21.797s Main   1| 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1521)
C 07:43:50.007   21.797s Main   1| 	at org.robolectric.android.internal.RoboMonitoringInstrumentation.callActivityOnCreate(RoboMonitoringInstrumentation.java:377)
C 07:43:50.007   21.797s Main   1| 	at org.robolectric.android.controller.ActivityController.lambda$create$0(ActivityController.java:136)
C 07:43:50.007   21.797s Main   1| 	at org.robolectric.shadows.ShadowPausedLooper.runPaused(ShadowPausedLooper.java:264)
C 07:43:50.007   21.797s Main   1| 	at org.robolectric.android.controller.ActivityController.create(ActivityController.java:134)
C 07:43:50.007   21.797s Main   1| 	at org.robolectric.android.controller.ActivityController.create(ActivityController.java:144)
C 07:43:50.007   21.798s Main   1| 	at org.chromium.chrome.browser.vpn.activities.BraveVpnParentActivityTest.testShouldBringToTop_TrueForProfileActivity(BraveVpnParentActivityTest.java:26)
2026-01-29 13:41:09 -05:00
Claudio DeSouza 53f7dd466e [cr145] ExtensionsMenuDelegateDesktop::UpdateMainPage changed
This change affects the use of this function in one override. This
change corrects this aspect.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/35c27e689f5eea4f4c69d62a25814ce22e6d5fd2

commit 35c27e689f5eea4f4c69d62a25814ce22e6d5fd2
Author: EmiliaPaz <emiliapaz@chromium.org>
Date:   Wed Jan 7 21:19:09 2026 -0800

    [Extensions] Add HostAccessRequest struct

    Previously, the delegate and view classes were responsible for gathering
    the necessary host access request information (extension name, icon)
    from the ExtensionActionViewModel, which required passing around the WebContents.

    This CL introduces a HostAccessRequest struct to encapsulate the data for an extension requesting host access in the extensions menu.

    Bug: 449814184
    Change-Id: Idfceedcb0c9d34a26fef13b7c0704400befc8839
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7405507
    Reviewed-by: Eva Su <evasu@chromium.org>
    Commit-Queue: Emilia Paz <emiliapaz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1566088}
2026-01-29 13:41:09 -05:00
Claudio DeSouza cc3027a59a [cr145] TabStripController::GetProfile removed
This value can be retrieved through the `BrowserWindowInterface`
accessor.

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

commit c30ea98884f4c192d4ec4bf4696db597a9808b36
Author: Steven Luong <stluong@chromium.org>
Date:   Thu Jan 8 14:34:42 2026 -0800

    [VerticalTabs] Remove profile accessor from TabStripController

    Bug: 439956588
    Change-Id: I391c26b88ced0721e5497e3a0466b1f75b4c7f44
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7406246
    Reviewed-by: Darryl James <dljames@chromium.org>
    Commit-Queue: Steven Luong <stluong@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1566561}
2026-01-29 13:41:08 -05:00
Claudio DeSouza c8234b2882 [cr145] selected_indices() through the selection model
The way how these indices were being retrieved has an extra indirection
now, and this change corrects that. It is apparent that there may be
cases where indices are being used, that could rely on
`selected_tabs()`.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/5242d38772143f935df58d0d599230fa49822042

commit 5242d38772143f935df58d0d599230fa49822042
Author: Dominic Austria <dominicaustria@google.com>
Date:   Thu Jan 8 14:12:11 2026 -0800

    Use SelectionState as return type for TabStripModel::SelectionModel

    Bug: 435178910
    Change-Id: I438c19efc7a94c9b2a255a1d2fcf5b56104d1f1f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7278837
    Commit-Queue: Dominic Austria <dominicaustria@google.com>
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1566543}
2026-01-29 13:41:08 -05:00
Claudio DeSouza edca788215 [cr145][rust] Using thiserror v2 vendored in upstream
This change also updates the version for `thiserror` v1.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/740e9bb6eda1faec82bb17e11f87b7313b46a137

commit 740e9bb6eda1faec82bb17e11f87b7313b46a137
Author: Helmut Januschka <helmut@januschka.com>
Date:   Tue Dec 9 16:26:12 2025 -0800

    Add jxl-rs pure Rust JPEG XL decoder to third_party

    This CL vendors the jxl-rs library from crates.io as a third-party
    dependency in Chromium. jxl-rs is a pure Rust implementation of a JPEG
    XL decoder from the official libjxl organization.

    The CL has been generated semi-automatically:

    * Manual edits:
      * //BUILD.gn
      * //infra/inclusive_language_presubmit_exempt_dirs.txt
      * //third_party/rust/chromium_crates_io/Cargo.toml
      * //third_party/rust/chromium_crates_io/gnrt_config.toml
      * //third_party/rust/jxl*/OWNERS

    * Rest is autogenerated by `tools/crates/run_gnrt.py`:

    Bug: 462919304
    Change-Id: I9d918e8594f6856d33c6214c0c6ea47d3e81d47a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7201443
    Reviewed-by: Łukasz Anforowicz <lukasza@chromium.org>
    Reviewed-by: Helmut Januschka <helmut@januschka.com>
    Commit-Queue: Łukasz Anforowicz <lukasza@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1556445}
2026-01-29 13:41:08 -05:00
Claudio DeSouza 0fd92a9a81 [cr145] Cherry-pick of IWYU fix landed
This fix is not necessary anymore, as it landed as
https://crrev.com/c/7411050.

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

commit c5685dc2922a47b535e7716b303baab4841c967e
Author: Claudio DeSouza <cdesouza@chromium.org>
Date:   Thu Jan 8 12:11:43 2026 -0800

    [ActorTaskBubble] IWYU for `ActorTask`

    This change just adds the header for `actor::ActorTask::State`, which is
    missing in this particular case.

    Bug: 470101574
    Change-Id: I28e363536cf80370c874b4e7060ba6e12c054423
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7411050
    Reviewed-by: Abe Boujane <boujane@google.com>
    Commit-Queue: Claudio DeSouza <cdesouza@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1566479}
2026-01-29 13:41:07 -05:00
Max Karolinskiy 1f639d1f8e [cr145] Add override for PermissionOverridesTest tests.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/92e4b27af327e7820eccf5f74078441e0243e538

commit 92e4b27af327e7820eccf5f74078441e0243e538
Author: Antonio Sartori <antoniosartori@chromium.org>
Date:   Tue Dec 16 01:57:45 2025 -0800

    [permissions] Add GEOLOCATION_APPROXIMATE permission type

    This CL implements a new permission type GEOLOCATION_APPROXIMATE to support approximate location.

    This change should have no functional effects, since it is not
    possible yet to query or request the new permission.

    See also
    https://docs.google.com/document/d/1FzaP6kgkLPLa16bcHbjatfaLZx7920SOOG3zuuQdTow/edit?usp=sharing
    for more details.

    Bug: 394757795
2026-01-29 13:41:07 -05:00
Max Karolinskiy a1a938b24f [cr145] Disables failing upstream tests. 2026-01-29 13:41:07 -05:00
Artem Samoilenko b9e0a878bd [cr145][Android] Move StripVisibilityState to an enum target
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/893aacfca42016ae203f5ca51866b070b866e568

commit 893aacfca42016ae203f5ca51866b070b866e568
Author: Wenyu Fu <wenyufu@chromium.org>
Date:   Mon Dec 29 15:34:38 2025 -0800

    Move StripVisibilityState to an enum target

    This allows the enum live closer to the `//c/b/u/a/tabstrip` component,
    and avoid building the circular dependency around `//c/b/u/a/tabstrip`
    and `//c/b/u/a/toolbar`.

    Bypass-Check-License: File move
    Bug: N/A
    Change-Id: If51f5edbb46cde77186552793c0a8e7f95e1aa1e
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7330486
    Reviewed-by: Charles Hager <clhager@google.com>
    Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1563255}
2026-01-29 13:41:06 -05:00
Artem Samoilenko 8b030741ce [cr145][Android] Home modules pref removed
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/3477d08ca896a3a246cf37ef4ceeecf670a56009

commit 3477d08ca896a3a246cf37ef4ceeecf670a56009
Author: Xi Han <hanxi@google.com>
Date:   Wed Jan 7 06:33:13 2026 -0800

    [NtpCustomization] Clean up New tab cards on menu.

    This is the first patch of cleaning feature flag
    NewTabPageCustomization. It removes code of New Tab Page Cards menu
    settings.

    Bug: 376238770
    Change-Id: I8a6a8ef676eded65c3da27382836cba8c833d0e2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7398611
    Reviewed-by: Xinyi Ji <xinyiji@chromium.org>
    Reviewed-by: Jinsuk Kim <jinsukkim@chromium.org>
    Commit-Queue: Xi Han <hanxi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565602}
2026-01-29 13:41:06 -05:00
Claudio DeSouza 11b55c183b [cr145] Cherry-pick for https://crrev.com/c/7237180 landed
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c52338b223b8e94635901efd01e984852e38b69f

commit c52338b223b8e94635901efd01e984852e38b69f
Author: Claudio DeSouza <cdesouza@chromium.org>
Date:   Tue Dec 30 17:58:57 2025 -0800

    Fix `base::FeatureList` IWYU

    This use of `base::FeatureList` was recently added, however the
    inclusion for this particular case is relying on a transient inclusion,
    which was being revealed when unrelated sources were being changed.

    Bug: b:465826171
    Change-Id: I21528da1773aa801b5cec2262a624123df20f417
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7237180
    Reviewed-by: Kevin Graney <kmg@google.com>
    Commit-Queue: Kevin Graney <kmg@google.com>
    Cr-Commit-Position: refs/heads/main@{#1563561}
2026-01-29 13:41:06 -05:00
Claudio DeSouza 8ecb16cac3 [cr145] Disabling -Wheader-hygiene for curve25519.cc
A warning for namespace pollution was being triggered for the statement:
`using namespace bssl;`.

Unfortunately this warnings is triggered in the `.cc` file due to how
shadow file inclusions work in brave. This change disables the warning
for this file, as a workaround to this issue.

commit 6dbed74d9da9ac0912b3f78eb85da306063c56aa
Author: Rudolf Polzer <rpolzer@google.com>
Date:   Tue Dec 30 01:58:07 2025 -0800

    Namespace crypto/curve25519's internal symbols.

    Not including some asm-defined symbols for now, but marked them as
    `extern "C"` explicitly.

    Down from 1010 to 998 unintended exported symbols.

    Bug: 42220000
    Change-Id: I53af26985dc83df3e782ddd94c9fce67029b57b2
    Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/86328
    Reviewed-by: Xiangfei Ding <xfding@google.com>
    Commit-Queue: Rudolf Polzer <rpolzer@google.com>
2026-01-29 13:41:05 -05:00
Claudio DeSouza ea1072db0a [cr145] BrowserView::tabstrip() deleted
All uses of this function are now migrated over to
`horizontal_tab_strip_for_testing()`.

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

commit f55ce20fa80fb1e1c9b72e2ca4fed543fd455930
Author: dljames <dljames@chromium.org>
Date:   Wed Jan 7 16:21:55 2026 -0800

    [Vertical Tabs] Remove production usages of BrowserView::tabstrip

    Removes the last production usage of BrowserView::tabstrip renaming it
    to BrowserView::tab_strip_for_testing.

    A separate effort will handle the consolidation of TabScrubber into
    HorizontalTabStrip.

    Change-Id: I54308c271c83df6a4965332779c32106bc6ce90b
    Bug: 465190040, 465835455
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7404205
    Reviewed-by: Georg Neis <neis@chromium.org>
    Commit-Queue: Darryl James <dljames@chromium.org>
    Reviewed-by: Steven Luong <stluong@chromium.org>
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Reviewed-by: Elly FJ <ellyjones@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565998}
2026-01-29 13:41:05 -05:00
Claudio DeSouza 7c09c4e0f4 [cr145] Use LayoutConstant enum class
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/379b4aa4fdb30e8f8b60363a7d7c5e6b9e293d36

commit 379b4aa4fdb30e8f8b60363a7d7c5e6b9e293d36
Author: Alison Gale <agale@chromium.org>
Date:   Tue Jan 6 17:24:54 2026 -0800

    [Vertical Tabs] Migrate LayoutConstant to enum class

    This finalizes the migration and handles the remaining uses.

    Bug: 469096429
    Change-Id: Ide2449623837965e13452070ed750914c8941dbc
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7377285
    Reviewed-by: David Pennington <dpenning@chromium.org>
    Commit-Queue: Alison Gale <agale@chromium.org>
    Commit-Queue: David Pennington <dpenning@chromium.org>
    Auto-Submit: Alison Gale <agale@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565361}
2026-01-29 13:41:05 -05:00
Claudio DeSouza 65f849f365 [cr145] SignedSeedData compressed data args dropped
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/69b4cd4e635fe77acca7bb9215321702e41eedc7

commit 69b4cd4e635fe77acca7bb9215321702e41eedc7
Author: Alexei Svitkine <asvitkine@chromium.org>
Date:   Wed Jan 7 08:59:19 2026 -0800

    Fix exit-time destructors in components/variations.

    Also various other simplifications and addressal of TODOs.

    Bug: 40031409
    Change-Id: I68017bb900977712ba9d6eeccca86d87080e889b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7404789
    Auto-Submit: Alexei Svitkine <asvitkine@chromium.org>
    Reviewed-by: Luc Nguyen <lucnguyen@google.com>
    Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
    Commit-Queue: Alexei Svitkine <asvitkine@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565705}
2026-01-29 13:41:04 -05:00
Claudio DeSouza e8e176fa6b [cr145] OnMemoryPressure deleted
This override was no-op, but still required previously.

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

commit c8f437c890888d85951333104e04e949cb87f416
Author: Patrick Monette <pmonette@chromium.org>
Date:   Wed Jan 7 15:27:42 2026 -0800

    Remove MemoryPressureListener in PlayerCompositorDelegate

    After experimentation (with the SuppressMemoryListeners feature), this
    MemoryPressureListener implementation did not have any discernible
    effect on memory-related metrics, while also having no effect on
    performance.

    Bug: 465068849
    Change-Id: I076365c978e3430eb07b2ebf5da16cc4a93cd37a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7265567
    Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
    Reviewed-by: Ken Buchanan <kenrb@chromium.org>
    Commit-Queue: Patrick Monette <pmonette@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565957}
2026-01-29 13:41:04 -05:00
Artem Samoilenko 26e683680c [cr145][Android][Settings Search] Hide UI when local search is on
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/9031cc8ae5f0db262763199ed22649975000ea2d

commit 9031cc8ae5f0db262763199ed22649975000ea2d
Author: Jinsuk Kim <jinsukkim@chromium.org>
Date:   Tue Jan 6 03:23:30 2026 -0800

    [Settings Search] Hide UI when local search is on

    When in a Fragment with a local search feature using androidx
    SearchView, temporarily hides the settings-wise search UI.

    For this, this CL introduces SearchViewProvider/Observer. When
    visiting those Fragments, the observer notifies SearchCoordinator
    of the event so that the settings-wise search will be shown/
    hidden in response.

    Before: https://screenshot.googleplex.com/46WeMf4WmPdTJga
    https://screenshot.googleplex.com/NzcemLy2wtj9PK9

    Bug: 444468463
    Change-Id: I338ec1843e9b0e590240155770538d2d5cb41846
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7393235
    Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org>
    Reviewed-by: Basia Zimirska <basiaz@google.com>
    Reviewed-by: Moe Adel <adelm@google.com>
    Reviewed-by: Christian Dullweber <dullweber@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1564882}
2026-01-29 13:41:04 -05:00
Max Karolinskiy 69153c1437 [cr145] Updates override due to use of LayoutConstants changes.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/6927642558f8610d2896dcac5688b64d19cba776

commit 6927642558f8610d2896dcac5688b64d19cba776
Author: Alison Gale <agale@chromium.org>
Date:   Tue Jan 6 10:55:43 2026 -0800

    Migrate LayoutConstant enum callers to support enum class

    ['chrome/browser/ui/views/bookmarks', 'chrome/browser/ui/views/omnibox', 'chrome/browser/ui/views', 'chrome/browser/ui/views/permissions', 'chrome/browser/ui/views/controls', 'chrome/browser/ui/views/extensions', 'chrome/browser/ui/views/tab_sharing', 'chrome/browser/ui/views/webauthn']

    This CL was uploaded by an experimental version of git cl split
    (https://crbug.com/389069356).

    Bug: 40281257
2026-01-29 13:41:03 -05:00
Max Karolinskiy e47ba6e1c0 Revert "[cr145] Add a replacement test for RegisterChromeUriSchemeForChromium."
This reverts commit fd4eabe2131e038a44d3626da85663c7430d2d64.

Upstream removed their test and the method it was testing.

Chromium change:

https://source.chromium.org/chromium/chromium/src/+/1aad59a6546fef10cb1cfffd53e7a40720e20224

commit 1aad59a6546fef10cb1cfffd53e7a40720e20224
Author: Deepak Ravichandran <deepakr@google.com>
Date:   Tue Jan 6 11:05:52 2026 -0800

    This change addresses reviewer feedback on https://crrev.com/c/7269048.

    The original implementation registered the custom URI scheme (e.g.,
    `google-chrome://`) during a specific post-install step in
    `install_worker.cc`. The feedback suggested this logic should be part of the
    central browser registration process in `shell_util.cc`'s
    `RegisterChromeBrowserImpl` to ensure it happens unconditionally whenever
    Chrome is registered. This CL performs that refactoring without changing the
    end functionality.

    Bug: b:446672134
2026-01-29 13:41:03 -05:00
Max Karolinskiy c5044c5662 [cr145] Separate registration of untrusted webUIs.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/2b5bd6d48edcb963a69a3b1ee6b451709129c013

commit 2b5bd6d48edcb963a69a3b1ee6b451709129c013
Author: Fred Shih <ffred@chromium.org>
Date:   Tue Dec 9 15:04:35 2025 -0800

    Split trusted and untrusted webui registries

    This prevents cross contamination between trusted and untrusted global
    WebUI binders.

    Currently, there is a problem where both trusted and untrusted could
    receive a registration for the same WebUI page, in which case the
    trusted has precedance.

    We should add a validation which checks that a webui is registered
    with the correct registry based on its security context. Bug for that
    work is here: crbug.com/463472166

    Bug: 452389543,463472166,464033838
2026-01-29 13:41:03 -05:00
Claudio DeSouza c43be46bbc [cr145] IWYU fix for ActorTaskListBubbleRowButton
A fix has been submitted upstream for this too:

https://crrev.com/c/7411050

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/7bac72b34d4a964968960f3e5fd33fe2066b7887

commit 7bac72b34d4a964968960f3e5fd33fe2066b7887
Author: Aashna Sheth <aashnas@google.com>
Date:   Tue Jan 6 06:42:24 2026 -0800

    [ActorTaskBubble] Change color and icon of waiting tasks

    This CL also makes some design changes: namely removing the struct
    ActorTaskListBubbleRowState (fix: replaced with map) and
    struct/associated vector for ActorTaskListBubbleRowButtonParams (fix:
    passing in params as is).

    Screencast: https://screencast.googleplex.com/cast/NTQxMDg2Mzc3ODM2NTQ0MHw2MWM1Mjg5NS1lOQ
    Bug: 470101574
    Change-Id: I28169c623ebfdf132d5ee527d60c4dcc7c820867
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7353678
    Commit-Queue: Aashna Sheth <aashnas@google.com>
    Reviewed-by: Christine Ying <chrstne@google.com>
    Reviewed-by: Abe Boujane <boujane@google.com>
    Cr-Commit-Position: refs/heads/main@{#1564936}
2026-01-29 13:41:03 -05:00
Claudio DeSouza 3d9d937631 [cr145] Updates GetLayoutConstant override
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/e1c578333b0d5d1c5e12b3cf8ce4fa91a6793452

commit e1c578333b0d5d1c5e12b3cf8ce4fa91a6793452
Author: Alison Gale <agale@chromium.org>
Date:   Tue Jan 6 09:07:39 2026 -0800

    [Vertical Tabs] Set up LayoutConstant to migrate to enum class

    This enum is used by ~100 files so there will be merge conflicts. To
    avoid that, I'm setting up the enum so it can be called in the correct
    format for an enum class. After migrating all the callers, I'll update
    the enum to be an enum class and remove the old values.

    Motivation is better type safety. As an example, vertical_tab_view.cc
    and bookmark_bar_view.cc are updated. The later had a bug I found while
    making this change.

    WIP of migrating all of these to use the new values:
    https://chromium-review.googlesource.com/c/chromium/src/+/7377285

    Change-Id: I98a91e5de77f53955bb76ee7fd795c67334b2112
    Bug: 40281257,469096429
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7380120
    Commit-Queue: Alison Gale <agale@chromium.org>
    Reviewed-by: David Pennington <dpenning@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565043}
2026-01-29 13:41:02 -05:00
Claudio DeSouza 356c3e13ae [cr145] Moving ShouldDrawStrokes to BraveBrowserView
This change moves `ShouldDrawStrokes` into `BraveBrowserView`, following
what has also been done in upstream.

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

commit a9db94dd2b7746bbbe164b65ceb150cd9c02e039
Author: dljames <dljames@chromium.org>
Date:   Tue Jan 6 14:31:53 2026 -0800

    [Vertical Tabs] Move ShouldDrawStrokes into BrowserView

    Removes ShouldDrawStrokes from the TabStripRegionView API and into
    BrowserView which has access to all of the information needed to
    calculate this value.

    Remove duplicate implementations from other files as applicable.

    Change-Id: I392825365eb637b61ddc7e7c5dfa5509026d3954
    Bug: 465190040
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7398641
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Commit-Queue: Darryl James <dljames@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565280}
2026-01-29 13:41:02 -05:00
Claudio DeSouza 8e64adaf7a [cr145] MockActorUiStateManager header moved
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/556f4c85b2d29813dce1877c85f802bcf86afcfb

commit 556f4c85b2d29813dce1877c85f802bcf86afcfb
Author: mark a. foltz <mfoltz@chromium.org>
Date:   Tue Jan 6 14:14:57 2026 -0800

    [actor] Move UI mocks from mocks/ to test_support/

    Bypass-Check-License: Moving files
    Fixed: b/471004833
    Change-Id: Ie18a98a7a9a85d8b17fe3b6c303534f781002674
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7396690
    Reviewed-by: Ken Buchanan <kenrb@chromium.org>
    Reviewed-by: Yi Gu <yigu@chromium.org>
    Commit-Queue: Mark Foltz <mfoltz@chromium.org>
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1565272}
2026-01-29 13:41:02 -05:00
Max Karolinskiy 8e126057a6 [cr145] Moves DefaultBrowserWorker override.
Chromium changes:

https://source.chromium.org/chromium/chromium/src/+/31394abe9a00af4fd76e901e72199bedb4dd04d6

commit 31394abe9a00af4fd76e901e72199bedb4dd04d6
Author: Atharv Maan <atharvmaan@chromium.org>
Date:   Fri Dec 12 12:40:52 2025 -0800

    Move metric recording logic out of DefaultBrowserInfoBarDelegate

    This CL has the following changes:
    - Moves the metric recording logic from DefaultBrowserInfoBarDelegate to
      DefaultBrowserInfoBarManager.
    - Deprecates IGNORE_INFO_BAR metric which was being recorded per-tab.
    - Adds IGNORE_INFO_BAR_V2 that recordes once per browser session, based
      on the last tabbed browser window closing.
    - Moves user interaction logic from the delegate to the manager.

    Bug: None

https://source.chromium.org/chromium/chromium/src/+/a0449084d836c7af9c16d05a44cd0269d10ab79f

commit a0449084d836c7af9c16d05a44cd0269d10ab79f
Author: Atharv Maan <atharvmaan@chromium.org>
Date:   Tue Dec 16 08:33:14 2025 -0800

    [Default Browser] Migrate Default Browser startup infobar

    This CL migrates the Default Browser startup infobar to rely on the
    Default Browser framework, conditional on the `kDefaultBrowserFramework`
    feature flag.

    Bug: 454597770

https://source.chromium.org/chromium/chromium/src/+/29f46678c4315c0cb0e30b76cc4b1d8941b6c354

commit 29f46678c4315c0cb0e30b76cc4b1d8941b6c354
Author: Atharv Maan <atharvmaan@chromium.org>
Date:   Thu Jan 8 06:27:07 2026 -0800

    [Default Browser] Migrate Default Browser settings toggle

    This CL migrates the Default Browser settings toggle to rely on the
    Default Browser framework, for querying and setting default browser
    state.

    Bug: b:454597770
2026-01-29 13:41:01 -05:00
Max Karolinskiy 7ec36833cb [cr145] Disables PushMessagingServiceTest.ProfileDestructionTest.
The test started to fail because the below upstream change added a
change in ProfileManager::AddKeepAlive gated on
features::kDestroyProfileOnBrowserClose feature. We disable this feature
to make clear browsing data on exit work, but we may want to look into
reconsidering this deviation from upstream.

Related:
https://github.com/brave/brave-core/commit/b0e221e933b835354782a33c2a2af7e0af4477c1

Chromium change:

https://source.chromium.org/chromium/chromium/src/+/d07ba786268512f9a6bc3bcda25bf9dbb5a1c354

commit d07ba786268512f9a6bc3bcda25bf9dbb5a1c354
Author: Ahmed Raslan <rslan@google.com>
Date:   Fri Dec 12 01:34:44 2025 -0800

    Don't install extensions for soon-to-be-destroyed profiles

    This change modifies CrxInstaller to use
    ScopedProfileKeepAlive::TryAcquire when starting an installation. If the
    profile is already in the process of shutting down, TryAcquire will
    fail, and the installation will be aborted with a new
    CrxInstallErrorDetail::PROFILE_SHUTTING_DOWN error. A new browsertest is
    added to verify this behavior.

    BUG=368360956
2026-01-29 13:41:01 -05:00
Max Karolinskiy 85873b5234 [cr145] Updates FlagsStateTest.ShowDefaultState unit test.
Chromium change:

https://source.chromium.org/chromium/chromium/src/+/f5e3814d6aad1cdb70be429906626b1478b1bf94

commit f5e3814d6aad1cdb70be429906626b1478b1bf94
Author: Ernest Nguyen Hung <ernn@google.com>
Date:   Wed Dec 17 01:19:16 2025 -0800

    Fix parsing flags if they contain enable/disable features switch

    If multiple flags attempt to add the same switch, only the last one
    added is preserved. This is unexpected for
    `switches::k(Enable|Disable)Features` switches and could make one think
    that `chrome://flags` overwrites don't work properly (it already
    happened :)). This pattern is already used in our codebase to e.g. to
    enable multiple switches with one flag,
    https://source.chromium.org/search?q=(switches::kEnableFeatures%20OR%20switches::kDisableFeatures)%20%20file:chrome%2Fbrowser%2Fabout_flags.cc&sq=&ss=chromium.

    This CL fixes flags parsing for such flags by merging values for
    `switches::k(Enable|Disable)Features`.
2026-01-29 13:41:01 -05:00
Artem Samoilenko f139c935ac [cr145][Android] Changes for BravePrivacySettingsTest
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/be24c938e77a7f56ad3e3322c25952222036b2a8

commit be24c938e77a7f56ad3e3322c25952222036b2a8
Author: Fiona Macintosh <fmacintosh@google.com>
Date:   Tue Dec 30 10:34:45 2025 -0800

    Delete references to 3PCD feature on Android

    NO_IFTTT=strings predate new grd

    Bug: b:382043551
    Change-Id: I3e9cd5b6b8926ca8b805c08278c452a74f2fc3b1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7347296
    Commit-Queue: Fiona Macintosh <fmacintosh@google.com>
    Owners-Override: Fiona Macintosh <fmacintosh@google.com>
    Reviewed-by: Kevin Graney <kmg@google.com>
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1563438}
2026-01-29 13:41:00 -05:00
Artem Samoilenko 06f7a77a02 [cr145][Android] Changes for ActivityTabProvider in robolectric tests
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/416a61c418c152a7a7ae568d89302e5ecb6e4a3d

commit 416a61c418c152a7a7ae568d89302e5ecb6e4a3d
Author: Andrew Grieve <agrieve@chromium.org>
Date:   Tue Dec 2 14:13:59 2025 -0800

    Android: Split ObservableSupplier into Nullable / Monotonic / NonNull variants

    The goal is to use proper @Nullable annotations with
    ObservableSuppliers.

    To achieve this, we use interfaces that define nullness:
     * (Settable)NullableObservableSupplier
     * (Settable)ObservableSupplier <-- monotonic
     * (Settable)NonNullObservableSupplier

    And we have ObservableSupplierImpl implement all of them.

    In order to make this migration manageable, I've marked the interfaces
    as @NullUnmarked, and will fix annotations in batches until they
    can be marked @NullMarked.

    This CL includes a batch in order to test out the new interfaces (and
    because many were necessary to make the change).

    Monotonic suppliers are by far the most common afaict, so that's why
    the non-prefixed ObservableSupplier is the monotonic one (that, and
    because "Monotonic" is a mouthful).

    One implication of this approach is that we'll never have:
       ObservableSupplier<@Nullable Foo>
    We'd have instead:
       NullableObservableSupplier<Foo>

    Having the nullness in the interface rather than in the generic
    allows for defining toNonNull() only on monotonic suppliers, and
    simplifies the implementation.

    Bug: 455874046
    Change-Id: Id48e235b9ff16a5b21a9c1199863150d17c22736
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7206746
    Commit-Queue: Andrew Grieve <agrieve@chromium.org>
    Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
    Owners-Override: Andrew Grieve <agrieve@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1553094}
2026-01-29 13:41:00 -05:00
Artem Samoilenko 447aef2500 [cr145][Android] Remove TabGroupModelFilterProvider
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/f12fd21bbaa4ecdd44a76d39e37e086c198664f1

commit f12fd21bbaa4ecdd44a76d39e37e086c198664f1
Author: Hitarth Kothari <hitarthkothari@google.com>
Date:   Mon Dec 29 11:13:11 2025 -0800

    Reland "Remove TabGroupModelFilterProvider"

    This is a reland of commit f00182307d3765bac09f1bc45488c75f423607a2

    Original change's description:
    > Remove TabGroupModelFilterProvider
    >
    > Bug: 467323363
    > Change-Id: I34d003bdf8ef089b9b5a9a77020a68953dc00888
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7302039
    > Reviewed-by: Fiaz Muhammad <mfiaz@google.com>
    > Commit-Queue: Hitarth Kothari <hitarthkothari@google.com>
    > Owners-Override: Hitarth Kothari <hitarthkothari@google.com>
    > Cr-Commit-Position: refs/heads/main@{#1562275}

    Bug: 467323363
    Change-Id: Ie8090229572ec1b97e21cfbbb53aef578d4037da
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7349423
    Reviewed-by: Fiaz Muhammad <mfiaz@google.com>
    Owners-Override: Hitarth Kothari <hitarthkothari@google.com>
    Commit-Queue: Hitarth Kothari <hitarthkothari@google.com>
    Cr-Commit-Position: refs/heads/main@{#1563178}
2026-01-29 13:41:00 -05:00
Artem Samoilenko d58430f145 [cr145][Android] Clean up floating-snackbar flag
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/8607312f6ad27f2bb40aa29f91e9ff92c49e9a65

commit 8607312f6ad27f2bb40aa29f91e9ff92c49e9a65
Author: Eleanor Lee <eleanorlee@google.com>
Date:   Mon Jan 5 16:31:43 2026 -0800

    clean up floating-snackbar flag

    NO_IFTTT=lint not applicable

    Bug: 465404492
    Change-Id: If5806d4c6d0c10bd2c3bb7f407847dbbbdf11314
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7349101
    Commit-Queue: Eleanor Lee <eleanorlee@google.com>
    Reviewed-by: Theresa Sullivan <twellington@chromium.org>
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1564694}
2026-01-29 13:40:59 -05:00
Artem Samoilenko dd39249b2c [cr145] Keep glic GRDs in resource ID filtering to avoid missing includes
Otherwise there is a build error:
Traceback (most recent call last):
  File "/mnt/wd2t/projects/brave-browser-3/src/out/android_Release_arm64/../../tools/grit/grit.py", line 17, in <module>
    sys.exit(grit.grit_runner.Main(sys.argv[1:]))
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/wd2t/projects/brave-browser-3/src/tools/grit/grit/grit_runner.py", line 313, in Main
    return toolobject.Run(options, args[1:])
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/wd2t/projects/brave-browser-3/src/tools/grit/grit/tool/build.py", line 265, in Run
    self.res = grd_reader.Parse(opts.input,
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/wd2t/projects/brave-browser-3/src/tools/grit/grit/grd_reader.py", line 252, in Parse
    handler.root.AssignFirstIds(filename_or_stream, defines)
  File "/mnt/wd2t/projects/brave-browser-3/src/tools/grit/grit/node/misc.py", line 657, in AssignFirstIds
    raise Exception('Please update %s and add a first id for %s (%s).' %
Exception: Please update ../../out/android_Release_arm64/gen/tools/gritsettings/default_resource_ids and add a first id for chrome/browser/glic/resources/browser_resources.grd (includes).
2026-01-29 13:40:59 -05:00
Claudio DeSouza 2b39fb25cf [cr145] BrowserRootView::tabstrip() removed
The removal of this accessor was causing failures to an existing
override replacing calls for `ConvertPointToTarget`, which was making
use of this accessor. This change corrects the way to how this object is
retrieved in the override.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/98134b0b68889c778dde25b32e506d3a0bb634b8

commit 98134b0b68889c778dde25b32e506d3a0bb634b8
Author: dljames <dljames@chromium.org>
Date:   Mon Jan 5 12:10:46 2026 -0800

    [Vertical Tabs] Remove usage of TabStrip from BrowserRootView 2

    Removes usage of TabStrip from BrowserRootView entirely. The same
    behavior can be achieved by using TabStripRegionView the tabstrip
    agnostic interface. Making this change will utlimately remove the need
    for BrowserView::tab_strip() in the future allowing the code to work
    as-is when swapping between VerticalTabs and HorizontalTabs.

    To achieve this, TabStripRegionView now extends
    BrowserRootView::DropTarget. This allows BrowserRootView to forward drop
    events through the interface and into the TabStrip implementations. This
    allows tabs to appear as if they extend to the full height / width of
    their container even though the bounds are stricter.

    Change-Id: I1bf7948e632fe1122189eccd2dd89ea8f8679b79
    Bug: 465190040
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7304863
    Reviewed-by: David Pennington <dpenning@chromium.org>
    Commit-Queue: Darryl James <dljames@chromium.org>
    Reviewed-by: Steven Luong <stluong@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1564542}
2026-01-29 13:40:59 -05:00
Claudio DeSouza 83a2a8db4e [cr145] ExtensionsMenuMainPageView::menu_items_ renamed
This affects the override in places that refers to this field, which is
now called `menu_entries_`.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/7e4fef94f5539f11142ba3870c1e26fb2e19da9c

commit 7e4fef94f5539f11142ba3870c1e26fb2e19da9c
Author: EmiliaPaz <emiliapaz@chromium.org>
Date:   Sun Jan 4 17:59:10 2026 -0800

    [Extensions] Finish updating ExtensionsMenuEntryView names (pt 2)

    This CL completes the renaming of methods and structs the referenced
    'Item', which now is named 'Entry'.

    No functionality changed.

    Fixed: 471045053
    Change-Id: I4cfc90c165ffb6f1645d7ee4af968a660bddb1b6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7355237
    Commit-Queue: Emilia Paz <emiliapaz@chromium.org>
    Reviewed-by: Eva Su <evasu@chromium.org>
    Auto-Submit: Emilia Paz <emiliapaz@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1564137}
2026-01-29 13:40:58 -05:00
Claudio DeSouza 76f589704e [cr145] Adjust AddRestoredTab/ReplaceRestoredTab overrides
This functions now pass a span rather than a vector for the sessions
argument, which requires the override definition to also be updated.

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

commit c350cdc781d23f5196ab02e3e813401b5a00af8b
Author: Jeffrey Yu <yuje@chromium.org>
Date:   Mon Jan 5 08:40:37 2026 -0800

    Use `base::span<const T>` instead of `const std::vector<T>&`.

    Bug: 471980709
    Change-Id: If91d9640ecd1366f1fde5ceef501123af6c1d9c8
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7331439
    Reviewed-by: Eshwar Stalin <estalin@chromium.org>
    Reviewed-by: Colin Blundell <blundell@chromium.org>
    Commit-Queue: Jeffrey Yu <yuje@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1564400}
2026-01-29 13:40:58 -05:00
Claudio DeSouza a298eb97d1 [cr145] Landed cherry-pick for glic vertical tab fix
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c61c8fbae57f1b8ca96c14d3a8d61bbd621aae3e

commit c61c8fbae57f1b8ca96c14d3a8d61bbd621aae3e
Author: Claudio DeSouza <cdesouza@chromium.org>
Date:   Mon Jan 5 09:58:17 2026 -0800

    [Vertical Tabs] Guard glic deps behind enable_glic

    This change is a follow-up from a previous CL
    (https://crrev.com/c/7301219), which introduced dependencies to glic
    targets, which are required to be guarded behind `enable_glic` for when
    this value is `false`.

    Change-Id: I55cc363479eabf8fff0da567a81edaafae082d6c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7385050
    Commit-Queue: David Pennington <dpenning@chromium.org>
    Reviewed-by: David Pennington <dpenning@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1564443}
2026-01-29 13:40:58 -05:00