From 7e04f9c3618f5f2db8cefa74ac0841678f7f3910 Mon Sep 17 00:00:00 2001 From: Oliver Scott Date: Tue, 24 Aug 2021 14:52:10 -0400 Subject: [PATCH] Disable ChooseDataSimActivity if single SIM detected Change-Id: I963a7b4f268698c048cf0eccb15198412b3e2ab3 --- src/org/lineageos/setupwizard/SimMissingActivity.java | 2 ++ src/org/lineageos/setupwizard/util/PhoneMonitor.java | 4 ++++ src/org/lineageos/setupwizard/util/SetupWizardUtils.java | 6 +++++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/org/lineageos/setupwizard/SimMissingActivity.java b/src/org/lineageos/setupwizard/SimMissingActivity.java index 4ac1046b..e30c92cc 100644 --- a/src/org/lineageos/setupwizard/SimMissingActivity.java +++ b/src/org/lineageos/setupwizard/SimMissingActivity.java @@ -71,6 +71,8 @@ public class SimMissingActivity extends BaseSetupWizardActivity { if (mPhoneMonitor.simMissing()) { SetupWizardUtils.disableComponent(this, ChooseDataSimActivity.class); SetupWizardUtils.disableComponent(this, MobileDataActivity.class); + } else if (!mPhoneMonitor.isMultiSimDevice() || mPhoneMonitor.singleSimInserted()) { + SetupWizardUtils.disableComponent(this, ChooseDataSimActivity.class); } super.onNavigateNext(); } diff --git a/src/org/lineageos/setupwizard/util/PhoneMonitor.java b/src/org/lineageos/setupwizard/util/PhoneMonitor.java index 47cc4a16..9203eb35 100644 --- a/src/org/lineageos/setupwizard/util/PhoneMonitor.java +++ b/src/org/lineageos/setupwizard/util/PhoneMonitor.java @@ -289,6 +289,10 @@ public class PhoneMonitor { return true; } + public boolean singleSimInserted() { + return mSubscriptionManager.getActiveSubscriptionInfoCount() == 1; + } + // We only care that each slot has a sim public boolean allSimsInserted() { int simSlotCount = mTelephony.getSimCount(); diff --git a/src/org/lineageos/setupwizard/util/SetupWizardUtils.java b/src/org/lineageos/setupwizard/util/SetupWizardUtils.java index bd4c6ea8..383895f8 100644 --- a/src/org/lineageos/setupwizard/util/SetupWizardUtils.java +++ b/src/org/lineageos/setupwizard/util/SetupWizardUtils.java @@ -275,6 +275,10 @@ public class SetupWizardUtils { return PhoneMonitor.getInstance().simMissing(); } + public static boolean singleSimInserted() { + return PhoneMonitor.getInstance().singleSimInserted(); + } + public static boolean isMultiSimDevice() { return PhoneMonitor.getInstance().isMultiSimDevice(); } @@ -293,7 +297,7 @@ public class SetupWizardUtils { } else if (!simMissing()) { disableComponent(context, SimMissingActivity.class); } - if (!isMultiSimDevice()) { + if (!isMultiSimDevice() || singleSimInserted()) { disableComponent(context, ChooseDataSimActivity.class); } if (!SetupWizardUtils.hasWifi(context) ||