[Tab Model] Change signature of TabModelSelectorFactory#buildSelector

* Activity can be replaced by Context.
* Selector index is unused.

Bug: 1502266
Change-Id: Ibfa6a2b7852813b7d7e5fd3ef0763fcf28414fad
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5027501
Commit-Queue: Theresa Sullivan <twellington@chromium.org>
Auto-Submit: Calder Kitagawa <ckitagawa@chromium.org>
Reviewed-by: Theresa Sullivan <twellington@chromium.org>
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1224594}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ChromeTabModelFilterFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ChromeTabModelFilterFactory.java
index 87a5850..658d7dc2 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ChromeTabModelFilterFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/ChromeTabModelFilterFactory.java
@@ -4,7 +4,8 @@
 
 package org.chromium.chrome.browser.app.tabmodel;
 
-import android.app.Activity;
+import static org.chromium.chrome.browser.dependency_injection.ChromeCommonQualifiers.ACTIVITY_CONTEXT;
+
 import android.content.Context;
 
 import org.chromium.chrome.browser.dependency_injection.ActivityScope;
@@ -15,6 +16,7 @@
 import org.chromium.chrome.browser.tasks.tab_management.TabManagementDelegateProvider;
 
 import javax.inject.Inject;
+import javax.inject.Named;
 
 /**
  * Glue code that decides which concrete {@link TabModelFilterFactory} should be used.
@@ -23,12 +25,12 @@
 public class ChromeTabModelFilterFactory implements TabModelFilterFactory {
     private Context mContext;
 
-    @Inject
     /**
      * @param context The activity context.
      */
-    public ChromeTabModelFilterFactory(Activity activity) {
-        mContext = activity;
+    @Inject
+    public ChromeTabModelFilterFactory(@Named(ACTIVITY_CONTEXT) Context context) {
+        mContext = context;
     }
 
     /**
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/DefaultTabModelSelectorFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/DefaultTabModelSelectorFactory.java
index 83458c9f..f5fdb1b 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/DefaultTabModelSelectorFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/tabmodel/DefaultTabModelSelectorFactory.java
@@ -4,7 +4,7 @@
 
 package org.chromium.chrome.browser.app.tabmodel;
 
-import android.app.Activity;
+import android.content.Context;
 
 import org.chromium.base.supplier.OneshotSupplier;
 import org.chromium.chrome.browser.flags.ActivityType;
@@ -25,12 +25,11 @@
     // verification errors.
     @Override
     public TabModelSelector buildSelector(
-            Activity activity,
+            Context context,
             OneshotSupplier<ProfileProvider> profileProviderSupplier,
             TabCreatorManager tabCreatorManager,
-            NextTabPolicySupplier nextTabPolicySupplier,
-            int selectorIndex) {
-        TabModelFilterFactory tabModelFilterFactory = new ChromeTabModelFilterFactory(activity);
+            NextTabPolicySupplier nextTabPolicySupplier) {
+        TabModelFilterFactory tabModelFilterFactory = new ChromeTabModelFilterFactory(context);
         AsyncTabParamsManager asyncTabParamsManager = AsyncTabParamsManagerSingleton.getInstance();
 
         return new TabModelSelectorImpl(
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ContextMenuLoadUrlParamsTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ContextMenuLoadUrlParamsTest.java
index 5a448fa..b669139 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ContextMenuLoadUrlParamsTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ContextMenuLoadUrlParamsTest.java
@@ -4,7 +4,7 @@
 
 package org.chromium.chrome.browser.tabmodel;
 
-import android.app.Activity;
+import android.content.Context;
 
 import androidx.test.filters.MediumTest;
 import androidx.test.platform.app.InstrumentationRegistry;
@@ -78,11 +78,9 @@
         }
 
         public RecordingTabModelSelector(
-                Activity activity,
                 OneshotSupplier<ProfileProvider> profileProviderSupplier,
                 TabCreatorManager tabCreatorManager,
-                TabModelFilterFactory tabModelFilterFactory,
-                int selectorIndex) {
+                TabModelFilterFactory tabModelFilterFactory) {
             super(
                     profileProviderSupplier,
                     tabCreatorManager,
@@ -104,17 +102,14 @@
                 new TabModelSelectorFactory() {
                     @Override
                     public TabModelSelector buildSelector(
-                            Activity activity,
+                            Context context,
                             OneshotSupplier<ProfileProvider> profileProviderSupplier,
                             TabCreatorManager tabCreatorManager,
-                            NextTabPolicySupplier nextTabPolicySupplier,
-                            int selectorIndex) {
+                            NextTabPolicySupplier nextTabPolicySupplier) {
                         return new RecordingTabModelSelector(
-                                activity,
                                 profileProviderSupplier,
                                 tabCreatorManager,
-                                new ChromeTabModelFilterFactory(activity),
-                                selectorIndex);
+                                new ChromeTabModelFilterFactory(context));
                     }
                 });
     }
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java
index c915e59..4e1563ab 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java
@@ -4,7 +4,7 @@
 
 package org.chromium.chrome.browser.tabmodel;
 
-import android.app.Activity;
+import android.content.Context;
 import android.os.Looper;
 import android.util.Pair;
 
@@ -137,8 +137,8 @@
         // Required to ensure TabContentManager is not null.
         private final TabContentManager mMockTabContentManager;
 
-        public TestTabModelSelector(Activity activity) throws Exception {
-            super(new MockTabCreatorManager(), new ChromeTabModelFilterFactory(activity), false);
+        public TestTabModelSelector(Context context) throws Exception {
+            super(new MockTabCreatorManager(), new ChromeTabModelFilterFactory(context), false);
             ((MockTabCreatorManager) getTabCreatorManager()).initialize(this);
             mTabPersistentStoreObserver = new MockTabPersistentStoreObserver();
             // Use of a mockito object here is ok as this object is not important to the test. A
@@ -263,13 +263,12 @@
             new TabModelSelectorFactory() {
                 @Override
                 public TabModelSelector buildSelector(
-                        Activity activity,
+                        Context context,
                         OneshotSupplier<ProfileProvider> profileProviderSupplier,
                         TabCreatorManager tabCreatorManager,
-                        NextTabPolicySupplier nextTabPolicySupplier,
-                        int selectorIndex) {
+                        NextTabPolicySupplier nextTabPolicySupplier) {
                     try {
-                        return new TestTabModelSelector(activity);
+                        return new TestTabModelSelector(context);
                     } catch (Exception e) {
                         throw new RuntimeException(e);
                     }
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabbedModeTabPersistencePolicyTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabbedModeTabPersistencePolicyTest.java
index 762a041b..5b8e6a01 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabbedModeTabPersistencePolicyTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabbedModeTabPersistencePolicyTest.java
@@ -7,6 +7,7 @@
 import static androidx.test.espresso.matcher.ViewMatchers.assertThat;
 
 import android.app.Activity;
+import android.content.Context;
 
 import androidx.test.filters.MediumTest;
 import androidx.test.platform.app.InstrumentationRegistry;
@@ -78,11 +79,10 @@
                 new TabModelSelectorFactory() {
                     @Override
                     public TabModelSelector buildSelector(
-                            Activity activity,
+                            Context context,
                             OneshotSupplier<ProfileProvider> profileProviderSupplier,
                             TabCreatorManager tabCreatorManager,
-                            NextTabPolicySupplier nextTabPolicySupplier,
-                            int selectorIndex) {
+                            NextTabPolicySupplier nextTabPolicySupplier) {
                         return new MockTabModelSelector(mProfile, mIncognitoProfile, 0, 0, null);
                     }
                 });
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/multiwindow/MultiInstanceManagerApi31UnitTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/multiwindow/MultiInstanceManagerApi31UnitTest.java
index 385b6f13..74741c5 100644
--- a/chrome/android/junit/src/org/chromium/chrome/browser/multiwindow/MultiInstanceManagerApi31UnitTest.java
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/multiwindow/MultiInstanceManagerApi31UnitTest.java
@@ -361,11 +361,10 @@
                 new TabModelSelectorFactory() {
                     @Override
                     public TabModelSelector buildSelector(
-                            Activity activity,
+                            Context context,
                             OneshotSupplier<ProfileProvider> profileProviderSupplier,
                             TabCreatorManager tabCreatorManager,
-                            NextTabPolicySupplier nextTabPolicySupplier,
-                            int selectorIndex) {
+                            NextTabPolicySupplier nextTabPolicySupplier) {
                         return new MockTabModelSelector(mProfile, mIncognitoProfile, 0, 0, null);
                     }
                 });
diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorFactory.java b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorFactory.java
index f3e9b184..f3059641 100644
--- a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorFactory.java
+++ b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorFactory.java
@@ -4,7 +4,7 @@
 
 package org.chromium.chrome.browser.tabmodel;
 
-import android.app.Activity;
+import android.content.Context;
 
 import org.chromium.base.supplier.OneshotSupplier;
 import org.chromium.chrome.browser.profiles.ProfileProvider;
@@ -17,17 +17,15 @@
     /**
      * Builds a {@link TabModelSelector}.
      *
-     * @param activity An {@link Activity} instance.
+     * @param context An {@link Context} instance.
      * @param profileProviderSupplier Provides the Profiles used in this selector.
      * @param tabCreatorManager A {@link TabCreatorManager} instance.
      * @param nextTabPolicySupplier A {@link NextTabPolicySupplier} instance.
-     * @param selectorIndex The index of the {@link TabModelSelector}.
      * @return A new {@link TabModelSelector} instance.
      */
     TabModelSelector buildSelector(
-            Activity activity,
+            Context context,
             OneshotSupplier<ProfileProvider> profileProviderSupplier,
             TabCreatorManager tabCreatorManager,
-            NextTabPolicySupplier nextTabPolicySupplier,
-            int selectorIndex);
+            NextTabPolicySupplier nextTabPolicySupplier);
 }
diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerTest.java b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerTest.java
index 06a1ac4..b6db51c 100644
--- a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerTest.java
+++ b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerTest.java
@@ -5,6 +5,7 @@
 package org.chromium.chrome.browser.tabmodel;
 
 import android.app.Activity;
+import android.content.Context;
 import android.os.Build;
 import android.util.Pair;
 
@@ -65,11 +66,10 @@
                 new TabModelSelectorFactory() {
                     @Override
                     public TabModelSelector buildSelector(
-                            Activity activity,
+                            Context context,
                             OneshotSupplier<ProfileProvider> profileProviderSupplier,
                             TabCreatorManager tabCreatorManager,
-                            NextTabPolicySupplier nextTabPolicySupplier,
-                            int selectorIndex) {
+                            NextTabPolicySupplier nextTabPolicySupplier) {
                         return new MockTabModelSelector(mProfile, mIncognitoProfile, 0, 0, null);
                     }
                 };
diff --git a/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java b/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java
index 4dc661c..f86d599a 100644
--- a/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java
+++ b/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java
@@ -89,8 +89,7 @@
                         activity,
                         profileProviderSupplier,
                         tabCreatorManager,
-                        nextTabPolicySupplier,
-                        index);
+                        nextTabPolicySupplier);
         mSelectors.set(index, selector);
         mAssignments.put(activity, selector);