cmparts: Add display rotation settings
* Original work by:
- Robert Burns
- Martin Brabham
- David Van Tonder
- Michael Bestas
- Adnan Begovic
Change-Id: If1b4a45fb41b94136209acb47a5549a1b0c25143
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 83c8032..5f4dcd7 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -491,4 +491,16 @@
<string name="stats_collection_title">Stats collection</string>
<string name="stats_collection_summary">When enabled, allows metrics collection</string>
+ <!-- Display : Rotation -->
+ <string name="accelerometer_title">Auto-rotate screen</string>
+ <string name="display_rotation_title">Rotation settings</string>
+ <string name="display_rotation_disabled">Disabled</string>
+ <string name="display_rotation_unit">degrees</string>
+ <string name="display_lockscreen_rotation_title">Rotate lock screen</string>
+ <string name="display_rotation_category_title">Rotation modes</string>
+ <string name="display_rotation_0_title">0 degrees</string>
+ <string name="display_rotation_90_title">90 degrees</string>
+ <string name="display_rotation_180_title">180 degrees</string>
+ <string name="display_rotation_270_title">270 degrees</string>
+
</resources>
diff --git a/res/xml/display_rotation.xml b/res/xml/display_rotation.xml
new file mode 100644
index 0000000..b36df56
--- /dev/null
+++ b/res/xml/display_rotation.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 The CyanogenMod Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+ android:title="@string/display_rotation_title">
+
+ <SwitchPreference
+ android:key="accelerometer"
+ android:title="@string/accelerometer_title" />
+ <cyanogenmod.preference.CMSystemSettingSwitchPreference
+ android:key="lockscreen_rotation"
+ android:title="@string/display_lockscreen_rotation_title"
+ android:dependency="accelerometer"
+ android:defaultValue="false" />
+ <PreferenceCategory
+ android:key="display_rotation_category"
+ android:title="@string/display_rotation_category_title" />
+ <CheckBoxPreference
+ android:key="display_rotation_0"
+ android:title="@string/display_rotation_0_title"
+ android:layout="?android:attr/preferenceLayoutChild"
+ android:dependency="accelerometer" />
+ <CheckBoxPreference
+ android:key="display_rotation_90"
+ android:title="@string/display_rotation_90_title"
+ android:layout="?android:attr/preferenceLayoutChild"
+ android:dependency="accelerometer" />
+ <CheckBoxPreference
+ android:key="display_rotation_180"
+ android:title="@string/display_rotation_180_title"
+ android:layout="?android:attr/preferenceLayoutChild"
+ android:dependency="accelerometer" />
+ <CheckBoxPreference
+ android:key="display_rotation_270"
+ android:title="@string/display_rotation_270_title"
+ android:layout="?android:attr/preferenceLayoutChild"
+ android:dependency="accelerometer" />
+
+</PreferenceScreen>
diff --git a/res/xml/parts_catalog.xml b/res/xml/parts_catalog.xml
index 404d93f..94d6a7a 100644
--- a/res/xml/parts_catalog.xml
+++ b/res/xml/parts_catalog.xml
@@ -21,33 +21,37 @@
android:title="@string/battery_light_title"
android:fragment="org.cyanogenmod.cmparts.notificationlight.BatteryLightSettings" />
- <part android:key="notification_lights"
- android:title="@string/notification_light_title"
- android:fragment="org.cyanogenmod.cmparts.notificationlight.NotificationLightSettings" />
+ <part android:key="button_settings"
+ android:title="@string/button_pref_title"
+ android:fragment="org.cyanogenmod.cmparts.input.ButtonSettings" />
+
+ <part android:key="contributors"
+ android:title="@string/contributors_cloud_fragment_title"
+ android:fragment="org.cyanogenmod.cmparts.contributors.ContributorsCloudFragment" />
<part android:key="livedisplay"
android:title="@*cyanogenmod.platform:string/live_display_title"
android:summary="@string/live_display_summary"
android:fragment="org.cyanogenmod.cmparts.livedisplay.LiveDisplay" />
+ <part android:key="notification_lights"
+ android:title="@string/notification_light_title"
+ android:fragment="org.cyanogenmod.cmparts.notificationlight.NotificationLightSettings" />
+
<part android:key="privacy_settings"
android:title="@string/privacy_settings_title"
android:fragment="org.cyanogenmod.cmparts.PrivacySettings" />
- <part android:key="button_settings"
- android:title="@string/button_pref_title"
- android:fragment="org.cyanogenmod.cmparts.input.ButtonSettings" />
-
<part android:key="profiles_settings"
android:title="@string/profiles_settings_title"
android:fragment="org.cyanogenmod.cmparts.profiles.ProfilesSettings" />
+ <part android:key="rotation"
+ android:title="@string/display_rotation_title"
+ android:fragment="org.cyanogenmod.cmparts.hardware.DisplayRotation" />
+
<part android:key="status_bar_settings"
android:title="@string/status_bar_title"
android:fragment="org.cyanogenmod.cmparts.statusbar.StatusBarSettings" />
- <part android:key="contributors"
- android:title="@string/contributors_cloud_fragment_title"
- android:fragment="org.cyanogenmod.cmparts.contributors.ContributorsCloudFragment" />
-
</parts-catalog>