Remove the new task for mobile network page starts the sim onboarding

Bug: 349695880
Test: manually test
Flag: EXEMPT bugfix
Change-Id: Id5f35a9311da5e47f0417a45feadb1d1a0a2e35d
diff --git a/src/com/android/settings/network/NetworkProviderSimListController.java b/src/com/android/settings/network/NetworkProviderSimListController.java
index 46a66a6..51059a7 100644
--- a/src/com/android/settings/network/NetworkProviderSimListController.java
+++ b/src/com/android/settings/network/NetworkProviderSimListController.java
@@ -113,7 +113,7 @@
                     if (!info.isEmbedded && !isActiveSubscriptionId
                             && !SubscriptionUtil.showToggleForPhysicalSim(mSubscriptionManager)) {
                         SubscriptionUtil.startToggleSubscriptionDialogActivity(mContext, subId,
-                                true);
+                                true, false);
                     } else {
                         MobileNetworkUtils.launchMobileNetworkSettings(mContext, info);
                     }
diff --git a/src/com/android/settings/network/SimOnboardingActivity.kt b/src/com/android/settings/network/SimOnboardingActivity.kt
index bef10cd..e39966a 100644
--- a/src/com/android/settings/network/SimOnboardingActivity.kt
+++ b/src/com/android/settings/network/SimOnboardingActivity.kt
@@ -588,11 +588,14 @@
         fun startSimOnboardingActivity(
             context: Context,
             subId: Int,
+            isNewTask: Boolean = false,
         ) {
             val intent = Intent(context, SimOnboardingActivity::class.java).apply {
                 putExtra(SUB_ID, subId)
+                if(isNewTask) {
+                    setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
+                }
             }
-            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
             context.startActivity(intent)
         }
 
diff --git a/src/com/android/settings/network/SubscriptionUtil.java b/src/com/android/settings/network/SubscriptionUtil.java
index 74a10e9..fcf1599 100644
--- a/src/com/android/settings/network/SubscriptionUtil.java
+++ b/src/com/android/settings/network/SubscriptionUtil.java
@@ -24,6 +24,7 @@
 import static com.android.internal.util.CollectionUtils.emptyIfNull;
 
 import android.content.Context;
+import android.content.Intent;
 import android.content.SharedPreferences;
 import android.net.ConnectivityManager;
 import android.net.NetworkCapabilities;
@@ -515,18 +516,23 @@
      * @param context {@code Context}
      * @param subId The id of subscription need to be enabled or disabled.
      * @param enable Whether the subscription with {@code subId} should be enabled or disabled.
+     * @param isNewTask Whether the start activity add the new task or not
      */
     public static void startToggleSubscriptionDialogActivity(
-            Context context, int subId, boolean enable) {
+            Context context, int subId, boolean enable, boolean isNewTask) {
         if (!SubscriptionManager.isUsableSubscriptionId(subId)) {
             Log.i(TAG, "Unable to toggle subscription due to invalid subscription ID.");
             return;
         }
         if (enable && Flags.isDualSimOnboardingEnabled()) {
-            SimOnboardingActivity.startSimOnboardingActivity(context, subId);
+            SimOnboardingActivity.startSimOnboardingActivity(context, subId, isNewTask);
             return;
         }
-        context.startActivity(ToggleSubscriptionDialogActivity.getIntent(context, subId, enable));
+        Intent intent = ToggleSubscriptionDialogActivity.getIntent(context, subId, enable);
+        if (isNewTask) {
+            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+        }
+        context.startActivity(intent);
     }
 
     /**
diff --git a/src/com/android/settings/network/telephony/ToggleSubscriptionDialogActivity.java b/src/com/android/settings/network/telephony/ToggleSubscriptionDialogActivity.java
index 78eb832..6f4d3c3 100644
--- a/src/com/android/settings/network/telephony/ToggleSubscriptionDialogActivity.java
+++ b/src/com/android/settings/network/telephony/ToggleSubscriptionDialogActivity.java
@@ -76,7 +76,6 @@
         Intent intent = new Intent(context, ToggleSubscriptionDialogActivity.class);
         intent.putExtra(ARG_SUB_ID, subId);
         intent.putExtra(ARG_enable, enable);
-        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
         return intent;
     }
 
diff --git a/src/com/android/settings/sim/receivers/SimSlotChangeHandler.java b/src/com/android/settings/sim/receivers/SimSlotChangeHandler.java
index 9394af1..6e28a0d 100644
--- a/src/com/android/settings/sim/receivers/SimSlotChangeHandler.java
+++ b/src/com/android/settings/sim/receivers/SimSlotChangeHandler.java
@@ -410,7 +410,7 @@
             return;
         }
         Log.d(TAG, "Start ToggleSubscriptionDialogActivity with " + subId + " under DSDS+Mep.");
-        SubscriptionUtil.startToggleSubscriptionDialogActivity(mContext, subId, true);
+        SubscriptionUtil.startToggleSubscriptionDialogActivity(mContext, subId, true, true);
     }
 
     private boolean isMultipleEnabledProfilesSupported() {