diff options
author | Kelly <mushroomhead52e@gmail.com> | 2012-08-15 20:19:22 -0400 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2013-07-10 15:41:48 -0700 |
commit | b6d2bc789a0d87afd75503ade002d18dbb042831 (patch) | |
tree | a489f32fc8d3753afbf5dbd9f282ca9ef9280dd7 /src | |
parent | 8182baea2433ac750e0d57dc223570475553c385 (diff) | |
download | packages_apps_Settings-b6d2bc789a0d87afd75503ade002d18dbb042831.zip packages_apps_Settings-b6d2bc789a0d87afd75503ade002d18dbb042831.tar.gz packages_apps_Settings-b6d2bc789a0d87afd75503ade002d18dbb042831.tar.bz2 |
Add lockscreen rotation as an optional rotation setting (2/2)
This will allow the user to select wether or not to use the
rotation settings for the lockscreen. This is dependent
upon the rotation setting being checked.
Signed-off-by: Michael Bestas <mikeioannina@gmail.com>
Change-Id: If45c13a395e0d71b7c4cdcf484a6b8cef964ee37
JIRA: CYAN-339
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/settings/DisplaySettings.java | 24 | ||||
-rw-r--r-- | src/com/android/settings/cyanogenmod/DisplayRotation.java | 24 |
2 files changed, 34 insertions, 14 deletions
diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java index 2e9085a..ed60b84 100644 --- a/src/com/android/settings/DisplaySettings.java +++ b/src/com/android/settings/DisplaySettings.java @@ -61,6 +61,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements private static final String KEY_SCREEN_SAVER = "screensaver"; private static final String KEY_WIFI_DISPLAY = "wifi_display"; private static final String KEY_DISPLAY_ROTATION = "display_rotation"; + private static final String KEY_LOCKSCREEN_ROTATION = "lockscreen_rotation"; private static final String KEY_WAKEUP_CATEGORY = "category_wakeup_options"; private static final String KEY_HOME_WAKE = "pref_home_wake"; private static final String KEY_VOLUME_WAKE = "pref_volume_wake"; @@ -111,16 +112,25 @@ public class DisplaySettings extends SettingsPreferenceFragment implements public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ContentResolver resolver = getActivity().getContentResolver(); + Resources res = getResources(); addPreferencesFromResource(R.xml.display_settings); mDisplayRotationPreference = (PreferenceScreen) findPreference(KEY_DISPLAY_ROTATION); + final CheckBoxPreference lockScreenRotation = + (CheckBoxPreference) findPreference(KEY_LOCKSCREEN_ROTATION); + if (lockScreenRotation != null) { + if (!res.getBoolean(com.android.internal.R.bool.config_enableLockScreenRotation)) { + getPreferenceScreen().removePreference(lockScreenRotation); + } + } + mScreenSaverPreference = findPreference(KEY_SCREEN_SAVER); - if (mScreenSaverPreference != null - && getResources().getBoolean( - com.android.internal.R.bool.config_dreamsSupported) == false) { - getPreferenceScreen().removePreference(mScreenSaverPreference); + if (mScreenSaverPreference != null) { + if (!res.getBoolean(com.android.internal.R.bool.config_dreamsSupported)) { + getPreferenceScreen().removePreference(mScreenSaverPreference); + } } mScreenTimeoutPreference = (ListPreference) findPreference(KEY_SCREEN_TIMEOUT); @@ -153,7 +163,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements // Home button wake mHomeWake = (CheckBoxPreference) findPreference(KEY_HOME_WAKE); if (mHomeWake != null) { - if (!getResources().getBoolean(R.bool.config_show_homeWake)) { + if (!res.getBoolean(R.bool.config_show_homeWake)) { wakeupCategory.removePreference(mHomeWake); } else { mHomeWake.setChecked(Settings.System.getInt(resolver, @@ -165,7 +175,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements // Volume rocker wake mVolumeWake = (CheckBoxPreference) findPreference(KEY_VOLUME_WAKE); if (mVolumeWake != null) { - if (!getResources().getBoolean(R.bool.config_show_volumeRockerWake) + if (!res.getBoolean(R.bool.config_show_volumeRockerWake) || !Utils.hasVolumeRocker(getActivity())) { wakeupCategory.removePreference(mVolumeWake); } else { @@ -181,7 +191,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements } mScreenOffAnimation = (CheckBoxPreference) findPreference(KEY_SCREEN_OFF_ANIMATION); - if (getResources().getBoolean(com.android.internal.R.bool.config_screenOffAnimation)) { + if (res.getBoolean(com.android.internal.R.bool.config_screenOffAnimation)) { mScreenOffAnimation.setChecked(Settings.System.getInt(resolver, Settings.System.SCREEN_OFF_ANIMATION, 1) == 1); } else { diff --git a/src/com/android/settings/cyanogenmod/DisplayRotation.java b/src/com/android/settings/cyanogenmod/DisplayRotation.java index 15b4137..b11c2fb 100644 --- a/src/com/android/settings/cyanogenmod/DisplayRotation.java +++ b/src/com/android/settings/cyanogenmod/DisplayRotation.java @@ -35,6 +35,7 @@ public class DisplayRotation extends SettingsPreferenceFragment implements OnPre private static final String TAG = "DisplayRotation"; private static final String KEY_ACCELEROMETER = "accelerometer"; + private static final String LOCKSCREEN_ROTATION = "lockscreen_rotation"; private static final String ROTATION_0_PREF = "display_rotation_0"; private static final String ROTATION_90_PREF = "display_rotation_90"; private static final String ROTATION_180_PREF = "display_rotation_180"; @@ -42,6 +43,7 @@ public class DisplayRotation extends SettingsPreferenceFragment implements OnPre private static final String KEY_SWAP_VOLUME_BUTTONS = "swap_volume_buttons"; private CheckBoxPreference mAccelerometer; + private CheckBoxPreference mLockScreenRotationPref; private CheckBoxPreference mRotation0Pref; private CheckBoxPreference mRotation90Pref; private CheckBoxPreference mRotation180Pref; @@ -74,6 +76,7 @@ public class DisplayRotation extends SettingsPreferenceFragment implements OnPre mAccelerometer = (CheckBoxPreference) findPreference(KEY_ACCELEROMETER); mAccelerometer.setPersistent(false); + mLockScreenRotationPref = (CheckBoxPreference) prefSet.findPreference(LOCKSCREEN_ROTATION); mRotation0Pref = (CheckBoxPreference) prefSet.findPreference(ROTATION_0_PREF); mRotation90Pref = (CheckBoxPreference) prefSet.findPreference(ROTATION_90_PREF); mRotation180Pref = (CheckBoxPreference) prefSet.findPreference(ROTATION_180_PREF); @@ -99,6 +102,11 @@ public class DisplayRotation extends SettingsPreferenceFragment implements OnPre } } + if (mLockScreenRotationPref != null) { + mLockScreenRotationPref.setChecked(Settings.System.getInt(getContentResolver(), + Settings.System.LOCKSCREEN_ROTATION, 0) != 0); + } + if (hasRotationLock) { // Disable accelerometer checkbox, but leave others enabled mAccelerometer.setEnabled(false); @@ -159,16 +167,18 @@ public class DisplayRotation extends SettingsPreferenceFragment implements OnPre mode |= ROTATION_0_MODE; mRotation0Pref.setChecked(true); } - Settings.System.putInt(getActivity().getApplicationContext().getContentResolver(), + Settings.System.putInt(getActivity().getContentResolver(), Settings.System.ACCELEROMETER_ROTATION_ANGLES, mode); return true; + } else if (preference == mLockScreenRotationPref) { + boolean value = mLockScreenRotationPref.isChecked(); + Settings.System.putInt(getActivity().getContentResolver(), + Settings.System.LOCKSCREEN_ROTATION, value ? 1 : 0); + return true; } else if (preference == mSwapVolumeButtons) { - Context context = getActivity().getApplicationContext(); - Settings.System.putInt(context.getContentResolver(), - Settings.System.SWAP_VOLUME_KEYS_ON_ROTATION, - mSwapVolumeButtons.isChecked() - ? (Utils.isTablet(context) ? 2 : 1) - : 0); + int value = mSwapVolumeButtons.isChecked() ? (Utils.isTablet(getActivity()) ? 2 : 1) : 0; + Settings.System.putInt(getActivity().getContentResolver(), + Settings.System.SWAP_VOLUME_KEYS_ON_ROTATION, value); } return super.onPreferenceTreeClick(preferenceScreen, preference); |