diff options
Diffstat (limited to 'src/com/android/settings/DisplaySettings.java')
-rw-r--r-- | src/com/android/settings/DisplaySettings.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java index de15d4c..536a30e 100644 --- a/src/com/android/settings/DisplaySettings.java +++ b/src/com/android/settings/DisplaySettings.java @@ -79,6 +79,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private static final String KEY_CAMERA_GESTURE = "camera_gesture"; private static final String KEY_CAMERA_DOUBLE_TAP_POWER_GESTURE = "camera_double_tap_power_gesture"; + private static final String KEY_COLOR_MODE = "color_mode"; private static final int DLG_GLOBAL_CHANGE_WARNING = 1; @@ -96,6 +97,8 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private SwitchPreference mCameraGesturePreference; private SwitchPreference mCameraDoubleTapPowerGesturePreference; + private ColorModePreference mColorModePreference; + @Override protected int getMetricsCategory() { return MetricsLogger.DISPLAY; @@ -171,6 +174,13 @@ public class DisplaySettings extends SettingsPreferenceFragment implements removePreference(KEY_CAMERA_DOUBLE_TAP_POWER_GESTURE); } + mColorModePreference = (ColorModePreference) findPreference(KEY_COLOR_MODE); + mColorModePreference.updateCurrentAndSupported(); + if (mColorModePreference.getTransformsCount() < 2) { + removePreference(KEY_COLOR_MODE); + mColorModePreference = null; + } + if (RotationPolicy.isRotationLockToggleVisible(activity)) { DropDownPreference rotatePreference = (DropDownPreference) findPreference(KEY_AUTO_ROTATE); @@ -360,6 +370,17 @@ public class DisplaySettings extends SettingsPreferenceFragment implements public void onResume() { super.onResume(); updateState(); + if (mColorModePreference != null) { + mColorModePreference.startListening(); + } + } + + @Override + public void onPause() { + super.onPause(); + if (mColorModePreference != null) { + mColorModePreference.stopListening(); + } } @Override @@ -417,6 +438,10 @@ public class DisplaySettings extends SettingsPreferenceFragment implements getContentResolver(), CAMERA_DOUBLE_TAP_POWER_GESTURE_DISABLED, 0); mCameraDoubleTapPowerGesturePreference.setChecked(value == 0); } + + if (mColorModePreference != null) { + mColorModePreference.updateCurrentAndSupported(); + } } private void updateScreenSaverSummary() { @@ -556,6 +581,11 @@ public class DisplaySettings extends SettingsPreferenceFragment implements if (!isCameraDoubleTapPowerGestureAvailable(context.getResources())) { result.add(KEY_CAMERA_DOUBLE_TAP_POWER_GESTURE); } + ColorModePreference pref = new ColorModePreference(context, null); + pref.updateCurrentAndSupported(); + if (pref.getTransformsCount() < 2) { + result.add(KEY_COLOR_MODE); + } return result; } }; |