[Settings] configuration for hidding SIM provider UI
Hide SIM provider UI based on configuraion. Bug: 240515161 Test: test cases and local testing Change-Id: I1cb83787dc1ac1d61bb6bed6aa9c5e7a3ad6e69b
This commit is contained in:
@@ -37,6 +37,7 @@
|
||||
android:icon="@drawable/ic_calls_sms"
|
||||
android:order="-20"
|
||||
android:summary="@string/summary_placeholder"
|
||||
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||
settings:allowDividerBelow="true"
|
||||
settings:keywords="@string/calls_and_sms"
|
||||
settings:useAdminDisabledSummary="true" />
|
||||
@@ -49,6 +50,7 @@
|
||||
android:order="-15"
|
||||
settings:keywords="@string/keywords_more_mobile_networks"
|
||||
settings:userRestriction="no_config_mobile_networks"
|
||||
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||
settings:allowDividerAbove="true"
|
||||
settings:useAdminDisabledSummary="true" />
|
||||
|
||||
@@ -66,6 +68,7 @@
|
||||
android:persistent="false"
|
||||
android:order="19"
|
||||
settings:userRestriction="no_config_mobile_networks"
|
||||
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||
settings:useAdminDisabledSummary="true" />
|
||||
|
||||
<com.android.settingslib.RestrictedPreference
|
||||
|
@@ -46,6 +46,7 @@
|
||||
android:key="provider_model_mobile_network"
|
||||
android:title="@string/summary_placeholder"
|
||||
android:layout="@layout/preference_category_no_label"
|
||||
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||
settings:controller="com.android.settings.network.NetworkMobileProviderController"/>
|
||||
|
||||
<com.android.settingslib.RestrictedSwitchPreference
|
||||
|
@@ -209,7 +209,8 @@ public class MobileNetworkSummaryController extends AbstractPreferenceController
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return !Utils.isWifiOnly(mContext) && mUserManager.isAdminUser();
|
||||
return SubscriptionUtil.isSimHardwareVisible(mContext) &&
|
||||
!Utils.isWifiOnly(mContext) && mUserManager.isAdminUser();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -190,7 +190,8 @@ public class NetworkProviderCallsSmsController extends AbstractPreferenceControl
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return mUserManager.isAdminUser();
|
||||
return SubscriptionUtil.isSimHardwareVisible(mContext) &&
|
||||
mUserManager.isAdminUser();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -100,7 +100,8 @@ public class NetworkProviderCallsSmsFragment extends DashboardFragment {
|
||||
|
||||
@Override
|
||||
protected boolean isPageSearchEnabled(Context context) {
|
||||
return context.getSystemService(UserManager.class).isAdminUser();
|
||||
return SubscriptionUtil.isSimHardwareVisible(context) &&
|
||||
context.getSystemService(UserManager.class).isAdminUser();
|
||||
}
|
||||
};
|
||||
}
|
||||
|
@@ -341,7 +341,18 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Whether to show any UI which is SIM related.
|
||||
*/
|
||||
@VisibleForTesting
|
||||
boolean showAnySubscriptionInfo(Context context) {
|
||||
return (context != null) && SubscriptionUtil.isSimHardwareVisible(context);
|
||||
}
|
||||
|
||||
private void addNetworkMobileProviderController() {
|
||||
if (!showAnySubscriptionInfo(getContext())) {
|
||||
return;
|
||||
}
|
||||
if (mNetworkMobileProviderController == null) {
|
||||
mNetworkMobileProviderController = new NetworkMobileProviderController(
|
||||
getContext(), PREF_KEY_PROVIDER_MOBILE_NETWORK);
|
||||
|
@@ -145,7 +145,10 @@ public class NetworkProviderSettingsTest {
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
mNetworkProviderSettings = spy(new NetworkProviderSettings());
|
||||
mNetworkProviderSettings = spy(new NetworkProviderSettings() {
|
||||
@Override
|
||||
boolean showAnySubscriptionInfo(Context context) { return true; }
|
||||
});
|
||||
doReturn(mContext).when(mNetworkProviderSettings).getContext();
|
||||
doReturn(mPreferenceManager).when(mNetworkProviderSettings).getPreferenceManager();
|
||||
doReturn(mPowerManager).when(mContext).getSystemService(PowerManager.class);
|
||||
|
Reference in New Issue
Block a user