diff options
| author | Julia Reynolds <juliacr@google.com> | 2015-07-08 16:56:31 -0400 |
|---|---|---|
| committer | Julia Reynolds <juliacr@google.com> | 2015-07-09 13:21:20 -0400 |
| commit | ce25af48383b26535ec07312ab0db6928bba1fe3 (patch) | |
| tree | 13027185bbf8d880de1cdb12f98aa3f2aa907e0f /src/com/android/settings/accounts | |
| parent | 64e1e15d10b41f6993abf4cb77d220a05f79191a (diff) | |
| download | packages_apps_Settings-ce25af48383b26535ec07312ab0db6928bba1fe3.tar.gz packages_apps_Settings-ce25af48383b26535ec07312ab0db6928bba1fe3.tar.bz2 packages_apps_Settings-ce25af48383b26535ec07312ab0db6928bba1fe3.zip | |
Talkback improvements for Settings screens.
Bug: 21164141
Change-Id: I7444261ccf967f6db70c9fe44a00bd3f19ceb975
Diffstat (limited to 'src/com/android/settings/accounts')
| -rw-r--r-- | src/com/android/settings/accounts/AccountSettings.java | 10 | ||||
| -rw-r--r-- | src/com/android/settings/accounts/AccountSyncSettings.java | 14 |
2 files changed, 22 insertions, 2 deletions
diff --git a/src/com/android/settings/accounts/AccountSettings.java b/src/com/android/settings/accounts/AccountSettings.java index c010a7bdc..94958a07a 100644 --- a/src/com/android/settings/accounts/AccountSettings.java +++ b/src/com/android/settings/accounts/AccountSettings.java @@ -49,6 +49,7 @@ import android.preference.PreferenceCategory; import android.preference.PreferenceScreen; import com.android.internal.logging.MetricsLogger; +import com.android.settings.AccessiblePreferenceCategory; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; @@ -270,14 +271,19 @@ public class AccountSettings extends SettingsPreferenceFragment final ProfileData profileData = new ProfileData(); profileData.userInfo = userInfo; if (addCategory) { - profileData.preferenceGroup = new PreferenceCategory(context); + profileData.preferenceGroup = new AccessiblePreferenceCategory(context); if (userInfo.isManagedProfile()) { profileData.preferenceGroup.setLayoutResource(R.layout.work_profile_category); profileData.preferenceGroup.setTitle(R.string.category_work); - profileData.preferenceGroup.setSummary(getWorkGroupSummary(context, userInfo)); + String workGroupSummary = getWorkGroupSummary(context, userInfo); + profileData.preferenceGroup.setSummary(workGroupSummary); + ((AccessiblePreferenceCategory) profileData.preferenceGroup).setContentDescription( + getString(R.string.accessibility_category_work, workGroupSummary)); profileData.removeWorkProfilePreference = newRemoveWorkProfilePreference(context); } else { profileData.preferenceGroup.setTitle(R.string.category_personal); + ((AccessiblePreferenceCategory) profileData.preferenceGroup).setContentDescription( + getString(R.string.accessibility_category_personal)); } parent.addPreference(profileData.preferenceGroup); } else { diff --git a/src/com/android/settings/accounts/AccountSyncSettings.java b/src/com/android/settings/accounts/AccountSyncSettings.java index d1df82a6c..59ca995ba 100644 --- a/src/com/android/settings/accounts/AccountSyncSettings.java +++ b/src/com/android/settings/accounts/AccountSyncSettings.java @@ -35,6 +35,7 @@ import android.content.SyncAdapterType; import android.content.SyncInfo; import android.content.SyncStatusInfo; import android.content.pm.ProviderInfo; +import android.content.pm.UserInfo; import android.os.Bundle; import android.os.UserHandle; import android.os.UserManager; @@ -151,6 +152,7 @@ public class AccountSyncSettings extends AccountPreferenceBase { super.onCreate(icicle); setPreferenceScreen(null); addPreferencesFromResource(R.xml.account_sync_settings); + setAccessibilityTitle(); setHasOptionsMenu(true); } @@ -200,6 +202,18 @@ public class AccountSyncSettings extends AccountPreferenceBase { mProviderId.setText(mAccount.type); } + private void setAccessibilityTitle() { + final UserManager um = (UserManager) getSystemService(Context.USER_SERVICE); + UserInfo user = um.getUserInfo(mUserHandle.getIdentifier()); + boolean isWorkProfile = user != null ? user.isManagedProfile() : false; + CharSequence currentTitle = getActivity().getTitle(); + String accessibilityTitle = + getString(isWorkProfile + ? R.string.accessibility_work_account_title + : R.string.accessibility_personal_account_title, currentTitle); + getActivity().setTitle(Utils.createAccessibleSequence(currentTitle, accessibilityTitle)); + } + @Override public void onResume() { removePreference("dummy"); |
