From 3f257c4dfba2acc2d61b91baf4f69524a1dc02af Mon Sep 17 00:00:00 2001 From: Svetoslav Date: Thu, 8 Aug 2013 12:35:36 -0700 Subject: [PATCH] Fix a crash in accessibiility settings. Change-Id: I27920668191742ab032de7b71c8f71cc35432e9f --- .../android/settings/accessibility/AccessibilityUtils.java | 3 ++- .../ToggleAccessibilityServicePreferenceFragment.java | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/accessibility/AccessibilityUtils.java b/src/com/android/settings/accessibility/AccessibilityUtils.java index 66a3ed25020..7282bce827e 100644 --- a/src/com/android/settings/accessibility/AccessibilityUtils.java +++ b/src/com/android/settings/accessibility/AccessibilityUtils.java @@ -33,7 +33,8 @@ import java.util.Set; */ class AccessibilityUtils { /** - * @return the set of enabled accessibility services + * @return the set of enabled accessibility services. If there are not services + * it returned the unmodifiable {@link Collections#emptySet()}. */ static Set getEnabledServicesFromSettings(Context context) { final String enabledServicesSetting = Settings.Secure.getString( diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java index 3059dcc60e2..0c568f06301 100644 --- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java +++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java @@ -39,6 +39,8 @@ import android.widget.TextView; import com.android.settings.R; import com.android.settings.accessibility.ToggleSwitch.OnBeforeCheckedChangeListener; +import java.util.Collections; +import java.util.HashSet; import java.util.List; import java.util.Set; @@ -81,6 +83,10 @@ public class ToggleAccessibilityServicePreferenceFragment Set enabledServices = AccessibilityUtils.getEnabledServicesFromSettings( getActivity()); + if (enabledServices == (Set) Collections.emptySet()) { + enabledServices = new HashSet(); + } + // Determine enabled services and accessibility state. ComponentName toggledService = ComponentName.unflattenFromString(preferenceKey); boolean accessibilityEnabled = false;