diff --git a/res/values/strings.xml b/res/values/strings.xml index 33873ba51e1..63640b581ef 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -10616,15 +10616,12 @@ Use Wi\u2011Fi for calls to improve quality - Backup calling - If %1$s is unavailable or roaming, use your mobile data SIM for %1$s calls. - backup calling diff --git a/res/xml/mobile_network_settings.xml b/res/xml/mobile_network_settings.xml index 1ce7d27537b..987c2cee5c0 100644 --- a/res/xml/mobile_network_settings.xml +++ b/res/xml/mobile_network_settings.xml @@ -183,6 +183,14 @@ android:persistent="true" settings:controller="com.android.settings.network.telephony.VideoCallingPreferenceController"/> + + + + diff --git a/src/com/android/settings/network/NetworkProviderCallsSmsFragment.java b/src/com/android/settings/network/NetworkProviderCallsSmsFragment.java index ab80f6a0bb1..8d5048cff30 100644 --- a/src/com/android/settings/network/NetworkProviderCallsSmsFragment.java +++ b/src/com/android/settings/network/NetworkProviderCallsSmsFragment.java @@ -26,6 +26,7 @@ import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.dashboard.DashboardFragment; import com.android.settings.network.telephony.CallsDefaultSubscriptionController; +import com.android.settings.network.telephony.NetworkProviderBackupCallingPreferenceController; import com.android.settings.network.telephony.NetworkProviderWifiCallingPreferenceController; import com.android.settings.network.telephony.SmsDefaultSubscriptionController; import com.android.settings.search.BaseSearchIndexProvider; @@ -41,6 +42,9 @@ public class NetworkProviderCallsSmsFragment extends DashboardFragment { static final String LOG_TAG = "NetworkProviderCallsSmsFragment"; @VisibleForTesting static final String KEY_PREFERENCE_CATEGORY_CALLING = "provider_model_calling_category"; + @VisibleForTesting + static final String KEY_PREFERENCE_CATEGORY_BACKUP_CALLING = + "provider_model_backup_calling_category"; @VisibleForTesting static final String KEY_PREFERENCE_CALLS= "provider_model_calls_preference"; @@ -63,6 +67,12 @@ public class NetworkProviderCallsSmsFragment extends DashboardFragment { mNetworkProviderWifiCallingPreferenceController.init(getSettingsLifecycle()); controllers.add(mNetworkProviderWifiCallingPreferenceController); + NetworkProviderBackupCallingPreferenceController backupCallingPrefCtrl = + new NetworkProviderBackupCallingPreferenceController(context, + KEY_PREFERENCE_CATEGORY_BACKUP_CALLING); + backupCallingPrefCtrl.init(getSettingsLifecycle()); + controllers.add(backupCallingPrefCtrl); + return controllers; } diff --git a/src/com/android/settings/network/telephony/BackupCallingPreferenceController.java b/src/com/android/settings/network/telephony/BackupCallingPreferenceController.java index 3db6dfe87e8..4f64399f524 100644 --- a/src/com/android/settings/network/telephony/BackupCallingPreferenceController.java +++ b/src/com/android/settings/network/telephony/BackupCallingPreferenceController.java @@ -38,7 +38,6 @@ import java.util.Objects; /** * Preference controller for "Backup Calling" - * Deprecated ToDo: b/260059444 remove it next version **/ public class BackupCallingPreferenceController extends TelephonyTogglePreferenceController { diff --git a/src/com/android/settings/network/telephony/MobileNetworkSettings.java b/src/com/android/settings/network/telephony/MobileNetworkSettings.java index 8bc12242fd0..cbd61b168d2 100644 --- a/src/com/android/settings/network/telephony/MobileNetworkSettings.java +++ b/src/com/android/settings/network/telephony/MobileNetworkSettings.java @@ -281,6 +281,11 @@ public class MobileNetworkSettings extends AbstractMobileNetworkSettings impleme final VideoCallingPreferenceController videoCallingPreferenceController = use(VideoCallingPreferenceController.class).init(mSubId); + final BackupCallingPreferenceController crossSimCallingPreferenceController = + use(BackupCallingPreferenceController.class).init(mSubId); + use(CallingPreferenceCategoryController.class).setChildren( + Arrays.asList(wifiCallingPreferenceController, videoCallingPreferenceController, + crossSimCallingPreferenceController)); use(Enhanced4gLtePreferenceController.class).init(mSubId) .addListener(videoCallingPreferenceController); use(Enhanced4gCallingPreferenceController.class).init(mSubId) diff --git a/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroup.java b/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroup.java index 3659f651336..58dd18f2c62 100644 --- a/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroup.java +++ b/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroup.java @@ -49,7 +49,6 @@ import java.util.Map; /** * Preference controller for "Backup Calling" - * Deprecated ToDo: b/260059444 remove it next version **/ public class NetworkProviderBackupCallingGroup extends TelephonyTogglePreferenceController implements LifecycleObserver, diff --git a/src/com/android/settings/network/telephony/NetworkProviderBackupCallingPreferenceController.java b/src/com/android/settings/network/telephony/NetworkProviderBackupCallingPreferenceController.java index c10bfb83d7c..5c336efc507 100644 --- a/src/com/android/settings/network/telephony/NetworkProviderBackupCallingPreferenceController.java +++ b/src/com/android/settings/network/telephony/NetworkProviderBackupCallingPreferenceController.java @@ -32,7 +32,6 @@ import java.util.List; /** * Preference controller for "Backup Calling" summary list - * Deprecated ToDo: b/260059444 remove it next version */ public class NetworkProviderBackupCallingPreferenceController extends BasePreferenceController implements LifecycleObserver { diff --git a/tests/unit/src/com/android/settings/network/telephony/BackupCallingPreferenceControllerTest.java b/tests/unit/src/com/android/settings/network/telephony/BackupCallingPreferenceControllerTest.java index 34d7c925b40..4e110f0d018 100644 --- a/tests/unit/src/com/android/settings/network/telephony/BackupCallingPreferenceControllerTest.java +++ b/tests/unit/src/com/android/settings/network/telephony/BackupCallingPreferenceControllerTest.java @@ -28,13 +28,9 @@ import androidx.test.ext.junit.runners.AndroidJUnit4; import com.android.settings.core.BasePreferenceController; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; -/** - * Deprecated ToDo: b/260059444 remove it next version - */ @RunWith(AndroidJUnit4.class) public class BackupCallingPreferenceControllerTest { private static final int SUB_ID = 2; @@ -51,7 +47,6 @@ public class BackupCallingPreferenceControllerTest { } @Test - @Ignore public void controller_isUnavailable() { assertThat(mController.getAvailabilityStatus()) .isEqualTo(BasePreferenceController.CONDITIONALLY_UNAVAILABLE); diff --git a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java index 09f020085f3..a5717ef519a 100644 --- a/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java +++ b/tests/unit/src/com/android/settings/network/telephony/NetworkProviderBackupCallingGroupTest.java @@ -40,7 +40,6 @@ import com.android.settings.network.CarrierConfigCache; import com.android.settingslib.core.lifecycle.Lifecycle; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; @@ -48,9 +47,6 @@ import org.mockito.MockitoAnnotations; import java.util.List; -/** - * Deprecated ToDo: b/260059444 remove it next version - */ @RunWith(AndroidJUnit4.class) public class NetworkProviderBackupCallingGroupTest { @@ -137,14 +133,12 @@ public class NetworkProviderBackupCallingGroupTest { } @Test - @Ignore public void shouldShowBackupCallingForSub_invalidSubId_returnFalse() { assertThat(mNetworkProviderBackupCallingGroup.hasBackupCallingFeature( SubscriptionManager.INVALID_SUBSCRIPTION_ID)).isEqualTo(false); } @Test - @Ignore public void shouldShowBackupCallingForSub_carrierConfigIsUnavailable_returnFalse() { mCarrierConfig.putBoolean(CarrierConfigManager.KEY_CARRIER_CROSS_SIM_IMS_AVAILABLE_BOOL, false); @@ -154,7 +148,6 @@ public class NetworkProviderBackupCallingGroupTest { } @Test - @Ignore public void shouldShowBackupCallingForSub_crossSimDisabled_returnFalse() { doReturn(false).when(mNetworkProviderBackupCallingGroup).isCrossSimEnabledByPlatform( @@ -165,7 +158,6 @@ public class NetworkProviderBackupCallingGroupTest { } @Test - @Ignore public void shouldBackupCallingForSub_crossSimEnabled_returnTrue() { doReturn(true).when(mNetworkProviderBackupCallingGroup).isCrossSimEnabledByPlatform( mContext, SUB_ID_1);