Commit Graph
5081 Commits
Author SHA1 Message Date
Simone Arpe 59c4389a4b New onboarding flow study (smartphones and small screens) (#33521)
Updates the Day Zero onboarding experience on smartphones and small screen devices to a multi‑step, horizontally advancing flow driven by CTA buttons.
It introduces distinct layouts per step, a pager animation helper, and updates onboarding logic to support a scalable, multi‑step sequence with minimal duplication.

Tablet support is intentionally out of scope and will be handled in a separate PR.
2026-02-06 12:13:01 +01:00
Serg 461d66e02c [Android] Shows Brave Wallet UI based on policy. (#33630)
* [Android] Shows Brave Wallet UI based on policy.

Resolves: https://github.com/brave/brave-browser/issues/52496
2026-02-04 10:08:30 -05:00
Serg bd7950d53a [Android] Fixes a crash in FaviconUtils.getIconDrawableWithFilter when an icon is not available for a particular URL by falling back to the default globe icon. (#33569)
[Android] Fixes a crash in FaviconUtils.getIconDrawableWithFilter
when an icon is not available for a particular URL by falling back
to the default globe icon.

Resolves: https://github.com/brave/brave-browser/issues/52458
2026-02-02 23:49:25 +00:00
Artem Samoilenko 12ae1483c2 [cr145][Android] Changes for TopToolbarCoordinator c-tor
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/52326afd1d0ccf8396c4f7c579f802e695107e57

commit 52326afd1d0ccf8396c4f7c579f802e695107e57
Author: Wenyu Fu <wenyufu@chromium.org>
Date:   Wed Jan 14 17:39:10 2026 -0800

    [M145] [BrowserControls] Allow adjustment tab strip height during startup

    Original change's description:
    > [BrowserControls] Allow adjustment tab strip height during startup
    >
    > Part 2 of the complete POC: crrev.com/c/7427223
    >
    > Create TabStripTransitionCoordinator early, before native is ready, so
    > we can just the toolbar's position and tab strip height immediately when
    > the app header insets are updated. This change reduced the frame jumps
    > when Chrome is launched in the desktop windowing mode.
    >
    > Demo: https://screencast.googleplex.com/cast/NTQ2MTQwNTQ5Mzg4Njk3NnwxYTNhMGI0OS1kYw
    > Bug: 449166259
    > Change-Id: I3d622413fc60799043a772fd9eceaec8d3448cb3
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7428008
    > Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
    > Reviewed-by: Sirisha Kavuluru <skavuluru@google.com>
    > Reviewed-by: Aishwarya Rajesh <aishwaryarj@google.com>
    > Cr-Commit-Position: refs/heads/main@{#1568757}

    (cherry picked from commit ac378f67ffd0ea2887a4832c4556e75c60970c4d)

    Bug: 475629875,449166259
    Change-Id: I3d622413fc60799043a772fd9eceaec8d3448cb3
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7473730
    Auto-Submit: Chrome Cherry Picker <chrome-cherry-picker@chops-service-accounts.iam.gserviceaccount.com>
    Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Cr-Commit-Position: refs/branch-heads/7632@{#92}
    Cr-Branched-From: 0bbdf2913883391365383b0a5dfe7bf9fd1a5213-refs/heads/main@{#1568190}
2026-01-29 13:41:23 -05:00
Artem Samoilenko 27d46f1755 [cr145][Android][Icons] Update ic_help_24dp
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/ff45746d934d2c20d32fd1026412784c3d6952f8

commit ff45746d934d2c20d32fd1026412784c3d6952f8
Author: Wenyu Fu <wenyufu@chromium.org>
Date:   Tue Dec 16 10:06:52 2025 -0800

    [Icons] Update ic_help_24dp

    * Rename ic_help_and_feedback -> ic_help_24dp
    * Repurpose help_outline -> ic_help_24dp

    Fixed: 465844609
    Change-Id: I673280857c5c95286a14a3e4be13de988460de17
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7253200
    Reviewed-by: Theresa Sullivan <twellington@chromium.org>
    Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
    Reviewed-by: Abe Boujane <boujane@google.com>
    Auto-Submit: Wenyu Fu <wenyufu@chromium.org>
    Reviewed-by: Joel Tan-Aristy <jtanaristy@google.com>
    Cr-Commit-Position: refs/heads/main@{#1559421}
2026-01-29 13:41:19 -05:00
Artem Samoilenko 045f5f693c [cr145][Android] Updates star vector drawable
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/7ac55851043faec6d0fb7452589b26aa5748fa9d

commit 7ac55851043faec6d0fb7452589b26aa5748fa9d
Author: Joel Tan-Aristy <jtanaristy@google.com>
Date:   Mon Dec 29 16:13:46 2025 -0800

    [Icons] Updates star vector drawable

    Bug: 465844992
    Change-Id: Iba9a8eea3180041ec58dcff81bc7a900df35ce26
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7313942
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Owners-Override: Joel Tan-Aristy <jtanaristy@google.com>
    Commit-Queue: Joel Tan-Aristy <jtanaristy@google.com>
    Cr-Commit-Position: refs/heads/main@{#1563270}
2026-01-29 13:41:19 -05:00
Artem Samoilenko 71b216aad9 [cr145][Android] Update incognito_fill icon
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/1d7e9c164cf06e791c50e8e32b32ff98aa60e32a

commit 1d7e9c164cf06e791c50e8e32b32ff98aa60e32a
Author: Wenyu Fu <wenyufu@chromium.org>
Date:   Wed Dec 10 21:48:59 2025 -0800

    [Icons] Update incognito_fill icon

    incognito_simple -> incognito_fill_24dp.

    Bug: 466238435
    Change-Id: Ibf713feb61631ccf823e0e1b7a6079d1e7ac4c64
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7244330
    Reviewed-by: Sinan Sahin <sinansahin@google.com>
    Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1557128}
2026-01-29 13:41:17 -05:00
Artem Samoilenko fd6e6a76ff [cr145][Android] Changes for NTP promo
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/b80a1b0c422e6fbd55c1a3bf92ab3b70cdee2363

commit b80a1b0c422e6fbd55c1a3bf92ab3b70cdee2363
Author: Menghan Yang <myuu@google.com>
Date:   Mon Jan 12 04:06:44 2026 -0800

    [Android][Signin] Migrate NTP promo to the new sign-in API

    This change migrates the NTP sign-in promo to a new sign-in API.

    It plumbs several new dependencies (ActivityResultTracker,
    ModalDialogManager, SnackbarManager, BottomSheetController, etc.)
    through NativePageFactory, NewTabPage, and NewTabPageLayout down to the
    NtpSigninPromoCoordinator.

    Bug: 437039516
    Change-Id: I33714b69d37e4f482973a8f00a10530f5e5d3e2b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7390216
    Commit-Queue: Menghan Yang <myuu@google.com>
    Reviewed-by: Boris Sazonov <bsazonov@chromium.org>
    Auto-Submit: Menghan Yang <myuu@google.com>
    Cr-Commit-Position: refs/heads/main@{#1567687}
2026-01-29 13:41:16 -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
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
Artem Samoilenko e119c2a14c [cr145][Android] Persist incognito reauthentication state
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c75a96efda7d9836c13bdf2594979c094e2c1ca6

commit c75a96efda7d9836c13bdf2594979c094e2c1ca6
Author: Charles Hager <clhager@google.com>
Date:   Mon Dec 22 11:05:05 2025 -0800

    Persist incognito reauthentication state

    This change persists whether incognito is in a "pending reauthentication" state, in order to make sure that incognito reauth rules apply when persisting incognito state.

    Bug: 459921316
    Change-Id: I331b401eb93e2a3ebdcaef8da98cd6aa721a0e89
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7262141
    Reviewed-by: Christian Dullweber <dullweber@chromium.org>
    Reviewed-by: Theresa Sullivan <twellington@chromium.org>
    Commit-Queue: Charles Hager <clhager@google.com>
    Cr-Commit-Position: refs/heads/main@{#1561888}
2026-01-29 13:40:57 -05:00
Artem Samoilenko 45154aa725 [cr145][Android] Refactor MultiWindowUtils#closeWindow(instanceId) -> closeWindows(List<InstanceId>)
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/9eab1379c2ec6297c9d582ad90547ae712934e22

commit 9eab1379c2ec6297c9d582ad90547ae712934e22
Author: Zhe Li <zheliooo@google.com>
Date:   Thu Dec 18 11:11:19 2025 -0800

    [RWM][RecentlyClosed] Clear all inactive windows in addition to tab entries

    - Refactor #closeWindow(instanceId) -> closeWindows(List<InstanceId>) to align with other closeTab impl and to avoid instanceStateObserver#onInstanceClosed() Invoked multiple times when removing multiple windows.

    Demo: https://drive.google.com/file/d/1WCRDoJ23bFnRss-k0atyn-cT1DgsZ2TO/view?usp=sharing

    OBSOLETE_HISTOGRAM[Android.MultiWindowMode.CloseWindow.AppSource]=Replaced by Android.MultiWindowMode.CloseWindow.AppSource2

    Bug: 444680605
    Change-Id: Ibbcaa1559bb8ec555b9f5add03a9dc4fe2d7a7d2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7261791
    Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
    Commit-Queue: Zhe Li <zheliooo@google.com>
    Cr-Commit-Position: refs/heads/main@{#1560697}
2026-01-29 13:40:57 -05:00
Artem Samoilenko bf36c2a520 [cr145][Android] Changes for new BookmarkToolbarCoordinator c-tor signature
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/d5213c799a29303dcc0e9497fda72130b39af681

commit d5213c799a29303dcc0e9497fda72130b39af681
Author: Ho Cheung <hocheung@chromium.org>
Date:   Tue Dec 23 17:03:39 2025 -0800

    [Bookmarks] Add "Copy link" option to Android bookmark manager selection menu

    Add a "Copy link" menu option to the selection mode menu in the
    Android bookmarks manager. When a single bookmark is selected,
    users can now copy its URL to the clipboard via the overflow menu,
    providing a quick way to share bookmark URLs without opening them.

    This feature:

    - Appears in the three-dot overflow menu alongside "Open in new tab"
      and "Open in Incognito tab" when exactly one bookmark is selected.

    - Is hidden when folders are selected (folders have no URL).

    - Clears the selection after copying for a cleaner UX.

    - Shows a "Copied" snackbar notification to confirm the action.

    - Reuses existing translated strings (@string/copy_link, @string/copied)
      to avoid additional i18n overhead.

    At the same time, add appropriate tests to improve code coverage and
    UserAction for statistical use.

    Design doc:

    https://docs.google.com/document/d/1zDD-gk01xMioNgL_NTKroxvPW1HnVbPDHIxNQlF-_ZI

    Bug: 448009940
    Change-Id: I60fdc09a971daea4a92c64b79d3a1706502e63d2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7227136
    Reviewed-by: Sky Malice <skym@chromium.org>
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Reviewed-by: Brandon Wylie <wylieb@google.com>
    Owners-Override: Wenyu Fu <wenyufu@chromium.org>
    Reviewed-by: Theresa Sullivan <twellington@chromium.org>
    Commit-Queue: Aaron Teo <hocheung@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1562385}
2026-01-29 13:40:56 -05:00
Artem Samoilenko a28cccf90b [cr145][Android] New method variation for SettingsIntentUtil.createIntent
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/17d86894d67e5807756d5e437d813cc13e5ee630

commit 17d86894d67e5807756d5e437d813cc13e5ee630
Author: Jinsuk Kim <jinsukkim@chromium.org>
Date:   Wed Dec 17 13:18:21 2025 -0800

    [Settings Search] Let Sync pref open from search results

    Sync preference in main settings either opens a fragment via
    SettingsNavigation or displays a toast if it is disabled by
    administration policy. This CL makes it work in the same way when
    opened from search results.

    For this to work, SettingsNavigation#startSettings is given an extra
    parameter (EXTRA_FRAGMENT_TAG) which is given to a fragment transition
    from search to result state. This allows the fragment opened via
    SettingsNavigation to behave as expected for back action/tap on title.

    Bug: 469676538
    Change-Id: Ic84cac90a195bbfebf6734727b3367b8aeec52a5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7268507
    Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org>
    Reviewed-by: Moe Adel <adelm@google.com>
    Cr-Commit-Position: refs/heads/main@{#1560153}
2026-01-29 13:40:46 -05:00
Artem Samoilenko 60aa8a7785 [cr145][Android] Changes for moving wipeSyncUserData logic to native
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/5af9bb70f51054a15950e9b252890a7cb7132d00

commit 5af9bb70f51054a15950e9b252890a7cb7132d00
Author: quacksort <quacksort@google.com>
Date:   Thu Dec 18 02:26:06 2025 -0800

    [Signin][Android] Move wipeSyncUserData logic to native

    This CL moves the implementation of wipeSyncUserData from Java to C++ in
    SigninManagerAndroid, for consistency with wipeGoogleServiceWorkerCaches
    and wipeProfileData.

    Bug: 40831634
    Change-Id: I0911af673e2cc8091cab8ba74db07448df46a1d5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7252681
    Reviewed-by: Boris Sazonov <bsazonov@chromium.org>
    Commit-Queue: Lucia Giorgi <quacksort@google.com>
    Cr-Commit-Position: refs/heads/main@{#1560421}
2026-01-29 13:40:46 -05:00
Artem Samoilenko 18eeaa74fa [cr145][Android] Changes for the user modified navigation
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/8a572f986d8d90fe1befaa2792dabff71410b4db

commit 8a572f986d8d90fe1befaa2792dabff71410b4db
Author: Abdelrahman Eed <abdoeed@google.com>
Date:   Tue Dec 16 11:20:41 2025 -0800

    [Clank Navigation] Add support for user-modified (Shift-Click)

    This CL adds support for the user modified navigation (Shift + Left
    click) to launch a new browser window or an app if one is present
    depending on the navigation source, for desktop devices.

    Changes (only affecting desktop Android devices, or if we are on desktop
    windowing):
    - Launch a new chrome window if navigating from the chrome browser
    - Launch an app to handle the navigation if navigating from a CCT

    NO_IFTTT=the check is not working properly, I added the changes needed

    Change-Id: I480eb5b648c7da281a83e592fec2b45d52a89631
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6662663
    Commit-Queue: Abdelrahman Eed <abdoeed@google.com>
    Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
    Auto-Submit: Abdelrahman Eed <abdoeed@google.com>
    Commit-Queue: Michael Thiessen <mthiesse@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1559473}
2026-01-29 13:40:46 -05:00
Artem Samoilenko 3e3d45aca1 [cr145][Android] Convert TabStripTopControlLayer -> SettableNonNullObservableSupplier
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/78262fcabdb7ea6154698ce2d8de3be38685d7d1

commit 78262fcabdb7ea6154698ce2d8de3be38685d7d1
Author: Andrew Grieve <agrieve@chromium.org>
Date:   Mon Dec 15 13:20:12 2025 -0800

    Android: Convert TabStripTopControlLayer -> SettableNonNullObservableSupplier

    Bug: 467389696
    Change-Id: I4fa5212f316941730391acc9682256bf08ce0190
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7262594
    Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
    Auto-Submit: Andrew Grieve <agrieve@chromium.org>
    Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1558950}
2026-01-29 13:40:42 -05:00
Artem Samoilenko 0978a6a7ac [cr145][Android] Convert ArchivedTabCountSupplier -> SettableNonNullObservableSupplier
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/8245d4bdba51505fb715a2106a13a96bc206b860

commit 8245d4bdba51505fb715a2106a13a96bc206b860
Author: Andrew Grieve <agrieve@chromium.org>
Date:   Fri Dec 12 12:13:49 2025 -0800

    Android: Convert ArchivedTabCountSupplier -> SettableNonNullObservableSupplier

    Bug: 467389696
    Change-Id: Ib5d8678cda883235c805fd8c1e925bbfe9cbe18d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7255036
    Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
    Commit-Queue: Andrew Grieve <agrieve@chromium.org>
    Owners-Override: Andrew Grieve <agrieve@chromium.org>
    Auto-Submit: Andrew Grieve <agrieve@chromium.org>
    Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1558223}
2026-01-29 13:40:38 -05:00
Artem Samoilenko 6efdc31f9a [cr145][Android] Update naming for divider_color
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/d0e0d0f95971bb89e7bc0ea29cff39e9439c957b

commit d0e0d0f95971bb89e7bc0ea29cff39e9439c957b
Author: Sinan Sahin <sinansahin@google.com>
Date:   Fri Dec 12 08:56:11 2025 -0800

    [clank-q4-fixit] Update naming for drag_handle_color and divider_color

    Bug: 465898786
    Change-Id: Ifbd1b75f50f39363e446663ca204912bb75fb19b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7254327
    Reviewed-by: Nate Fischer <ntfschr@chromium.org>
    Reviewed-by: Theresa Sullivan <twellington@chromium.org>
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Commit-Queue: Sinan Sahin <sinansahin@google.com>
    Cr-Commit-Position: refs/heads/main@{#1558096}
2026-01-29 13:40:38 -05:00
Artem Samoilenko f1d1c1bf1c [cr145][Android] Update Add icon drawable name
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/c4039f85750b4e7b5845545a1131296cd7a07296

commit c4039f85750b4e7b5845545a1131296cd7a07296
Author: Jenna Himawan <jhimawan@google.com>
Date:   Thu Dec 11 15:25:40 2025 -0800

    [Icons] Update Add icon drawable and name

    Bypass-Check-License: File rename; not a new file
    Bug: 465844226
    Change-Id: I4ae0996076205e52315101082ac3e9b0f15369f6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7247464
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Commit-Queue: Jenna Himawan <jhimawan@google.com>
    Cr-Commit-Position: refs/heads/main@{#1557733}
2026-01-29 13:40:36 -05:00
Artem Samoilenko 6a4e5ef849 [cr145][Android] Remove btn_tabstrip_switch_normal
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/ed2e0467b830503b0d97dc31880be4cf2d9e3952

commit ed2e0467b830503b0d97dc31880be4cf2d9e3952
Author: Wenyu Fu <wenyufu@chromium.org>
Date:   Wed Dec 10 21:16:51 2025 -0800

    [Icons] Remove btn_tabstrip_switch_normal

    Apparently unused.

    Bug: 467789995, 466238435
    Change-Id: I204f20d1a1d3d67260f6ebfbf902a4f91e8d0736
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7248305
    Reviewed-by: Joel Tan-Aristy <jtanaristy@google.com>
    Commit-Queue: Wenyu Fu <wenyufu@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1557120}
2026-01-29 13:40:36 -05:00
Artem Samoilenko a217dc1088 [cr145][Android] Convert ToolbarManager.ConstraintsSupplier to a TransitiveObservableSupplier
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/86102b4bc68e75d3d392be417f8208697701184e

commit 86102b4bc68e75d3d392be417f8208697701184e
Author: Andrew Grieve <agrieve@chromium.org>
Date:   Wed Dec 10 14:29:26 2025 -0800

    Convert ToolbarManager.ConstraintsSupplier to a TransitiveObservableSupplier

    Bug: 467389696
    Change-Id: Iccda1bc4dd1f13c7d5444364f44f8ce5de417d5f
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7242146
    Commit-Queue: Andrew Grieve <agrieve@chromium.org>
    Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1556976}
2026-01-29 13:40:31 -05:00
Artem Samoilenko 94c0253870 [cr145][Android] Changes for extension UI post-native-init
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/9c2a3c87dbd2168e374e611422f9d815c67293ab

commit 9c2a3c87dbd2168e374e611422f9d815c67293ab
Author: Shuhei Takahashi <nya@chromium.org>
Date:   Mon Dec 8 19:32:36 2025 -0800

    extensions: Initialize extension UI post-native-init

    This is a part of the patch series to use ExtensionActionViewModel on
    Desktop Android.

    We currently inflate the extension UI before native initialization,
    following many other UI components. This is why we use OneshotSupplier
    for ChromeAndroidTask because it is available only after native init.

    As we update the extension UI to rely on browser-keyed shared view
    models, such as ExtensionActionViewModel, they would introduce many
    OneshotSupplier<T>, which is going to be cumbersome.

    This patch avoids the problem by moving the extension UI initialization
    to post-native-init. After all, we don't show the extension UI before
    checking the profile eligibility, whereas profiles are available only
    after native init.

    Bug: 448199168
    Change-Id: Ib0ea1bbb6f0adfc868ddfc1e7eb653f9eb189361
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7214707
    Reviewed-by: Patrick Noland <pnoland@chromium.org>
    Reviewed-by: Masa Fujita <massan@google.com>
    Commit-Queue: Shuhei Takahashi <nya@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1555878}
2026-01-29 13:40:30 -05:00
Artem Samoilenko 956efc766e [cr145][Android] Clean up sTabGroupParityBottomSheetAndroid
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/b1c73a30ed49ea3961dcdd30cf9275c888296a58

commit b1c73a30ed49ea3961dcdd30cf9275c888296a58
Author: luci-bisection@appspot.gserviceaccount.com <luci-bisection@appspot.gserviceaccount.com>
Date:   Tue Dec 9 10:44:12 2025 -0800

    Revert "Revert "[Community Contributions] Clean up sTabGroupParityBottomSheetAndroid""

    This reverts commit 2e7c96beae9fe9dcd350e7de8882e64c6cdd6231.

    Reason for revert:
    LUCI Bisection has identified this change as the culprit of a build failure. See the analysis: https://ci.chromium.org/ui/p/chromium/bisection/compile-analysis/b/8695938283667055729

    Sample failed build: https://ci.chromium.org/b/8695938283667055729

    If this is a false positive, please report it at http://b.corp.google.com/createIssue?component=1199205&description=Analysis%3A+https%3A%2F%2Fchromium-review.googlesource.com%2Fc%2Fchromium%2Fsrc%2F%2B%2F7241785&format=PLAIN&priority=P3&title=Wrongly+blamed+https%3A%2F%2Fci.chromium.org%2Fui%2Fp%2Fchromium%2Fbisection%2Fcompile-analysis%2Fb%2F8695938283667055729&type=BUG

    Original change's description:
    > Revert "[Community Contributions] Clean up sTabGroupParityBottomSheetAndroid"
    >
    > This reverts commit b0ce122d544925ff7ce8bafd0e72b8167843e17d.
    >
    > Reason for revert: broke Chrome internal builds, see
    > https://ci.chromium.org/ui/p/chrome/builders/ci/android-internal-chromium-tot/191918/overview
    >
    > Original change's description:
    > > [Community Contributions] Clean up sTabGroupParityBottomSheetAndroid
    > >
    > > Bug: 448348139
    > > Change-Id: I661f84a0b0751bebf481d1ba46cc39f9ddcc9644
    > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7235865
    > > Reviewed-by: Fiaz Muhammad <mfiaz@google.com>
    > > Reviewed-by: Theresa Sullivan <twellington@chromium.org>
    > > Commit-Queue: Eleanor Lee <eleanorlee@google.com>
    > > Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
    > > Cr-Commit-Position: refs/heads/main@{#1556157}
    >
    > Bug: 448348139
    > No-Presubmit: true
    > No-Tree-Checks: true
    > No-Try: true
    > Change-Id: Icbc7a9caf9680a7d51b4a371b2318aa4282b31ea
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7241785
    > Auto-Submit: Alex Ilin <alexilin@chromium.org>
    > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    > Owners-Override: Alex Ilin <alexilin@google.com>
    > Cr-Commit-Position: refs/heads/main@{#1556200}
    >

    Bug: 448348139
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Change-Id: Ifaa2b88fbf293d9a7a1346309f935a7ddaec4e29
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7242570
    Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Commit-Queue: luci-bisection@appspot.gserviceaccount.com <luci-bisection@appspot.gserviceaccount.com>
    Owners-Override: luci-bisection@appspot.gserviceaccount.com <luci-bisection@appspot.gserviceaccount.com>
    Bot-Commit: luci-bisection@appspot.gserviceaccount.com <luci-bisection@appspot.gserviceaccount.com>
    Cr-Commit-Position: refs/heads/main@{#1556267}
2026-01-29 13:40:30 -05:00
Artem Samoilenko f17f7f54b6 [cr145][Android] Unify #getInstanceInfo() APIs
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/814d968251668c4eba1b96d961633a91467c1e12

commit 814d968251668c4eba1b96d961633a91467c1e12
Author: Michael Wu <mklw@google.com>
Date:   Mon Dec 8 14:17:00 2025 -0800

    Unify #getInstanceInfo() APIs

    We have two #getInstanceInfo() APIs currently:
    - getInstanceInfo()
    - getInstanceInfo(@PersistedInstanceType int persistedInstanceType)
    We should remove 1 in favor of keeping only 2. Existing call-sites of 1
    should be appropriately updated to pass PersistedInstanceType.ANY.

    Bug: 467083292
    Change-Id: I94decc397bebf483992eebf171d54e901a40c5ac
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7237457
    Commit-Queue: Michael Wu <mklw@google.com>
    Reviewed-by: Sirisha Kavuluru <skavuluru@google.com>
    Cr-Commit-Position: refs/heads/main@{#1555733}
2026-01-29 13:40:29 -05:00
Artem Samoilenko fc2018ee13 [cr145][Android] Delete UnownedUserDataSupplier
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/5555698ab42fba6498c51463de66999eae533870

commit 5555698ab42fba6498c51463de66999eae533870
Author: Andrew Grieve <agrieve@chromium.org>
Date:   Thu Dec 4 14:46:16 2025 -0800

    Android: Delete UnownedUserDataSupplier

    Working towards removing all ObservableSupplierImpl subclasses.

    Bug: 455874046
    Change-Id: I2fed44d1892ebac9fba321816da592acfa915e14
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7225955
    Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
    Commit-Queue: Andrew Grieve <agrieve@chromium.org>
    Auto-Submit: Andrew Grieve <agrieve@chromium.org>
    Owners-Override: Andrew Grieve <agrieve@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1554316}
2026-01-29 13:40:24 -05:00
Artem Samoilenko 6fa6898c28 [cr145][Android] Split ObservableSupplier into Nullable / Monotonic / NonNull variants
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:40:19 -05:00
samartnik 5edc5d977f [Android][Large Screen] Minor accessibility fixes for NTP (#33497) 2026-01-29 13:27:16 -05:00
Szilard Szaloki 8e182088f1 [Android] Consolidate Account strings into components. (#33493) 2026-01-29 08:01:13 -08:00
vadims ab701482db [Shred] Auto shred UI implementation (#33414)
Added UI implementation for the auto shred feature

Resolves: https://github.com/brave/brave-browser/issues/52278
Resolves: https://github.com/brave/brave-browser/issues/51620
---------

Signed-off-by: Vadym Struts <vstruts@brave.com>
2026-01-29 12:17:49 +01:00
Serg 4ab77b35ea [Android] Shows Brave VPN UI based on policy. (#33467)
Resolves: https://github.com/brave/brave-browser/issues/52355
2026-01-28 18:56:10 +00:00
samartnik d34037fa36 [Android][Large Screen] Add highlight for Brave News options (#33463) 2026-01-28 12:02:05 -05:00
Szilard Szaloki 486b67e1d1 Account: disabled-state styling for BraveAccountPreference (#33439) 2026-01-27 21:46:59 +00:00
Szilard Szaloki d9a43e733d Account: resend verification email notifications (Android) (#33410) 2026-01-27 01:48:15 +00:00
Serg 49c34d0a46 [Android] Fixes a crash inside ReturnToChromeUtil.showHomeSurfaceUiOnNtp when HomeSurfaceTracker object is null. (#33408)
[Android] Fixes a crash inside ReturnToChromeUtil.showHomeSurfaceUiOnNtp
when HomeSurfaceTracker object is null.

Resolves: https://github.com/brave/brave-browser/issues/52283
2026-01-26 19:13:05 +00:00
Serg e68153b672 [Android] Checks origin pref policies directly for Leo AI and Rewards. (#33392)
Currently there is an async mojo call to check policies for Leo and
Rewards, that is an overhead and not needed, in fact it could be wrong
if the policies controlled by something else that is not Origin.
Resolves: https://github.com/brave/brave-browser/issues/52244
2026-01-23 20:59:10 +00:00
samartnik 020672d0c5 [Android] Regain camera focus on app changing for QR code reader (#33376) 2026-01-22 17:13:12 -05:00
samartnik 226fe4e385 [Android] Fix for distorted QR reader video capture (#33373) 2026-01-22 13:44:00 -05:00
Serg ec99d6c72e [Android] Shows Brave News UI based on policy. (#33342)
Resolves: https://github.com/brave/brave-browser/issues/52170
2026-01-21 21:48:09 +00:00
Szilard Szaloki 720d311f43 Account: implements ResendConfirmationEmail() (#33303) 2026-01-20 06:49:01 -07:00
Pavel Beloborodov 2ce409f4d0 Localhost Permission => Local Network Access cleanup (#32910)
Brave's custom localhost access permission feature has been replaced with Chromium's Local Network Access (LNA) feature.
2026-01-20 20:20:32 +07:00
Serg 083d518099 [Android] Fixes a crash on VPN service stop. (#33291)
Resolves: https://github.com/brave/brave-browser/issues/52102
2026-01-19 22:52:37 +00:00
Serg 0d070296e3 [Android] Show AI chat UI elements based on policy. (#33256)
Resolves: https://github.com/brave/brave-browser/issues/51974
2026-01-16 23:32:38 +00:00
Brian Johnson bff8ee509f Reland - Move replacement files for chromium resources to their own directory (#33204)
This moves files that are directly copied over chromium resources to a separate directory where they are checked to make sure that there is a corresponding upstream file. This is the first step in a series of changes to clean up branding.js https://github.com/brave/brave-browser/issues/51969
2026-01-14 19:44:13 +00:00
Brian Johnson 54166dfe58 Revert "Move files that overwrite chromium resources to their own directory" (#33203)
Revert "Move files that are copied to chromium to their own directory (#33159)"

This reverts commit 9324eec2d3.
2026-01-14 13:56:06 +00:00
Brian Johnson 9324eec2d3 Move files that are copied to chromium to their own directory (#33159)
Separate files that overwrite chromium resources from brave specific resources and validate that there is a corresponding file in upstream.
2026-01-14 05:18:58 -07:00
Serg 25c9a56cbe [CodeHealth][Android] Adjusts policy const generator to respect acronyms. (#33188)
[CodeHealth][Android] Adjusts policy const generator to respect
acronyms.

Resolves: https://github.com/brave/brave-browser/issues/51950
2026-01-13 20:50:38 +00:00
Brian Johnson 00d4bc735d Fix copyright presubmit issues that came when moving files in https://github.com/brave/brave-core/pull/33159
This allows 33159 to just move the relevant files with no changes to them
2026-01-13 20:31:33 +00:00
Serg ca943bf511 [Android] Fixes snackbar is not shown on the tablet after closing and relaunching Brave on NTP recent tab. (#33177)
[Android] Fixes snackbar is not shown on the tablet after closing and
relaunching Brave on NTP recent tab.

Resolves: https://github.com/brave/brave-browser/issues/51940
2026-01-13 12:58:50 -05:00