Commit Graph
5237 Commits
Author SHA1 Message Date
Pavel Beloborodov ebbb41978f Added ENABLE_EMAIL_ALIASES buildflag. (#35528)
* Added ENABLE_EMAIL_ALIASES buildflag.
2026-04-20 20:33:07 +07:00
Serg 8b37ade21d [Android] Fix Origin paywall stuck during Play Store purchase restore (#35606)
When a user who previously purchased Brave Origin switches devices,
verifyPurchase() at startup finds the Play Store purchase and kicks off
the SKUs createOrderFromReceipt / fetchOrderCredentials chain to obtain
an order ID. Until that chain completes, requestCredentialSummary
returns inactive, so Settings -> Brave Origin launches the paywall even
though a purchase exists and is mid-restore.

Gate handleOriginPreferenceClick on isFetchingCredentials() and route
directly to BraveOriginPreferences (which renders the fetching spinner
via its existing setCredentialsFetchedCallback path) when a restore is
in flight.

Also harden setCredentialsFetchedCallback against a lost-notification
race: after registering the callback, re-check isFetchingCredentials()
and synthesize a success notification if the fetch already completed.
Order-ID-set is the only path that flips the state to false, so
synthesizing success is safe.

Resolves: https://github.com/brave/brave-browser/issues/54637
2026-04-16 23:48:12 +00:00
Serg 90fadf6259 [Android] Register Brave as Android AutofillService for address autofill (#35567)
* [Android] Register Brave as Android AutofillService for address autofill

Re-enables the Android AutofillService that was removed in
https://github.com/brave/brave-core/pull/25759 due to crashes on
split-APK installs. Uses the SplitCompat pattern
(SplitCompatAutofillService base class) so the service works correctly
when installed from the Play Store.

When the user selects Brave as their autofill provider in Android Settings,
Brave can fill saved address profiles into third-party apps and save new
addresses from manually filled forms.

Resolves: https://github.com/brave/brave-browser/issues/41334
2026-04-16 14:23:41 -04:00
AlexeyBarabash 5e58cbf234 Fixed search settings for Brave's languages page (#35544)
Resolves https://github.com/brave/brave-browser/issues/54524
2026-04-16 11:08:29 +03:00
Szilard Szaloki d615f4b477 Account: moves to OTP-based email verification (#35502) 2026-04-16 05:42:25 +01:00
Anton Paymyshev eebe1d9885 Remove KeyedService from some wallet services (#35527) 2026-04-15 18:09:18 +01:00
Kevin Smith beee7d891d [Rewards] Remove Gemini wallet provider (#35380) 2026-04-14 22:11:29 -04:00
Serg 40e05127bf Revert "[Android] Initialize bottom controls synchronously to fix progress bar" (#35510)
Revert "[Android] Initialize bottom controls synchronously to fix progress ba…"

This reverts commit 5ba39ce79e.
2026-04-14 22:14:36 +00:00
AlexeyBarabash d1ad84c72c [Android] Implemented SEARCH_INDEX_DATA_PROVIDER for AppearancePreferences (#35437)
Resolves https://github.com/brave/brave-browser/issues/54408
2026-04-14 19:55:52 +03:00
Simone Arpe 1117f0bac2 Re-check PiP icon visibility when document load is complete (#35478) 2026-04-14 16:11:06 +02:00
Serg 5ba39ce79e [Android] Initialize bottom controls synchronously to fix progress bar (#35464)
The deferred PostTask introduced to avoid ANR was causing the bottom
controls to be initialized after the progress bar, breaking it.
Revert to synchronous initialization.

Resolves: https://github.com/brave/brave-browser/issues/54458
2026-04-13 15:49:47 -04:00
Simone Arpe e21d548ec2 Adjust widget text gravity (#35430) 2026-04-10 18:24:08 +02:00
Serg 28138db70b [Android] Check AI Chat feature flag for Leo quick search icon (#35429)
Resolves: https://github.com/brave/brave-browser/issues/48311
2026-04-10 18:01:05 +02:00
Serg 9afe305769 [Android] Hide BAT icon on tablet when rewards disabled by policy (#35400)
The maybeHideRewardsLayout() method controls rewards icon visibility on
tablets based on width but didn't check BraveRewardsPolicy, causing it
to override the main visibility logic that correctly hides the icon when
rewards are disabled.

Resolves: https://github.com/brave/brave-browser/issues/54358
2026-04-09 19:50:14 +02:00
Szilard Szaloki db1c2eeb43 Account: migrate to Mojom observer for state synchronization (#35282) 2026-04-09 01:31:20 +02:00
samartnik 890fcfb8b8 [Android] Fix for details action on advanced protection message (#35386)
* [Android] Fix for details action on advanced protection message

* [Tests] Fix for bytecode test
2026-04-09 00:24:17 +02:00
Oliver 3660b3622a Android: Implement favicons for Password Manager entries (#33868)
* Android: Implement favicons for Password Manager entries

We now display favicons for Password Manager as happens for our desktop
edition.

In order to do this, the C++ side now passes in the full origin so that
we have the clean, proper URI in order to fetch the favicon.

Resolves brave/brave-browser#52775
2026-04-08 18:56:21 +02:00
AlexeyBarabash b62ded55b4 [Android][DynamicColors] Fixed the navigation bar color (#35251)
* [Android][DynamicColors] Fixed the navigation bar color

Resolves https://github.com/brave/brave-browser/issues/53758
2026-04-08 19:24:02 +03:00
Serg ed743cf544 [Android] Fix Origin showing paywall and "Link Purchase" for linked desktop purchases (#35376)
Always check credentials via SKUs SDK (requestCredentialSummary) in
handleOriginPreferenceClick() instead of gating on the Play Store
purchase pref. This mirrors how Leo uses getPremiumStatus() to handle
both Play Store and desktop purchases.

Only show "Link Purchase" when there is an actual Play Store purchase
that hasn't been linked yet. Desktop purchases have no Play Store
receipt to link.

Resolves: https://github.com/brave/brave-browser/issues/54312
2026-04-08 17:14:18 +02:00
Anton Paymyshev ae9c1a1949 Completely remove kNativeBraveWalletFeature (#35261) 2026-04-08 22:09:45 +07:00
Darnell Andries 1abf429b8d Record Android widget search metric on resume (#35300) 2026-04-07 19:00:23 -07:00
Darnell Andries 3bdbe730da Call top site metric methods on Android (#35096)
* Call top site metric methods on Android

* Fix PWA/external navigation recording on Android

* Address PR feedback
2026-04-03 20:18:38 -07:00
Terry ManceyandAleksei Seren 4cce300eba [ads] Remove custom push notification ads (#35137)
Custom push notifications rendered notification ads as popup windows as a
fallback when native OS notifications were unavailable. Native notifications
are now the only delivery path so the entire custom rendering path, its
feature flags, platform bridge, Views UI, Android dialog UI, P3A position
metric, and three migrated prefs are removed.

Co-authored-by: Aleksei Seren <aseren@brave.com>
2026-04-03 09:09:44 -05:00
samartnik 70cd06d5a3 [Android] Enable CCTToolbarRefactor feature (#35218)
* [Android] Enable CCTToolbarRefactor feature

* [Review] Remove dependency on TINT propertry key
2026-04-02 17:14:55 -04:00
samartnik 187abd2b8a [Android] Add support for custom search engines (#35171)
* [Android] Add support for custom search engines

* [Review] Optimise check for delete eligibility
2026-04-02 10:03:42 -04:00
Szilard Szaloki 6cfa552a25 Account: distinguish network errors from HTTP errors (#35189) 2026-04-02 02:07:10 -04:00
Serg e0365ec5d6 [Android] Remove unused FOREGROUND_SERVICE_CAMERA permission from Android manifest (#35178)
Upstream Chromium cr147 (https://chromium-review.googlesource.com/c/chromium/src/+/7559078)
made FOREGROUND_SERVICE_CAMERA unconditional for all Android builds by
removing the is_desktop_android guard. However, the feature that
actually uses it (kAndroidEnableBackgroundMediaCapturing) is disabled
by default and not enabled by Brave, so the permission is declared but
never used.

This blocks Play Store publishing because Google requires a declaration
with a demo video for any app using FOREGROUND_SERVICE_CAMERA.

This PR:
- Re-gates FOREGROUND_SERVICE_CAMERA behind is_desktop_android so it's
  excluded from Brave builds
- Removes AndroidManifest_user_permissions.xml since upstream now
  declares FOREGROUND_SERVICE_MICROPHONE unconditionally, making
  Brave's duplicate unnecessary

Resolves: https://github.com/brave/brave-browser/issues/54143
2026-04-02 00:06:11 +02:00
Serg 841cad239e [Android] Defer bottom toolbar ViewStub inflation to fix startup ANR (#35083)
Move the bottom controls setup (ViewStub inflation, coordinator
creation, native initialization) from synchronous execution during
finishNativeInitialization to a deferred UI task via PostTask. The
synchronous inflation was triggering HardwareRenderer.nNotifyExpensiveFrame
which blocked the main thread waiting for the GPU, causing ANR on
devices under GPU pressure during startup.

This is safe because all consumers of mBottomControlsCoordinatorSupplier
and mTabGroupUiOneshotSupplier already null-check before use, and the
bottom toolbar starts with visibility="gone" making the one-frame delay
imperceptible. The task is wrapped with mCallbackController.makeCancelable()
to auto-cancel during Activity teardown.

Resolves: https://github.com/brave/brave-browser/issues/54077
2026-03-30 17:55:32 -04:00
Terry ManceyandAleksei Seren 40526ffca3 [ads] Serve new-tab takeover ads on demand instead of prefetching (#34771)
[Ads] Serve new-tab takeover ads on demand instead of prefetching

Removing prefetching reduces unnecessary complexity.
Ads will instead be served on demand, ensuring they are
only delivered within the campaign’s configured start and
end dates.

Co-authored-by: Aleksei Seren <aseren@brave.com>
2026-03-27 17:59:52 -05:00
Darnell Andries d42415c8c2 Call omnibox metric methods on Android (#35009)
Ensure these methods are called for both normal/private contexts, so we get more comprehensive data results.
2026-03-27 22:17:00 +00:00
vadims 9f228f29fa [SHRED] Remove empty space between title and radio buttons on Preference selection dialog (#35031)
Added a change to hide the option dialog description when it contains
no text.

Resolved: https://github.com/brave/brave-browser/issues/53989

--------

Signed-off-by: Vadym Struts <vstruts@brave.com>
2026-03-27 21:58:29 +01:00
Serg 47521cfbf5 Android new tab at the bottom (#35051)
* [Android] Move tab switcher controls to bottom when address bar is at bottom

When the address bar is configured to show at the bottom, reposition the
entire hub toolbar (new tab, menu, pane switcher, search, shred) from
the top to the bottom of the tab switcher for one-handed accessibility.

- BraveHubManagerImpl: Add maybeRepositionToolbarToBottom() that changes
  the toolbar wrapper's FrameLayout gravity to BOTTOM and swaps the pane
  host container's top margin to bottom margin. Uses EdgeToEdge pad
  adjuster (same pattern as upstream HubBottomToolbarCoordinator) to
  handle navigation bar insets. Properly cleans up the adjuster on hub
  hide since the coordinator and views are destroyed between show/hide
  cycles.

- BraveHubManagerImplClassAdapter: Expose parent's mEdgeToEdgeSupplier
  field via deleteField/makeProtectedField bytecode pattern.

- BraveToolbarManager: Remove setLayoutStateProvider() and its
  LayoutStateObserver that toggled menu popup direction on tab switcher
  transitions. No longer needed since the hub toolbar is now at the
  bottom when address bar is at bottom.

- BraveHubToolbarView: Change INVISIBLE to GONE for hidden action/menu
  buttons when bottom navigation controls are enabled (address bar on
  top). INVISIBLE left the buttons clickable despite being hidden.

Resolves: https://github.com/brave/brave-browser/issues/53326
2026-03-27 21:57:06 +01:00
Artem Samoilenko cb49c717c1 [cr147][Android] Disable CCTToolbarRefactor feature
Disable feature for now, it will be properly enabled in the context of the follow up issue https://github.com/brave/brave-browser/issues/53917
2026-03-26 19:55:49 -04:00
Artem Samoilenko d362170f05 [cr147][Android] Changes for MVT refactor
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/47857f79d20046a5fc9e3f470e3350c881d65874

commit 47857f79d20046a5fc9e3f470e3350c881d65874
Author: Yanling <yanlinghu@google.com>
Date:   Fri Mar 13 08:36:20 2026 -0700

    [M147] [NtpRefactor] Fix the MVT being truncated issue

    Original change's description:
    > [NtpRefactor] Fix the MVT being truncated issue
    >
    > This CL fixes a bug introduced in crrev.com/c/7644608 where the Most
    > Visited Tiles container is truncated when the NTP is viewed on a narrow
    > window on a tablet.
    > https://drive.google.com/file/d/14-JrnjARKH_7Wy5Wh3iJxQch6KgtuDbu/view?usp=sharing&resourcekey=0-wSzY2uu69f1o_9rRyNHMBw
    >
    > Prior to the refactor, the lateral margins and width for tablets were
    > applied to the outer container (a HorizontalScrollView with ID
    > R.id.mv_tiles_container), overriding the static XML margins. However,
    > the refactor moved this logic to MostVisitedTilesMediator but applied
    > the dynamic margins to the inner layout (MostVisitedTilesLayout with ID
    > R.id.mv_tiles_layout), which is a child of the outer container.
    >
    > This CL fixes the issue by passing the outer container view
    > (mvTilesContainerLayout) down to the MostVisitedTilesMediator, so that
    > the dynamic MarginLayoutParams are once again correctly applied to the
    > outer container. We also updated MostVisitedTilesCoordinator and the
    > related unit tests to reflect and verify this change.
    >
    > This video demonstrate the UI after this CL:
    > https://drive.google.com/file/d/1vrznQ5QZ5BlHUyVRC3508g-N8EFFrKaG/view?usp=sharing&resourcekey=0-ZztGk_lxOAjzprNzQvZ-5w
    >
    > Bug: 491890688
    > Change-Id: I8ce30c55e317f7ec44a1b259ffbfa6acee28355c
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7658684
    > Commit-Queue: Yanling Hu <yanlinghu@google.com>
    > Reviewed-by: Xi Han <hanxi@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#1598066}

    (cherry picked from commit bb19dc897a3206b86e9b6334c9220d92653696e0)

    Bug: 492318483,491890688
    Change-Id: I8ce30c55e317f7ec44a1b259ffbfa6acee28355c
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7662270
    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/7727@{#252}
    Cr-Branched-From: ce01102937348db7b88c8a4257ee4b3ac702eb1a-refs/heads/main@{#1596535}
2026-03-26 19:55:47 -04:00
Artem Samoilenko 1d0e12a715 [cr147][Android] Apply changes for kAndroidSettingsContainment feature
Feature itself is still disabled, but they already rolling it out in cr147 via A/B testing.

Chromium changes:
https://chromium.googlesource.com/chromium/src/+/0fb4e5a6d931253ae1dd7147b46afa2a866d8db1

commit 0fb4e5a6d931253ae1dd7147b46afa2a866d8db1
Author: Gazal Agarwal <agazal@google.com>
Date:   Tue Jul 29 10:19:07 2025 -0700

    [AndroidSettingsContainment] Add feature flag

    Bug: 433576895
    Test: Open chrome://flags and search for the flag.
    Change-Id: I7a30e24372349adb978032bdea1d754956cec571
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6795526
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Commit-Queue: Gazal Agarwal <agazal@google.com>
    Cr-Commit-Position: refs/heads/main@{#1493629}
2026-03-26 19:55:47 -04:00
Artem Samoilenko dbbf9cce02 [cr147][Android] Changes for selection context menu on extension popup
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/6e3f8761496b427d889d754437e284205818be46

commit 6e3f8761496b427d889d754437e284205818be46
Author: Masa Fujita <massan@google.com>
Date:   Sun Mar 8 18:50:52 2026 -0700

    extensions: Support selection context menu on extension popup

    This CL enables users to display selected text context menu on top of
    extension action popups. The call to display selection context menu used
    to get squashed because `SelectionDropdownMenuDelegate` wasn't set in
    ThinWebView.

    Bug: 429279387
    Change-Id: Ic561792fc21a608b72ce3f235201c5aebc640783
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7632516
    Reviewed-by: David Trainor <dtrainor@chromium.org>
    Commit-Queue: Masa Fujita <massan@google.com>
    Reviewed-by: Patrick Noland <pnoland@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1596124}
2026-03-26 19:55:43 -04:00
Artem Samoilenko c872d04ae4 [cr147][Android][NtpRefactor] Move usages of MVTilesLayout to MostVisitedTilesCoordinator
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/67b2379a1abe78abaaa3e1bc6f25402c3a1de569

commit 67b2379a1abe78abaaa3e1bc6f25402c3a1de569
Author: Xi Han <hanxi@google.com>
Date:   Fri Mar 6 15:01:24 2026 -0800

    [NtpRefactor] Move usages of MVTilesLayout to MostVisitedTilesCoordinator.

    This is a refactor CL without any behaviour changes. We move all usage
    of MVTilesLayout from NewTabPageLayout to MostVisitedTilesCoordinator.

    Bug: 487641528
    Change-Id: Icb3f65b42a3cb02f214d9f0fa09ab7b71a3e0285
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7644608
    Reviewed-by: Xinyi Ji <xinyiji@chromium.org>
    Commit-Queue: Xi Han <hanxi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1595724}
2026-03-26 19:55:42 -04:00
Artem Samoilenko e406a57f2f [cr147][Android] Fixes for JdkObsolete java warning
Warning: [JdkObsolete] Use new InputStreamReader(InputStream, Charset) instead.
2026-03-26 19:55:41 -04:00
Artem Samoilenko 862b803638 [cr147][Android] Null-annotate RootUiCoordinator (part 6)
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/550eb1819e9f42173df13a06432b1bc895d0931a

commit 550eb1819e9f42173df13a06432b1bc895d0931a
Author: Henrique Nakashima <hnakashima@chromium.org>
Date:   Wed Mar 4 12:04:14 2026 -0800

    [Android] Null-annotate RootUiCoordinator (part 6)

    Fix 7 NullAway errors due to:
    - mBottomSheetSnackbarManagerSupplier / mBottomSheetSnackbarManager
    - mScrimManagerSupplier / mScrimManager
    - mPageZoomBarCoordinator

    Change-Id: I44f09d2594776e2b7b2ebfd8611b523f0dbd7a2b
    Bug: 485252552
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7624622
    Reviewed-by: Andrew Grieve <agrieve@chromium.org>
    Owners-Override: Henrique Nakashima <hnakashima@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1594141}
2026-03-26 19:55:40 -04:00
Artem Samoilenko 883556fcf2 [cr147][Android] Changes for GlicToolbarButtonController
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/a67ba170d1d99fd6146f1335a5db18e0d5a755a1

commit a67ba170d1d99fd6146f1335a5db18e0d5a755a1
Author: Hailey Wang <haileywang@google.com>
Date:   Tue Mar 3 15:49:28 2026 -0800

    [Glic] Add GlicToolbarButtonController and tests

    Bug: 485624827
    Change-Id: I0aa37c6dafb406860cf201b769da48e0c8c1c8a9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7624534
    Reviewed-by: Wenyu Fu <wenyufu@chromium.org>
    Commit-Queue: Hailey Wang <haileywang@google.com>
    Cr-Commit-Position: refs/heads/main@{#1593582}
2026-03-26 19:55:39 -04:00
Artem Samoilenko caff684838 [cr147][Android] Changes for Safety Hub with activity-less sign-in flow
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/2965a40033399f1c1df4f51702f2b45d93b8825b

commit 2965a40033399f1c1df4f51702f2b45d93b8825b
Author: Anton Goncharenko <agonch@google.com>
Date:   Tue Mar 3 05:40:39 2026 -0800

    [Signin][Android] Migrate Safety Hub to activity-less sign-in flow.

    This is part of the effort to reduce reliance on
    SigninAndHistorySyncActivity by sign-in entry points.

    go/activityless-signin

    Dependency Injection: Updated SettingsActivity and
    FragmentDependencyProvider to manage and provide WindowAndroid,
    Activity, and ActivityResultTracker to settings fragments.

    SafetyHubModuleDelegateImpl to use
    BottomSheetSigninAndHistorySyncCoordinator for starting sign-in flows
    instead of launching separate activities via intents. The new sign-in
    flow is hidden behind ENABLE_SEAMLESS_SIGNIN and
    ENABLE_ACTIVITYLESS_SIGNIN_ALL_ENTRY_POINT feature flags.

    Safety Hub: 3-dots menu > Settings > Safety Check > Sign in to Chrome

    Bug: 479179162
    Change-Id: I768cb4bda8e217d5be40a1e5de7ef0d97d180dd7
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7614169
    Reviewed-by: Zaina Al-Mashni <zalmashni@google.com>
    Commit-Queue: Anton Goncharenko <agonch@google.com>
    Reviewed-by: Tanmoy Mollik <triploblastic@google.com>
    Reviewed-by: Jinsuk Kim <jinsukkim@chromium.org>
    Reviewed-by: Łukasz Barczyński <lbarczynski@google.com>
    Cr-Commit-Position: refs/heads/main@{#1593148}
2026-03-26 19:55:39 -04:00
Artem Samoilenko 0d9727fe92 Revert "[cr147][Android] Unify ActivityWindowAndroid constructors"
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/ffa30deb10c192a3868af67b1d74613a21e1c8ad

commit ffa30deb10c192a3868af67b1d74613a21e1c8ad
Author: Sky Malice <skym@chromium.org>
Date:   Wed Mar 4 15:55:45 2026 -0800

    Revert "Unify ActivityWindowAndroid constructors."

    This reverts commit ed612a376e529ea2e029661b23d1bd5198d929c2.

    Reason for revert: Landed on top of a CL that crashed

    Original change's description:
    > Unify ActivityWindowAndroid constructors.
    >
    > Bug: 486880198
    > Change-Id: Idf72221abcb738a970030bfbba2b3499013e18d6
    > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7600760
    > Reviewed-by: Simeon Anfinrud <sanfin@chromium.org>
    > Reviewed-by: Ted Choc <tedchoc@chromium.org>
    > Reviewed-by: Nate Fischer <ntfschr@chromium.org>
    > Reviewed-by: Menghan Yang <myuu@google.com>
    > Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
    > Commit-Queue: Sky Malice <skym@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#1592568}

    Bug: 486880198, 488022589
    Bug: 486880198
    Change-Id: I4ceab5eecb55652e1b29871f8fa214a990e21e38
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7633525
    Reviewed-by: Brandon Wylie <wylieb@google.com>
    Commit-Queue: Sky Malice <skym@chromium.org>
    Auto-Submit: Sky Malice <skym@chromium.org>
    Owners-Override: Harry Souders <harrysouders@google.com>
    Cr-Commit-Position: refs/heads/main@{#1594298}
2026-03-26 19:55:38 -04:00
Artem Samoilenko 01469c3b92 [cr147][Android] Changes for custom tab toolbar refactor
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/649dad5e5932bddd9a1d9ef3a9f8b0690df8d630

commit 649dad5e5932bddd9a1d9ef3a9f8b0690df8d630
Author: Sinan Sahin <sinansahin@google.com>
Date:   Tue Feb 10 19:21:23 2026 -0800

    [CCT][ToolbarRefactor] Enable by default

    Bug: 402213312
    Change-Id: I7ab5b2d7587b6354df74b63e3406940b4133bb91
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7564736
    Reviewed-by: Jinsuk Kim <jinsukkim@chromium.org>
    Commit-Queue: Sinan Sahin <sinansahin@google.com>
    Cr-Commit-Position: refs/heads/main@{#1582969}
2026-03-26 19:55:31 -04:00
Artem Samoilenko 136cfc674a [cr147][Android] Changes for null-annotated RootUiCoordinator
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/61a82a1566fd970e84e97a209528055da082b76e

commit 61a82a1566fd970e84e97a209528055da082b76e
Author: Henrique Nakashima <hnakashima@chromium.org>
Date:   Mon Mar 2 13:10:58 2026 -0800

    [Android] Null-annotate RootUiCoordinator (part 5)

    This CL focuses on ModalDialogManager.

    In different places it's nullable or not, and it is sometimes passed as
    a Supplier and sometimes not. Generally, ChromeBaseAppCompatActivity has
    a MonotonicObservableSupplier which in some subclasses never gets set,
    but in the ones that create a RootUiCoordinator, the provider is set
    before the RootUiCoordinator is created.

    I've tried to keep Suppliers where instances are mostly passed via
    Supplier and the actual ModalDialogManager where the Suppliers have
    generally already been resolved.

    Reduced NullAway errors down to 69 again.

    Cq-Include-Trybots: luci.chrome.try:android-internal-dbg,android-internal-binary-size
    Change-Id: I081f4cfab1a80dc074b2886a0ff59cb176feff30
    Bug: 485252552
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7604913
    Owners-Override: Henrique Nakashima <hnakashima@chromium.org>
    Reviewed-by: Andrew Grieve <agrieve@chromium.org>
    Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1592697}
2026-03-26 19:55:30 -04:00
Artem Samoilenko bc60e9936d [cr147][Android] Remove mDeferredNativeRunnables for BraveLocationBarMediator
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/b867637d8c6ba714943f3e3166a3b4324c9d1753

commit b867637d8c6ba714943f3e3166a3b4324c9d1753
Author: Tomasz Wiszkowski <ender@google.com>
Date:   Mon Mar 2 19:17:11 2026 -0800

    Simplify FuseboxSessionState activation.

    The change eliminates the need for deferred native initialization,
    allowing the FuseboxSessionState to emit event when the session object
    is ready to be used.

    Bug: 474616308
    Change-Id: I7e72ea03fb0562a2c1b2e7d0fb08bb3044a96123
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7618330
    Commit-Queue: Tomasz Wiszkowski <ender@google.com>
    Reviewed-by: Sky Malice <skym@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1592930}
2026-03-26 19:55:28 -04:00
Artem Samoilenko 4164648b99 [cr147][Android] Unify ActivityWindowAndroid constructors
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/ed612a376e529ea2e029661b23d1bd5198d929c2

commit ed612a376e529ea2e029661b23d1bd5198d929c2
Author: Sky Malice <skym@chromium.org>
Date:   Mon Mar 2 10:24:53 2026 -0800

    Unify ActivityWindowAndroid constructors.

    Bug: 486880198
    Change-Id: Idf72221abcb738a970030bfbba2b3499013e18d6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7600760
    Reviewed-by: Simeon Anfinrud <sanfin@chromium.org>
    Reviewed-by: Ted Choc <tedchoc@chromium.org>
    Reviewed-by: Nate Fischer <ntfschr@chromium.org>
    Reviewed-by: Menghan Yang <myuu@google.com>
    Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
    Commit-Queue: Sky Malice <skym@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1592568}
2026-03-26 19:55:27 -04:00
Artem Samoilenko 75426e62d5 [cr147][Android] Remove ic_arrow_down icon
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/db9b08b6c3709f3bdd75494e4c8c5038dbe0c284

commit db9b08b6c3709f3bdd75494e4c8c5038dbe0c284
Author: Jacob Stanley <jacobstanley@google.com>
Date:   Mon Mar 2 14:26:16 2026 -0800

    [Privacy Sandbox Clank] Remove Restricted Notice

    NO_IFTTT=Removing android_java formatter_data since Clank notice code is
    being deleted. Deleting all the strings, after they are fully unused on
    all OS's will come in a following CL.

    Bug: 474716334
    Change-Id: Ia0600619efaa67b898133af161c4a898ee4a09b7
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7618303
    Commit-Queue: Jacob Stanley <jacobstanley@google.com>
    Reviewed-by: Abe Boujane <boujane@google.com>
    Cr-Commit-Position: refs/heads/main@{#1592748}
2026-03-26 19:55:27 -04:00
Artem Samoilenko d73030e461 [cr147][Android] Rename FeedActionDelegate -> ActionDelegateFactory
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/b5a2265620263469792b5a322df732b40d2e8c83

commit b5a2265620263469792b5a322df732b40d2e8c83
Author: Anton Goncharenko <agonch@google.com>
Date:   Wed Feb 18 06:02:50 2026 -0800

    [Signin][Android] Migrate Feed Surfaces to activity-less sign-in flow

    This is part of the effort to reduce reliance on
    SigninAndHistorySyncActivity by sign-in entry points.

    Integrated BottomSheetSigninAndHistorySyncCoordinator initialization and
    cleanup in FeedActionDelegateImpl. The new sign-in flow is hidden behind
    ENABLE_SEAMLESS_SIGNIN and ENABLE_ACTIVITYLESS_SIGNIN_ALL_ENTRY_POINT
    feature flags.

    Design Doc: go/activityless-signin

    Bug: 478812795
    Change-Id: I58f670525db5c9669a9c0af25245df2e49dec5c9
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7557299
    Commit-Queue: Liza Bipin <mlbipin@google.com>
    Reviewed-by: Adam Arcaro <adamta@google.com>
    Reviewed-by: Liza Bipin <mlbipin@google.com>
    Auto-Submit: Anton Goncharenko <agonch@google.com>
    Cr-Commit-Position: refs/heads/main@{#1586376}
2026-03-26 19:25:26 -04:00
Artem Samoilenko 712f9ebcfb [cr147][Android] Changes for NTP Customizations
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/0769ebed75e94a4103185fb494a893b99ae3e1ba

commit 0769ebed75e94a4103185fb494a893b99ae3e1ba
Author: Xinyi Ji <xinyiji@google.com>
Date:   Tue Feb 24 10:01:11 2026 -0800

    [NTP Customization] Clean up NTP Customization toolbar button (part 4/4)

    This CL removes the HomeButtonDisplay interface, which is no longer
    necessary.

    Bug: 485308869
    Change-Id: Ia1eb8a14db1efd87936a582403785e7bdd2e6a92
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7597599
    Commit-Queue: Xinyi Ji <xinyiji@chromium.org>
    Reviewed-by: Patrick Noland <pnoland@chromium.org>
    Reviewed-by: Xi Han <hanxi@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#1589510}
2026-03-26 19:25:24 -04:00
Artem Samoilenko a655f3b176 [cr147][Android] Replace TabContextMenuItemDelegate to ContextMenuItemDelegate
Chromium changes:
https://chromium.googlesource.com/chromium/src/+/08483c4fea866719a9712db5d9a2d1ed531628f4

commit 08483c4fea866719a9712db5d9a2d1ed531628f4
Author: Hitarth Kothari <hitarthkothari@google.com>
Date:   Mon Feb 23 12:50:37 2026 -0800

    [ThinWebView] Add ThinWebViewContextMenuItemDelegate

    This CL adds context menu support for ThinWebView (used in the
    Preview/Ephemeral Tab) on Android.

    Key Changes:

    New Delegate: Implemented ThinWebViewContextMenuItemDelegate to handle
    actions like "Copy to clipboard" and "Open in default browser" for
    ThinWebView.

    New Menu Mode: Added ContextMenuMode.THIN_WEB_VIEW to
    ChromeContextMenuPopulator, providing a streamlined menu that excludes
    standard tab features (like "Read Later" or "Open in New Tab").

    Integration: Updated EphemeralTabCoordinator and ThinWebViewImpl to initialize and pass the context menu populator factory through the UI stack.

    ChromeContextMenuPopulatorTest to verify correct menu item filtering for the new mode.

    Testing: Added comprehensive unit tests in
    Bug: 483656137
    Change-Id: I4f293a21bd1a7eb74f90b2b06750aa7bb6473b67
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7572842
    Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
    Auto-Submit: Hitarth Kothari <hitarthkothari@google.com>
    Reviewed-by: Jinsuk Kim <jinsukkim@chromium.org>
    Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
    Commit-Queue: Hitarth Kothari <hitarthkothari@google.com>
    Cr-Commit-Position: refs/heads/main@{#1588868}
2026-03-26 19:25:20 -04:00