diff --git a/src/com/android/settings/AccessibilitySettings.java b/src/com/android/settings/AccessibilitySettings.java index a4438d056a0..4ca98d8eeee 100644 --- a/src/com/android/settings/AccessibilitySettings.java +++ b/src/com/android/settings/AccessibilitySettings.java @@ -200,16 +200,20 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mSettingsPackageMonitor.register(getActivity(), getActivity().getMainLooper(), false); mSettingsContentObserver.register(getContentResolver()); - RotationPolicy.registerRotationPolicyListener(getActivity(), - mRotationPolicyListener); + if (RotationPolicy.isRotationSupported(getActivity())) { + RotationPolicy.registerRotationPolicyListener(getActivity(), + mRotationPolicyListener); + } } @Override public void onPause() { mSettingsPackageMonitor.unregister(); - RotationPolicy.unregisterRotationPolicyListener(getActivity(), - mRotationPolicyListener); mSettingsContentObserver.unregister(getContentResolver()); + if (RotationPolicy.isRotationSupported(getActivity())) { + RotationPolicy.unregisterRotationPolicyListener(getActivity(), + mRotationPolicyListener); + } super.onPause(); } @@ -320,6 +324,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements // Lock screen rotation. mToggleLockScreenRotationPreference = (CheckBoxPreference) findPreference(TOGGLE_LOCK_SCREEN_ROTATION_PREFERENCE); + if (!RotationPolicy.isRotationSupported(getActivity())) { + mSystemsCategory.removePreference(mToggleLockScreenRotationPreference); + } // Speak passwords. mToggleSpeakPasswordPreference = diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java index fb839a716ad..6c3a990efcc 100644 --- a/src/com/android/settings/DisplaySettings.java +++ b/src/com/android/settings/DisplaySettings.java @@ -95,9 +95,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements mAccelerometer = (CheckBoxPreference) findPreference(KEY_ACCELEROMETER); mAccelerometer.setPersistent(false); - if (RotationPolicy.isRotationLockToggleSupported(getActivity())) { + if (!RotationPolicy.isRotationSupported(getActivity()) + || RotationPolicy.isRotationLockToggleSupported(getActivity())) { // If rotation lock is supported, then we do not provide this option in - // Display settings. However, is still available in Accessibility settings. + // Display settings. However, is still available in Accessibility settings, + // if the device supports rotation. getPreferenceScreen().removePreference(mAccelerometer); }