[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}
This commit is contained in:
Artem Samoilenko
2026-03-26 19:55:39 -04:00
committed by Max Karolinskiy
parent 0d9727fe92
commit caff684838
2 changed files with 12 additions and 3 deletions
@@ -5,6 +5,7 @@
package org.chromium.chrome.browser.settings;
import android.app.Activity;
import android.content.Context;
import androidx.fragment.app.Fragment;
@@ -20,6 +21,8 @@ import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.settings.search.SettingsSearchCoordinator;
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.ui.base.ActivityResultTracker;
import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.modaldialog.ModalDialogManager;
import java.util.function.Supplier;
@@ -29,15 +32,19 @@ public class BraveFragmentDependencyProvider extends FragmentDependencyProvider
private final Profile mProfile;
public BraveFragmentDependencyProvider(
Context context,
Activity activity,
Profile profile,
MonotonicObservableSupplier<WindowAndroid> windowAndroidSupplier,
ActivityResultTracker activityResultTracker,
OneshotSupplier<SnackbarManager> snackbarManagerSupplier,
OneshotSupplier<BottomSheetController> bottomSheetControllerSupplier,
MonotonicObservableSupplier<ModalDialogManager> modalDialogManagerSupplier,
Supplier<@Nullable SettingsSearchCoordinator> searchCoordinatorSupplier) {
super(
context,
activity,
profile,
windowAndroidSupplier,
activityResultTracker,
snackbarManagerSupplier,
bottomSheetControllerSupplier,
modalDialogManagerSupplier,