Add preference summary when disabled by admin.

Change-Id: Iaa84e66b0abe0fccde50f116cbf6e68c6abbabc0
This commit is contained in:
Sudheer Shanka
2016-01-25 22:39:34 +00:00
parent 20c9817713
commit ba1a68b8ab
10 changed files with 21 additions and 15 deletions

View File

@@ -3813,8 +3813,6 @@
<string name="accessibility_feature_state_on">On</string>
<!-- Summary for the disabled state of an accessibility feature. [CHAR LIMIT=10] -->
<string name="accessibility_feature_state_off">Off</string>
<!-- Summary when an accessibility feature or ime is not permitted. [CHAR LIMIT=40] -->
<string name="accessibility_feature_or_input_method_not_allowed">Not allowed by your organization</string>
<!-- Title for the preference category containing the video caption preview. [CHAR LIMIT=35] -->
<string name="captioning_preview_title">Preview</string>

View File

@@ -51,6 +51,7 @@
android:key="network_reset"
android:title="@string/reset_network_title"
settings:keywords="@string/keywords_network_reset"
settings:useAdminDisabledSummary="true"
android:fragment="com.android.settings.ResetNetwork" />
<!-- Factory reset -->
@@ -59,6 +60,7 @@
android:title="@string/master_clear_title"
settings:keywords="@string/keywords_factory_data_reset"
settings:userRestriction="no_factory_reset"
settings:useAdminDisabledSummary="true"
android:fragment="com.android.settings.MasterClear" />
</PreferenceScreen>

View File

@@ -62,6 +62,7 @@
<com.android.settingslib.RestrictedPreference
android:key="zen_mode"
android:title="@string/zen_mode_settings_title"
settings:useAdminDisabledSummary="true"
settings:keywords="@string/keywords_sounds_and_notifications_interruptions"
android:fragment="com.android.settings.notification.ZenModeSettings" />
@@ -91,7 +92,8 @@
<com.android.settingslib.RestrictedPreference
android:key="cell_broadcast_settings"
android:title="@string/cell_broadcast_settings" >
android:title="@string/cell_broadcast_settings"
settings:useAdminDisabledSummary="true">
<intent
android:action="android.intent.action.MAIN"
android:targetPackage="com.android.cellbroadcastreceiver"

View File

@@ -23,6 +23,7 @@
android:persistent="false" />
<com.android.settingslib.RestrictedPreference
android:key="remove_user"
android:title="@string/user_remove_user" />
android:title="@string/user_remove_user"
settings:useAdminDisabledSummary="true" />
</PreferenceScreen>

View File

@@ -44,12 +44,14 @@
<com.android.settingslib.RestrictedPreference
android:fragment="com.android.settings.TetherSettings"
android:key="tether_settings"
android:title="@string/tether_settings_title_all" />
android:title="@string/tether_settings_title_all"
settings:useAdminDisabledSummary="true" />
<com.android.settingslib.RestrictedPreference
android:fragment="com.android.settings.vpn2.VpnSettings"
android:key="vpn_settings"
android:title="@string/vpn_settings_title" />
android:title="@string/vpn_settings_title"
settings:useAdminDisabledSummary="true" />
<PreferenceScreen
android:key="mobile_network_settings"

View File

@@ -44,11 +44,13 @@ public class DimmableIconPreference extends RestrictedPreference {
public DimmableIconPreference(Context context, AttributeSet attrs) {
super(context, attrs);
mContentDescription = null;
useAdminDisabledSummary(true);
}
public DimmableIconPreference(Context context, @Nullable CharSequence contentDescription) {
super(context);
mContentDescription = contentDescription;
useAdminDisabledSummary(true);
}
private void dimIcon(boolean dimmed) {

View File

@@ -481,6 +481,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
AccessibilityServiceInfo info = installedServices.get(i);
RestrictedPreference preference = new RestrictedPreference(getActivity());
preference.useAdminDisabledSummary(true);
String title = info.getResolveInfo().loadLabel(getPackageManager()).toString();
ServiceInfo serviceInfo = info.getResolveInfo().serviceInfo;
@@ -515,13 +516,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
preference.setEnabled(true);
}
String summaryString;
if (serviceAllowed) {
summaryString = serviceEnabledString;
} else {
summaryString = getString(R.string.accessibility_feature_or_input_method_not_allowed);
preference.setSummary(serviceEnabledString);
}
preference.setSummary(summaryString);
preference.setOrder(i);
preference.setFragment(ToggleAccessibilityServicePreferenceFragment.class.getName());

View File

@@ -39,6 +39,7 @@ public class ProviderPreference extends RestrictedPreference {
setIcon(icon);
setPersistent(false);
setTitle(providerName);
useAdminDisabledSummary(true);
}
public String getAccountType() {

View File

@@ -119,6 +119,7 @@ class InputMethodPreference extends RestrictedSwitchPreference implements OnPref
&& mInputMethodSettingValues.isValidSystemNonAuxAsciiCapableIme(imi, context);
setOnPreferenceClickListener(this);
setOnPreferenceChangeListener(this);
useAdminDisabledSummary(true);
if (!isAllowedByOrganization) {
EnforcedAdmin admin =
RestrictedLockUtils.getProfileOrDeviceOwnerOnCallingUser(context);
@@ -194,7 +195,9 @@ class InputMethodPreference extends RestrictedSwitchPreference implements OnPref
// this preference should be disabled to prevent accidentally disabling an input method.
setEnabled(!((isAlwaysChecked && isImeEnabler()) || (!mIsAllowedByOrganization)));
setChecked(mInputMethodSettingValues.isEnabledImi(mImi));
setSummary(getSummaryString());
if (mIsAllowedByOrganization) {
setSummary(getSummaryString());
}
}
private InputMethodManager getInputMethodManager() {
@@ -203,9 +206,6 @@ class InputMethodPreference extends RestrictedSwitchPreference implements OnPref
private String getSummaryString() {
final Context context = getContext();
if (!mIsAllowedByOrganization) {
return context.getString(R.string.accessibility_feature_or_input_method_not_allowed);
}
final InputMethodManager imm = getInputMethodManager();
final List<InputMethodSubtype> subtypes = imm.getEnabledInputMethodSubtypeList(mImi, true);
final ArrayList<CharSequence> subtypeLabels = new ArrayList<>();

View File

@@ -76,6 +76,7 @@ public class UserPreference extends RestrictedPreference {
mDeleteClickListener = deleteListener;
mSettingsClickListener = settingsListener;
mUserId = userId;
useAdminDisabledSummary(true);
}
private void dimIcon(boolean dimmed) {