diff --git a/res/values/strings.xml b/res/values/strings.xml
index 0354bec9faa..b2d21c6be1f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -2741,10 +2741,16 @@ found in the list of installed applications.
%1$s?
-
+
%1$s can
collect all of the text you type, except passwords. This includes personal data such as credit card
- numbers. It can also collect data about your interactions with the device.
+ numbers. It can also collect data about your interactions with the tablet.
+
+
+ %1$s can
+ collect all of the text you type, except passwords. This includes personal data such as credit card
+ numbers. It can also collect data about your interactions with the phone.
@@ -2755,16 +2761,20 @@ found in the list of installed applications.
Touching OK will
stop %1$s.
+
+ No services installed
+
- No accessibility applications
+ Need a screen reader?
- You don\'t have accessibility
- applications installed. Do you want to download a screen reader from the Android Market?
+ TalkBack provides spoken feedback to
+ help blind and low-vision users. Do you want to install it for free from Android
+ Market?
+ when the user selects to enable script downloading. [CHAR LIMIT=50] -->
Install accessibility scripts?
@@ -2774,10 +2784,12 @@ found in the list of installed applications.
This feature changes the
way your device responds to touch. Turn on?
-
- This accessibility service has no
- description.\n\nAccessibility services provide various types of feedback when you interact
- with the device.
+
+ This service has no
+ description.\n\nServices provide feedback when you interact with the tablet.
+
+ This service has no
+ description.\n\nServices provide feedback when you interact with the phone.
Settings
diff --git a/res/xml/accessibility_settings.xml b/res/xml/accessibility_settings.xml
index bd054adf01f..45f1dce9651 100644
--- a/res/xml/accessibility_settings.xml
+++ b/res/xml/accessibility_settings.xml
@@ -30,22 +30,26 @@
+ android:persistent="false"
+ android:order="1"/>
+ android:persistent="false"
+ android:order="2"/>
+ android:persistent="false"
+ android:order="3"/>
+ android:fragment="com.android.settings.AccessibilitySettings$ToggleTouchExplorationFragment"
+ android:order="4" >
@@ -58,7 +62,8 @@
android:title="@string/accessibility_long_press_timeout_title"
android:entries="@array/long_press_timeout_selector_titles"
android:entryValues="@array/long_press_timeout_selector_values"
- android:persistent="false"/>
+ android:persistent="false"
+ android:order="5"/>
+ android:persistent="false"
+ android:order="6"/>
diff --git a/src/com/android/settings/AccessibilitySettings.java b/src/com/android/settings/AccessibilitySettings.java
index e87b3e820b1..f98ca7e4a50 100644
--- a/src/com/android/settings/AccessibilitySettings.java
+++ b/src/com/android/settings/AccessibilitySettings.java
@@ -153,6 +153,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
private Preference mToggleTouchExplorationPreference;
private ListPreference mSelectLongPressTimeoutPreference;
private AccessibilityEnableScriptInjectionPreference mToggleScriptInjectionPreference;
+ private Preference mNoServicesMessagePreference;
private int mLongPressTimeoutDefault;
@@ -376,7 +377,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
containerView.setGravity(Gravity.CENTER);
TextView summaryView = (TextView) view.findViewById(R.id.summary);
- String title = getString(R.string.accessibility_service_no_apps_title);
+ String title = getString(R.string.accessibility_no_services_installed);
summaryView.setText(title);
}
};
@@ -389,8 +390,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
}
}
- private Preference mNoServicesMessagePreference;
-
private void updateSystemPreferences() {
// Large text.
try {
@@ -417,16 +416,22 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
mToggleAutoRotateScreenPreference.setChecked(autoRotationEnabled);
// Touch exploration enabled.
- final boolean touchExplorationEnabled = (Settings.Secure.getInt(getContentResolver(),
- Settings.Secure.TOUCH_EXPLORATION_ENABLED, 0) == 1);
- if (touchExplorationEnabled) {
- mToggleTouchExplorationPreference.setSummary(
- getString(R.string.accessibility_service_state_on));
- mToggleTouchExplorationPreference.getExtras().putBoolean(EXTRA_CHECKED, true);
+ if (AccessibilityManager.getInstance(getActivity()).isEnabled()) {
+ mSystemsCategory.addPreference(mToggleTouchExplorationPreference);
+ final boolean touchExplorationEnabled = (Settings.Secure.getInt(getContentResolver(),
+ Settings.Secure.TOUCH_EXPLORATION_ENABLED, 0) == 1);
+ if (touchExplorationEnabled) {
+ mToggleTouchExplorationPreference.setSummary(
+ getString(R.string.accessibility_service_state_on));
+ mToggleTouchExplorationPreference.getExtras().putBoolean(EXTRA_CHECKED, true);
+ } else {
+ mToggleTouchExplorationPreference.setSummary(
+ getString(R.string.accessibility_service_state_off));
+ mToggleTouchExplorationPreference.getExtras().putBoolean(EXTRA_CHECKED, false);
+ }
+
} else {
- mToggleTouchExplorationPreference.setSummary(
- getString(R.string.accessibility_service_state_off));
- mToggleTouchExplorationPreference.getExtras().putBoolean(EXTRA_CHECKED, false);
+ mSystemsCategory.removePreference(mToggleTouchExplorationPreference);
}
// Long press timeout.
@@ -443,7 +448,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
}
private void offerInstallAccessibilitySerivceOnce() {
- if (mServicesCategory.getPreferenceCount() > 0) {
+ // There is always one preference - if no services it is just a message.
+ if (mServicesCategory.getPreference(0) != mNoServicesMessagePreference) {
return;
}
SharedPreferences preferences = getActivity().getPreferences(Context.MODE_PRIVATE);
@@ -578,7 +584,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
// Enabling the first service enables accessibility.
Settings.Secure.putInt(getContentResolver(),
Settings.Secure.ACCESSIBILITY_ENABLED, 1);
-
} else if (length > 0) {
enabledServices += ENABLED_ACCESSIBILITY_SERVICES_SEPARATOR + preferenceKey;
Settings.Secure.putString(getContentResolver(),