[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:icon="@drawable/ic_calls_sms"
|
||||||
android:order="-20"
|
android:order="-20"
|
||||||
android:summary="@string/summary_placeholder"
|
android:summary="@string/summary_placeholder"
|
||||||
|
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||||
settings:allowDividerBelow="true"
|
settings:allowDividerBelow="true"
|
||||||
settings:keywords="@string/calls_and_sms"
|
settings:keywords="@string/calls_and_sms"
|
||||||
settings:useAdminDisabledSummary="true" />
|
settings:useAdminDisabledSummary="true" />
|
||||||
@@ -49,6 +50,7 @@
|
|||||||
android:order="-15"
|
android:order="-15"
|
||||||
settings:keywords="@string/keywords_more_mobile_networks"
|
settings:keywords="@string/keywords_more_mobile_networks"
|
||||||
settings:userRestriction="no_config_mobile_networks"
|
settings:userRestriction="no_config_mobile_networks"
|
||||||
|
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||||
settings:allowDividerAbove="true"
|
settings:allowDividerAbove="true"
|
||||||
settings:useAdminDisabledSummary="true" />
|
settings:useAdminDisabledSummary="true" />
|
||||||
|
|
||||||
@@ -66,6 +68,7 @@
|
|||||||
android:persistent="false"
|
android:persistent="false"
|
||||||
android:order="19"
|
android:order="19"
|
||||||
settings:userRestriction="no_config_mobile_networks"
|
settings:userRestriction="no_config_mobile_networks"
|
||||||
|
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||||
settings:useAdminDisabledSummary="true" />
|
settings:useAdminDisabledSummary="true" />
|
||||||
|
|
||||||
<com.android.settingslib.RestrictedPreference
|
<com.android.settingslib.RestrictedPreference
|
||||||
|
@@ -46,6 +46,7 @@
|
|||||||
android:key="provider_model_mobile_network"
|
android:key="provider_model_mobile_network"
|
||||||
android:title="@string/summary_placeholder"
|
android:title="@string/summary_placeholder"
|
||||||
android:layout="@layout/preference_category_no_label"
|
android:layout="@layout/preference_category_no_label"
|
||||||
|
settings:isPreferenceVisible="@bool/config_show_sim_info"
|
||||||
settings:controller="com.android.settings.network.NetworkMobileProviderController"/>
|
settings:controller="com.android.settings.network.NetworkMobileProviderController"/>
|
||||||
|
|
||||||
<com.android.settingslib.RestrictedSwitchPreference
|
<com.android.settingslib.RestrictedSwitchPreference
|
||||||
|
@@ -209,7 +209,8 @@ public class MobileNetworkSummaryController extends AbstractPreferenceController
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public boolean isAvailable() {
|
||||||
return !Utils.isWifiOnly(mContext) && mUserManager.isAdminUser();
|
return SubscriptionUtil.isSimHardwareVisible(mContext) &&
|
||||||
|
!Utils.isWifiOnly(mContext) && mUserManager.isAdminUser();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -190,7 +190,8 @@ public class NetworkProviderCallsSmsController extends AbstractPreferenceControl
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public boolean isAvailable() {
|
||||||
return mUserManager.isAdminUser();
|
return SubscriptionUtil.isSimHardwareVisible(mContext) &&
|
||||||
|
mUserManager.isAdminUser();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -100,7 +100,8 @@ public class NetworkProviderCallsSmsFragment extends DashboardFragment {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected boolean isPageSearchEnabled(Context context) {
|
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() {
|
private void addNetworkMobileProviderController() {
|
||||||
|
if (!showAnySubscriptionInfo(getContext())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (mNetworkMobileProviderController == null) {
|
if (mNetworkMobileProviderController == null) {
|
||||||
mNetworkMobileProviderController = new NetworkMobileProviderController(
|
mNetworkMobileProviderController = new NetworkMobileProviderController(
|
||||||
getContext(), PREF_KEY_PROVIDER_MOBILE_NETWORK);
|
getContext(), PREF_KEY_PROVIDER_MOBILE_NETWORK);
|
||||||
|
@@ -145,7 +145,10 @@ public class NetworkProviderSettingsTest {
|
|||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
mNetworkProviderSettings = spy(new NetworkProviderSettings());
|
mNetworkProviderSettings = spy(new NetworkProviderSettings() {
|
||||||
|
@Override
|
||||||
|
boolean showAnySubscriptionInfo(Context context) { return true; }
|
||||||
|
});
|
||||||
doReturn(mContext).when(mNetworkProviderSettings).getContext();
|
doReturn(mContext).when(mNetworkProviderSettings).getContext();
|
||||||
doReturn(mPreferenceManager).when(mNetworkProviderSettings).getPreferenceManager();
|
doReturn(mPreferenceManager).when(mNetworkProviderSettings).getPreferenceManager();
|
||||||
doReturn(mPowerManager).when(mContext).getSystemService(PowerManager.class);
|
doReturn(mPowerManager).when(mContext).getSystemService(PowerManager.class);
|
||||||
|
Reference in New Issue
Block a user