From 80887b6be3c043ed04f93a6c57fe6a1dfe2e0a4c Mon Sep 17 00:00:00 2001 From: Arc Wang Date: Wed, 10 Nov 2021 14:38:55 +0800 Subject: [PATCH] [Large screen] Shows MobileNetworkActivity in 2-pane MobileNetworkActivity has launchMode singleTask, it makes the Activity shows in full screen instead of 2-pane. This change register SplitPairRule for the Activity to show in 2-pane. However, there are other objects which starts MobileNetworkActivity, it still needs later CL to refine and register SplitPairRule for other objects which starts MobileNetworkActivity. Bug: 204039043 Test: manual Settings -> Network & Internet -> SIMs Change-Id: Ia15c17c88efd46c5bb2b41aa21848293b9ff5610 --- .../settings/network/MobileNetworkSummaryController.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/network/MobileNetworkSummaryController.java b/src/com/android/settings/network/MobileNetworkSummaryController.java index f2e28a33888..bd28e70255d 100644 --- a/src/com/android/settings/network/MobileNetworkSummaryController.java +++ b/src/com/android/settings/network/MobileNetworkSummaryController.java @@ -33,9 +33,9 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; +import com.android.settings.activityembedding.ActivityEmbeddingRulesController; import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.dashboard.DashboardFragment; -import com.android.settings.network.helper.SelectableSubscriptions; import com.android.settings.network.helper.SubscriptionAnnotation; import com.android.settings.network.telephony.MobileNetworkActivity; import com.android.settings.overlay.FeatureFactory; @@ -202,6 +202,12 @@ public class MobileNetworkSummaryController extends AbstractPreferenceController || mStatusCache.isPhysicalSimDisableSupport()) { final Intent intent = new Intent(mContext, MobileNetworkActivity.class); intent.putExtra(Settings.EXTRA_SUB_ID, info.getSubscriptionId()); + // MobilenetworkActivity is singleTask, set SplitPairRule to show in 2-pane. + ActivityEmbeddingRulesController.registerTwoPanePairRuleForSettingsHome( + mContext, + intent.getComponent(), + null /* secondaryIntentAction */, + false /* clearTop */); mContext.startActivity(intent); return true; }