[1/2] OmniGears: Clock on lockscreen
Allow to enable status bar clock on lockscreen (default off)
Change-Id: Id5c579e30aeb2cb2edd0fa8617458508c7aab06f
diff --git a/res/values/custom_strings.xml b/res/values/custom_strings.xml
index 8deadaa..3897bd2 100644
--- a/res/values/custom_strings.xml
+++ b/res/values/custom_strings.xml
@@ -501,6 +501,7 @@
<string name="clock_color_title">Color</string>
<string name="status_bar_clock_style_reset">Reset color</string>
<string name="status_bar_show_clock_title">Show clock and date</string>
+ <string name="status_bar_force_clock_lockscreen">Always show on lockscreen</string>
<string name="status_bar_am_pm_title">AM/PM</string>
<string name="status_bar_am_pm_info">24-hour clock is enabled</string>
<string name="enable_clock_weekday">Day of the week</string>
@@ -580,7 +581,7 @@
<string name="swap_volume_buttons_title">Match rotation</string>
<string name="swap_volume_buttons_summary">Adjust volume buttons action based on current rotation</string>
- <!-- Lockscreen immersive mode -->
- <string name="category_immersive_mode_title">Immersive mode</string>
- <string name="lockscreen_immersive_mode_title">Disable immersive mode</string>
+ <!-- Lockscreen immersive mode -->
+ <string name="category_immersive_mode_title">Immersive mode</string>
+ <string name="lockscreen_immersive_mode_title">Disable immersive mode</string>
</resources>
diff --git a/res/xml/status_bar_clock_style.xml b/res/xml/status_bar_clock_style.xml
index 28f9062..6701997 100644
--- a/res/xml/status_bar_clock_style.xml
+++ b/res/xml/status_bar_clock_style.xml
@@ -18,12 +18,19 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/status_bar_clock_title">
- <CheckBoxPreference
+ <CheckBoxPreference
android:key="status_bar_show_clock"
android:title="@string/status_bar_show_clock_title"
android:defaultValue="true"
android:persistent="false"/>
+ <CheckBoxPreference
+ android:key="status_bar_force_clock_lockscreen"
+ android:title="@string/status_bar_force_clock_lockscreen"
+ android:defaultValue="false"
+ android:dependency="status_bar_show_clock"
+ android:persistent="false"/>
+
<ListPreference
android:key="clock_style"
android:entries="@array/clock_style_entries"
diff --git a/src/org/omnirom/omnigears/slim/StatusBarClockStyle.java b/src/org/omnirom/omnigears/slim/StatusBarClockStyle.java
index af73dd4..1c3746e 100644
--- a/src/org/omnirom/omnigears/slim/StatusBarClockStyle.java
+++ b/src/org/omnirom/omnigears/slim/StatusBarClockStyle.java
@@ -45,6 +45,7 @@
private static final String PREF_CLOCK_DATE_STYLE = "clock_date_style";
private static final String PREF_CLOCK_DATE_FORMAT = "clock_date_format";
private static final String STATUS_BAR_CLOCK = "status_bar_show_clock";
+ private static final String STATUS_BAR_FORCE_CLOCK_LOCKSCREEN = "status_bar_force_clock_lockscreen";
public static final int CLOCK_DATE_STYLE_LOWERCASE = 1;
public static final int CLOCK_DATE_STYLE_UPPERCASE = 2;
@@ -55,6 +56,7 @@
private ListPreference mClockDateStyle;
private ListPreference mClockDateFormat;
private CheckBoxPreference mStatusBarClock;
+ private CheckBoxPreference mForceClockLockscreen;
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -135,6 +137,11 @@
mClockDateFormat.setEnabled(false);
}
+ mForceClockLockscreen = (CheckBoxPreference) findPreference(STATUS_BAR_FORCE_CLOCK_LOCKSCREEN);
+ mForceClockLockscreen.setChecked(Settings.System.getInt(getActivity().getContentResolver(),
+ Settings.System.STATUS_BAR_FORCE_CLOCK_LOCKSCREEN, 0) != 0);
+ mForceClockLockscreen.setOnPreferenceChangeListener(this);
+
return prefSet;
}
@@ -188,6 +195,10 @@
mClockDateFormat.setSummary(mClockDateFormat.getEntries()[idx]);
}
return true;
+ } else if (preference == mForceClockLockscreen) {
+ Settings.System.putInt(getActivity().getContentResolver(),
+ Settings.System.STATUS_BAR_FORCE_CLOCK_LOCKSCREEN, (Boolean) newValue ? 1 : 0);
+ return true;
}
return false;
}