Loading src/com/android/settings/MainClear.java +15 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; import android.accounts.Account; Loading @@ -23,6 +26,7 @@ import android.accounts.AccountManager; import android.accounts.AuthenticatorDescription; import android.app.ActionBar; import android.app.Activity; import android.app.admin.DevicePolicyManager; import android.app.settings.SettingsEnums; import android.content.ComponentName; import android.content.ContentResolver; Loading Loading @@ -491,8 +495,17 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis if (profilesSize > 1) { View titleView = Utils.inflateCategoryHeader(inflater, contents); final TextView titleText = (TextView) titleView.findViewById(android.R.id.title); titleText.setText(userInfo.isManagedProfile() ? R.string.category_work : R.string.category_personal); DevicePolicyManager devicePolicyManager = context.getSystemService(DevicePolicyManager.class); if (userInfo.isManagedProfile()) { titleText.setText(devicePolicyManager.getString( WORK_CATEGORY_HEADER, () -> getString(R.string.category_work))); } else { titleText.setText(devicePolicyManager.getString( PERSONAL_CATEGORY_HEADER, () -> getString(R.string.category_personal))); } contents.addView(titleView); } Loading src/com/android/settings/RemoteBugreportActivity.java +24 −6 Original line number Diff line number Diff line Loading @@ -15,6 +15,11 @@ */ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARE_REMOTE_BUGREPORT_DIALOG_TITLE; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARE_REMOTE_BUGREPORT_FINISHED_REQUEST_CONSENT; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARE_REMOTE_BUGREPORT_NOT_FINISHED_REQUEST_CONSENT; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARING_REMOTE_BUGREPORT_MESSAGE; import android.annotation.Nullable; import android.app.Activity; import android.app.admin.DevicePolicyManager; Loading Loading @@ -42,12 +47,16 @@ public class RemoteBugreportActivity extends Activity { protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); DevicePolicyManager devicePolicyManager = getSystemService(DevicePolicyManager.class); final int notificationType = getIntent().getIntExtra( DevicePolicyManager.EXTRA_BUGREPORT_NOTIFICATION_TYPE, -1); if (notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_ACCEPTED_NOT_FINISHED) { AlertDialog dialog = new AlertDialog.Builder(this) .setMessage(R.string.sharing_remote_bugreport_dialog_message) .setMessage(devicePolicyManager.getString( SHARING_REMOTE_BUGREPORT_MESSAGE, () -> getString(R.string.sharing_remote_bugreport_dialog_message))) .setOnDismissListener(new DialogInterface.OnDismissListener() { @Override public void onDismiss(DialogInterface dialog) { Loading @@ -65,12 +74,21 @@ public class RemoteBugreportActivity extends Activity { } else if (notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_STARTED || notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_FINISHED_NOT_ACCEPTED) { AlertDialog dialog = new AlertDialog.Builder(this) .setTitle(R.string.share_remote_bugreport_dialog_title) .setMessage(notificationType int defaultMessageId = notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_STARTED ? R.string.share_remote_bugreport_dialog_message : R.string.share_remote_bugreport_dialog_message_finished) : R.string.share_remote_bugreport_dialog_message_finished; String overrideMessageId = notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_STARTED ? SHARE_REMOTE_BUGREPORT_NOT_FINISHED_REQUEST_CONSENT : SHARE_REMOTE_BUGREPORT_FINISHED_REQUEST_CONSENT; AlertDialog dialog = new AlertDialog.Builder(this) .setTitle(devicePolicyManager.getString(SHARE_REMOTE_BUGREPORT_DIALOG_TITLE, () -> getString(R.string.share_remote_bugreport_dialog_title))) .setMessage(devicePolicyManager.getString(overrideMessageId, () -> getString(defaultMessageId))) .setOnDismissListener(new DialogInterface.OnDismissListener() { @Override public void onDismiss(DialogInterface dialog) { Loading src/com/android/settings/TrustedCredentialsSettings.java +9 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static android.widget.LinearLayout.LayoutParams.MATCH_PARENT; import static android.widget.LinearLayout.LayoutParams.WRAP_CONTENT; Loading Loading @@ -82,6 +84,7 @@ public class TrustedCredentialsSettings extends InstrumentedFragment private static final String TAG = "TrustedCredentialsSettings"; private DevicePolicyManager mDevicePolicyManager; private UserManager mUserManager; private KeyguardManager mKeyguardManager; private int mTrustAllCaUserId; Loading Loading @@ -179,6 +182,7 @@ public class TrustedCredentialsSettings extends InstrumentedFragment public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final Activity activity = getActivity(); mDevicePolicyManager = activity.getSystemService(DevicePolicyManager.class); mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); mKeyguardManager = (KeyguardManager) activity .getSystemService(Context.KEYGUARD_SERVICE); Loading Loading @@ -385,9 +389,12 @@ public class TrustedCredentialsSettings extends InstrumentedFragment final TextView title = (TextView) convertView.findViewById(android.R.id.title); if (getUserInfoByGroup(groupPosition).isManagedProfile()) { title.setText(R.string.category_work); title.setText(mDevicePolicyManager.getString(WORK_CATEGORY_HEADER, () -> getString(R.string.category_work))); } else { title.setText(R.string.category_personal); title.setText(mDevicePolicyManager.getString(PERSONAL_CATEGORY_HEADER, () -> getString(R.string.category_personal))); } title.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_END); Loading src/com/android/settings/accounts/AccountPreferenceController.java +39 −11 Original line number Diff line number Diff line Loading @@ -16,6 +16,14 @@ package com.android.settings.accounts; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_CATEGORY_PERSONAL; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_CATEGORY_WORK; import static android.app.admin.DevicePolicyResources.Strings.Settings.MANAGED_BY; import static android.app.admin.DevicePolicyResources.Strings.Settings.MANAGED_PROFILE_SETTINGS_TITLE; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.REMOVE_WORK_PROFILE; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_PROFILE_NOT_AVAILABLE; import static android.content.Intent.EXTRA_USER; import static android.os.UserManager.DISALLOW_MODIFY_ACCOUNTS; import static android.os.UserManager.DISALLOW_REMOVE_MANAGED_PROFILE; Loading @@ -24,6 +32,7 @@ import static android.provider.Settings.EXTRA_AUTHORITIES; import android.accounts.Account; import android.accounts.AccountManager; import android.app.admin.DevicePolicyManager; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; Loading Loading @@ -85,6 +94,7 @@ public class AccountPreferenceController extends AbstractPreferenceController private static final String PREF_KEY_WORK_PROFILE_SETTING = "work_profile_setting"; private UserManager mUm; private DevicePolicyManager mDpm; private SparseArray<ProfileData> mProfiles = new SparseArray<ProfileData>(); private ManagedProfileBroadcastReceiver mManagedProfileBroadcastReceiver = new ManagedProfileBroadcastReceiver(); Loading Loading @@ -146,6 +156,7 @@ public class AccountPreferenceController extends AbstractPreferenceController @ProfileSelectFragment.ProfileType int type) { super(context); mUm = (UserManager) context.getSystemService(Context.USER_SERVICE); mDpm = context.getSystemService(DevicePolicyManager.class); mAuthorities = authorities; mFragment = parent; if (mAuthorities != null) { Loading Loading @@ -188,13 +199,16 @@ public class AccountPreferenceController extends AbstractPreferenceController UserHandle.myUserId())) { final SearchIndexableRaw data = new SearchIndexableRaw(mContext); data.key = PREF_KEY_REMOVE_PROFILE; data.title = res.getString(R.string.remove_managed_profile_label); data.title = mDpm.getString( REMOVE_WORK_PROFILE, () -> res.getString(R.string.remove_managed_profile_label)); data.screenTitle = screenTitle; rawData.add(data); } final SearchIndexableRaw data = new SearchIndexableRaw(mContext); data.key = PREF_KEY_WORK_PROFILE_SETTING; data.title = res.getString(R.string.managed_profile_settings_title); data.title = mDpm.getString(MANAGED_PROFILE_SETTINGS_TITLE, () -> res.getString(R.string.managed_profile_settings_title)); data.screenTitle = screenTitle; rawData.add(data); } Loading Loading @@ -253,7 +267,8 @@ public class AccountPreferenceController extends AbstractPreferenceController new SubSettingLauncher(mContext) .setSourceMetricsCategory(metricsCategory) .setDestination(ManagedProfileSettings.class.getName()) .setTitleRes(R.string.managed_profile_settings_title) .setTitleText(mDpm.getString(MANAGED_PROFILE_SETTINGS_TITLE, () -> mContext.getString(R.string.managed_profile_settings_title))) .setArguments(arguments) .launch(); Loading Loading @@ -331,11 +346,15 @@ public class AccountPreferenceController extends AbstractPreferenceController preferenceGroup.setContentDescription(title); } else if (userInfo.isManagedProfile()) { if (mType == ProfileSelectFragment.ProfileType.ALL) { preferenceGroup.setTitle(R.string.category_work); preferenceGroup.setTitle( mDpm.getString(WORK_CATEGORY_HEADER, () -> mContext.getString(R.string.category_work))); final String workGroupSummary = getWorkGroupSummary(context, userInfo); preferenceGroup.setSummary(workGroupSummary); preferenceGroup.setContentDescription( mContext.getString(R.string.accessibility_category_work, workGroupSummary)); mDpm.getString(ACCESSIBILITY_CATEGORY_WORK, () -> mContext.getString( R.string.accessibility_category_work, workGroupSummary))); } profileData.removeWorkProfilePreference = newRemoveWorkProfilePreference(); mHelper.enforceRestrictionOnPreference(profileData.removeWorkProfilePreference, Loading @@ -343,9 +362,12 @@ public class AccountPreferenceController extends AbstractPreferenceController profileData.managedProfilePreference = newManagedProfileSettings(); } else { if (mType == ProfileSelectFragment.ProfileType.ALL) { preferenceGroup.setTitle(R.string.category_personal); preferenceGroup.setTitle( mDpm.getString(PERSONAL_CATEGORY_HEADER, () -> mContext.getString(R.string.category_personal))); preferenceGroup.setContentDescription( mContext.getString(R.string.accessibility_category_personal)); mDpm.getString(ACCESSIBILITY_CATEGORY_PERSONAL, () -> mContext.getString(R.string.accessibility_category_personal))); } } final PreferenceScreen screen = mFragment.getPreferenceScreen(); Loading Loading @@ -378,7 +400,9 @@ public class AccountPreferenceController extends AbstractPreferenceController RestrictedPreference preference = new RestrictedPreference( mFragment.getPreferenceManager().getContext()); preference.setKey(PREF_KEY_REMOVE_PROFILE); preference.setTitle(R.string.remove_managed_profile_label); preference.setTitle( mDpm.getString(REMOVE_WORK_PROFILE, () -> mContext.getString(R.string.remove_managed_profile_label))); preference.setIcon(R.drawable.ic_delete); preference.setOnPreferenceClickListener(this); preference.setOrder(ORDER_LAST); Loading @@ -389,7 +413,8 @@ public class AccountPreferenceController extends AbstractPreferenceController private Preference newManagedProfileSettings() { Preference preference = new Preference(mFragment.getPreferenceManager().getContext()); preference.setKey(PREF_KEY_WORK_PROFILE_SETTING); preference.setTitle(R.string.managed_profile_settings_title); preference.setTitle(mDpm.getString(MANAGED_PROFILE_SETTINGS_TITLE, () -> mContext.getString(R.string.managed_profile_settings_title))); preference.setIcon(R.drawable.ic_settings_24dp); preference.setOnPreferenceClickListener(this); preference.setOrder(ORDER_NEXT_TO_LAST); Loading @@ -403,7 +428,8 @@ public class AccountPreferenceController extends AbstractPreferenceController return null; } CharSequence appLabel = packageManager.getApplicationLabel(adminApplicationInfo); return mContext.getString(R.string.managing_admin, appLabel); return mDpm.getString(MANAGED_BY, () -> mContext.getString(R.string.managing_admin, appLabel), appLabel); } void cleanUpPreferences() { Loading Loading @@ -482,7 +508,9 @@ public class AccountPreferenceController extends AbstractPreferenceController mProfileNotAvailablePreference.setIcon(R.drawable.empty_icon); mProfileNotAvailablePreference.setTitle(null); mProfileNotAvailablePreference.setSummary( R.string.managed_profile_not_available_label); mDpm.getString( WORK_PROFILE_NOT_AVAILABLE, () -> mContext.getString( R.string.managed_profile_not_available_label))); profileData.preferenceGroup.addPreference(mProfileNotAvailablePreference); } if (profileData.removeWorkProfilePreference != null) { Loading src/com/android/settings/accounts/AccountSyncSettings.java +17 −3 Original line number Diff line number Diff line Loading @@ -16,10 +16,14 @@ package com.android.settings.accounts; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_PERSONAL_ACCOUNT_TITLE; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_WORK_ACCOUNT_TITLE; import android.accounts.Account; import android.accounts.AccountManager; import android.app.Activity; import android.app.Dialog; import android.app.admin.DevicePolicyManager; import android.app.settings.SettingsEnums; import android.content.ContentResolver; import android.content.Context; Loading Loading @@ -154,10 +158,20 @@ public class AccountSyncSettings extends AccountPreferenceBase { UserInfo user = um.getUserInfo(mUserHandle.getIdentifier()); boolean isWorkProfile = user != null ? user.isManagedProfile() : false; CharSequence currentTitle = getActivity().getTitle(); DevicePolicyManager devicePolicyManager = getSystemService(DevicePolicyManager.class); String accessibilityTitle = getString(isWorkProfile ? R.string.accessibility_work_account_title : R.string.accessibility_personal_account_title, currentTitle); isWorkProfile ? devicePolicyManager.getString(ACCESSIBILITY_WORK_ACCOUNT_TITLE, () -> getString(R.string.accessibility_work_account_title, currentTitle), currentTitle) : devicePolicyManager.getString( ACCESSIBILITY_PERSONAL_ACCOUNT_TITLE, () -> getString( R.string.accessibility_personal_account_title, currentTitle), currentTitle); getActivity().setTitle(Utils.createAccessibleSequence(currentTitle, accessibilityTitle)); } Loading Loading
src/com/android/settings/MainClear.java +15 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,9 @@ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; import android.accounts.Account; Loading @@ -23,6 +26,7 @@ import android.accounts.AccountManager; import android.accounts.AuthenticatorDescription; import android.app.ActionBar; import android.app.Activity; import android.app.admin.DevicePolicyManager; import android.app.settings.SettingsEnums; import android.content.ComponentName; import android.content.ContentResolver; Loading Loading @@ -491,8 +495,17 @@ public class MainClear extends InstrumentedFragment implements OnGlobalLayoutLis if (profilesSize > 1) { View titleView = Utils.inflateCategoryHeader(inflater, contents); final TextView titleText = (TextView) titleView.findViewById(android.R.id.title); titleText.setText(userInfo.isManagedProfile() ? R.string.category_work : R.string.category_personal); DevicePolicyManager devicePolicyManager = context.getSystemService(DevicePolicyManager.class); if (userInfo.isManagedProfile()) { titleText.setText(devicePolicyManager.getString( WORK_CATEGORY_HEADER, () -> getString(R.string.category_work))); } else { titleText.setText(devicePolicyManager.getString( PERSONAL_CATEGORY_HEADER, () -> getString(R.string.category_personal))); } contents.addView(titleView); } Loading
src/com/android/settings/RemoteBugreportActivity.java +24 −6 Original line number Diff line number Diff line Loading @@ -15,6 +15,11 @@ */ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARE_REMOTE_BUGREPORT_DIALOG_TITLE; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARE_REMOTE_BUGREPORT_FINISHED_REQUEST_CONSENT; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARE_REMOTE_BUGREPORT_NOT_FINISHED_REQUEST_CONSENT; import static android.app.admin.DevicePolicyResources.Strings.Settings.SHARING_REMOTE_BUGREPORT_MESSAGE; import android.annotation.Nullable; import android.app.Activity; import android.app.admin.DevicePolicyManager; Loading Loading @@ -42,12 +47,16 @@ public class RemoteBugreportActivity extends Activity { protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); DevicePolicyManager devicePolicyManager = getSystemService(DevicePolicyManager.class); final int notificationType = getIntent().getIntExtra( DevicePolicyManager.EXTRA_BUGREPORT_NOTIFICATION_TYPE, -1); if (notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_ACCEPTED_NOT_FINISHED) { AlertDialog dialog = new AlertDialog.Builder(this) .setMessage(R.string.sharing_remote_bugreport_dialog_message) .setMessage(devicePolicyManager.getString( SHARING_REMOTE_BUGREPORT_MESSAGE, () -> getString(R.string.sharing_remote_bugreport_dialog_message))) .setOnDismissListener(new DialogInterface.OnDismissListener() { @Override public void onDismiss(DialogInterface dialog) { Loading @@ -65,12 +74,21 @@ public class RemoteBugreportActivity extends Activity { } else if (notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_STARTED || notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_FINISHED_NOT_ACCEPTED) { AlertDialog dialog = new AlertDialog.Builder(this) .setTitle(R.string.share_remote_bugreport_dialog_title) .setMessage(notificationType int defaultMessageId = notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_STARTED ? R.string.share_remote_bugreport_dialog_message : R.string.share_remote_bugreport_dialog_message_finished) : R.string.share_remote_bugreport_dialog_message_finished; String overrideMessageId = notificationType == DevicePolicyManager.NOTIFICATION_BUGREPORT_STARTED ? SHARE_REMOTE_BUGREPORT_NOT_FINISHED_REQUEST_CONSENT : SHARE_REMOTE_BUGREPORT_FINISHED_REQUEST_CONSENT; AlertDialog dialog = new AlertDialog.Builder(this) .setTitle(devicePolicyManager.getString(SHARE_REMOTE_BUGREPORT_DIALOG_TITLE, () -> getString(R.string.share_remote_bugreport_dialog_title))) .setMessage(devicePolicyManager.getString(overrideMessageId, () -> getString(defaultMessageId))) .setOnDismissListener(new DialogInterface.OnDismissListener() { @Override public void onDismiss(DialogInterface dialog) { Loading
src/com/android/settings/TrustedCredentialsSettings.java +9 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.settings; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static android.widget.LinearLayout.LayoutParams.MATCH_PARENT; import static android.widget.LinearLayout.LayoutParams.WRAP_CONTENT; Loading Loading @@ -82,6 +84,7 @@ public class TrustedCredentialsSettings extends InstrumentedFragment private static final String TAG = "TrustedCredentialsSettings"; private DevicePolicyManager mDevicePolicyManager; private UserManager mUserManager; private KeyguardManager mKeyguardManager; private int mTrustAllCaUserId; Loading Loading @@ -179,6 +182,7 @@ public class TrustedCredentialsSettings extends InstrumentedFragment public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final Activity activity = getActivity(); mDevicePolicyManager = activity.getSystemService(DevicePolicyManager.class); mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); mKeyguardManager = (KeyguardManager) activity .getSystemService(Context.KEYGUARD_SERVICE); Loading Loading @@ -385,9 +389,12 @@ public class TrustedCredentialsSettings extends InstrumentedFragment final TextView title = (TextView) convertView.findViewById(android.R.id.title); if (getUserInfoByGroup(groupPosition).isManagedProfile()) { title.setText(R.string.category_work); title.setText(mDevicePolicyManager.getString(WORK_CATEGORY_HEADER, () -> getString(R.string.category_work))); } else { title.setText(R.string.category_personal); title.setText(mDevicePolicyManager.getString(PERSONAL_CATEGORY_HEADER, () -> getString(R.string.category_personal))); } title.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_END); Loading
src/com/android/settings/accounts/AccountPreferenceController.java +39 −11 Original line number Diff line number Diff line Loading @@ -16,6 +16,14 @@ package com.android.settings.accounts; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_CATEGORY_PERSONAL; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_CATEGORY_WORK; import static android.app.admin.DevicePolicyResources.Strings.Settings.MANAGED_BY; import static android.app.admin.DevicePolicyResources.Strings.Settings.MANAGED_PROFILE_SETTINGS_TITLE; import static android.app.admin.DevicePolicyResources.Strings.Settings.PERSONAL_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.REMOVE_WORK_PROFILE; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_CATEGORY_HEADER; import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_PROFILE_NOT_AVAILABLE; import static android.content.Intent.EXTRA_USER; import static android.os.UserManager.DISALLOW_MODIFY_ACCOUNTS; import static android.os.UserManager.DISALLOW_REMOVE_MANAGED_PROFILE; Loading @@ -24,6 +32,7 @@ import static android.provider.Settings.EXTRA_AUTHORITIES; import android.accounts.Account; import android.accounts.AccountManager; import android.app.admin.DevicePolicyManager; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; Loading Loading @@ -85,6 +94,7 @@ public class AccountPreferenceController extends AbstractPreferenceController private static final String PREF_KEY_WORK_PROFILE_SETTING = "work_profile_setting"; private UserManager mUm; private DevicePolicyManager mDpm; private SparseArray<ProfileData> mProfiles = new SparseArray<ProfileData>(); private ManagedProfileBroadcastReceiver mManagedProfileBroadcastReceiver = new ManagedProfileBroadcastReceiver(); Loading Loading @@ -146,6 +156,7 @@ public class AccountPreferenceController extends AbstractPreferenceController @ProfileSelectFragment.ProfileType int type) { super(context); mUm = (UserManager) context.getSystemService(Context.USER_SERVICE); mDpm = context.getSystemService(DevicePolicyManager.class); mAuthorities = authorities; mFragment = parent; if (mAuthorities != null) { Loading Loading @@ -188,13 +199,16 @@ public class AccountPreferenceController extends AbstractPreferenceController UserHandle.myUserId())) { final SearchIndexableRaw data = new SearchIndexableRaw(mContext); data.key = PREF_KEY_REMOVE_PROFILE; data.title = res.getString(R.string.remove_managed_profile_label); data.title = mDpm.getString( REMOVE_WORK_PROFILE, () -> res.getString(R.string.remove_managed_profile_label)); data.screenTitle = screenTitle; rawData.add(data); } final SearchIndexableRaw data = new SearchIndexableRaw(mContext); data.key = PREF_KEY_WORK_PROFILE_SETTING; data.title = res.getString(R.string.managed_profile_settings_title); data.title = mDpm.getString(MANAGED_PROFILE_SETTINGS_TITLE, () -> res.getString(R.string.managed_profile_settings_title)); data.screenTitle = screenTitle; rawData.add(data); } Loading Loading @@ -253,7 +267,8 @@ public class AccountPreferenceController extends AbstractPreferenceController new SubSettingLauncher(mContext) .setSourceMetricsCategory(metricsCategory) .setDestination(ManagedProfileSettings.class.getName()) .setTitleRes(R.string.managed_profile_settings_title) .setTitleText(mDpm.getString(MANAGED_PROFILE_SETTINGS_TITLE, () -> mContext.getString(R.string.managed_profile_settings_title))) .setArguments(arguments) .launch(); Loading Loading @@ -331,11 +346,15 @@ public class AccountPreferenceController extends AbstractPreferenceController preferenceGroup.setContentDescription(title); } else if (userInfo.isManagedProfile()) { if (mType == ProfileSelectFragment.ProfileType.ALL) { preferenceGroup.setTitle(R.string.category_work); preferenceGroup.setTitle( mDpm.getString(WORK_CATEGORY_HEADER, () -> mContext.getString(R.string.category_work))); final String workGroupSummary = getWorkGroupSummary(context, userInfo); preferenceGroup.setSummary(workGroupSummary); preferenceGroup.setContentDescription( mContext.getString(R.string.accessibility_category_work, workGroupSummary)); mDpm.getString(ACCESSIBILITY_CATEGORY_WORK, () -> mContext.getString( R.string.accessibility_category_work, workGroupSummary))); } profileData.removeWorkProfilePreference = newRemoveWorkProfilePreference(); mHelper.enforceRestrictionOnPreference(profileData.removeWorkProfilePreference, Loading @@ -343,9 +362,12 @@ public class AccountPreferenceController extends AbstractPreferenceController profileData.managedProfilePreference = newManagedProfileSettings(); } else { if (mType == ProfileSelectFragment.ProfileType.ALL) { preferenceGroup.setTitle(R.string.category_personal); preferenceGroup.setTitle( mDpm.getString(PERSONAL_CATEGORY_HEADER, () -> mContext.getString(R.string.category_personal))); preferenceGroup.setContentDescription( mContext.getString(R.string.accessibility_category_personal)); mDpm.getString(ACCESSIBILITY_CATEGORY_PERSONAL, () -> mContext.getString(R.string.accessibility_category_personal))); } } final PreferenceScreen screen = mFragment.getPreferenceScreen(); Loading Loading @@ -378,7 +400,9 @@ public class AccountPreferenceController extends AbstractPreferenceController RestrictedPreference preference = new RestrictedPreference( mFragment.getPreferenceManager().getContext()); preference.setKey(PREF_KEY_REMOVE_PROFILE); preference.setTitle(R.string.remove_managed_profile_label); preference.setTitle( mDpm.getString(REMOVE_WORK_PROFILE, () -> mContext.getString(R.string.remove_managed_profile_label))); preference.setIcon(R.drawable.ic_delete); preference.setOnPreferenceClickListener(this); preference.setOrder(ORDER_LAST); Loading @@ -389,7 +413,8 @@ public class AccountPreferenceController extends AbstractPreferenceController private Preference newManagedProfileSettings() { Preference preference = new Preference(mFragment.getPreferenceManager().getContext()); preference.setKey(PREF_KEY_WORK_PROFILE_SETTING); preference.setTitle(R.string.managed_profile_settings_title); preference.setTitle(mDpm.getString(MANAGED_PROFILE_SETTINGS_TITLE, () -> mContext.getString(R.string.managed_profile_settings_title))); preference.setIcon(R.drawable.ic_settings_24dp); preference.setOnPreferenceClickListener(this); preference.setOrder(ORDER_NEXT_TO_LAST); Loading @@ -403,7 +428,8 @@ public class AccountPreferenceController extends AbstractPreferenceController return null; } CharSequence appLabel = packageManager.getApplicationLabel(adminApplicationInfo); return mContext.getString(R.string.managing_admin, appLabel); return mDpm.getString(MANAGED_BY, () -> mContext.getString(R.string.managing_admin, appLabel), appLabel); } void cleanUpPreferences() { Loading Loading @@ -482,7 +508,9 @@ public class AccountPreferenceController extends AbstractPreferenceController mProfileNotAvailablePreference.setIcon(R.drawable.empty_icon); mProfileNotAvailablePreference.setTitle(null); mProfileNotAvailablePreference.setSummary( R.string.managed_profile_not_available_label); mDpm.getString( WORK_PROFILE_NOT_AVAILABLE, () -> mContext.getString( R.string.managed_profile_not_available_label))); profileData.preferenceGroup.addPreference(mProfileNotAvailablePreference); } if (profileData.removeWorkProfilePreference != null) { Loading
src/com/android/settings/accounts/AccountSyncSettings.java +17 −3 Original line number Diff line number Diff line Loading @@ -16,10 +16,14 @@ package com.android.settings.accounts; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_PERSONAL_ACCOUNT_TITLE; import static android.app.admin.DevicePolicyResources.Strings.Settings.ACCESSIBILITY_WORK_ACCOUNT_TITLE; import android.accounts.Account; import android.accounts.AccountManager; import android.app.Activity; import android.app.Dialog; import android.app.admin.DevicePolicyManager; import android.app.settings.SettingsEnums; import android.content.ContentResolver; import android.content.Context; Loading Loading @@ -154,10 +158,20 @@ public class AccountSyncSettings extends AccountPreferenceBase { UserInfo user = um.getUserInfo(mUserHandle.getIdentifier()); boolean isWorkProfile = user != null ? user.isManagedProfile() : false; CharSequence currentTitle = getActivity().getTitle(); DevicePolicyManager devicePolicyManager = getSystemService(DevicePolicyManager.class); String accessibilityTitle = getString(isWorkProfile ? R.string.accessibility_work_account_title : R.string.accessibility_personal_account_title, currentTitle); isWorkProfile ? devicePolicyManager.getString(ACCESSIBILITY_WORK_ACCOUNT_TITLE, () -> getString(R.string.accessibility_work_account_title, currentTitle), currentTitle) : devicePolicyManager.getString( ACCESSIBILITY_PERSONAL_ACCOUNT_TITLE, () -> getString( R.string.accessibility_personal_account_title, currentTitle), currentTitle); getActivity().setTitle(Utils.createAccessibleSequence(currentTitle, accessibilityTitle)); } Loading