aboutsummaryrefslogtreecommitdiffstats
path: root/src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java')
-rw-r--r--src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java39
1 files changed, 32 insertions, 7 deletions
diff --git a/src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java b/src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java
index 46a55e9..f5326d2 100644
--- a/src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java
+++ b/src/org/cyanogenmod/wallpapers/photophase/preferences/LayoutPreferenceFragment.java
@@ -94,6 +94,7 @@ public class LayoutPreferenceFragment extends PreferenceFragment {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ final String formatOnRotation = getString(R.string.format_rotate_only);
final String formatSeconds = getString(R.string.format_seconds);
final String formatMinutes = getString(R.string.format_minutes);
final String formatHours = getString(R.string.format_hours);
@@ -128,22 +129,27 @@ public class LayoutPreferenceFragment extends PreferenceFragment {
mRandomDispositionsInterval.setOnDisplayProgress(new OnDisplayProgress() {
@Override
public String onDisplayProgress(int progress) {
- if (randomDispositionsIntervals[progress] < 60000) {
+ int interval = randomDispositionsIntervals[progress];
+ if (interval == 0) {
+ // Disabled
+ mRandomDispositionsInterval.setFormat(formatOnRotation);
+ return null;
+ } else if (interval < 60000) {
// Seconds
mRandomDispositionsInterval.setFormat(formatSeconds);
- return String.valueOf(randomDispositionsIntervals[progress] / 1000);
- } else if (randomDispositionsIntervals[progress] < 3600000) {
+ return String.valueOf(interval / 1000);
+ } else if (interval < 3600000) {
// Minutes
mRandomDispositionsInterval.setFormat(formatMinutes);
- return String.valueOf(randomDispositionsIntervals[progress] / 1000 / 60);
- } else if (randomDispositionsIntervals[progress] < 86400000) {
+ return String.valueOf(interval / 1000 / 60);
+ } else if (interval < 86400000) {
// Hours
mRandomDispositionsInterval.setFormat(formatHours);
- return String.valueOf(randomDispositionsIntervals[progress] / 1000 / 60 / 60);
+ return String.valueOf(interval / 1000 / 60 / 60);
}
// Days
mRandomDispositionsInterval.setFormat(formatDays);
- return String.valueOf(randomDispositionsIntervals[progress] / 1000 / 60 / 60 / 24);
+ return String.valueOf(interval / 1000 / 60 / 60 / 24);
}
});
mRandomDispositionsInterval.setOnPreferenceChangeListener(mOnChangeListener);
@@ -156,4 +162,23 @@ public class LayoutPreferenceFragment extends PreferenceFragment {
mLandscapeDisposition = findPreference("ui_disposition_landscape");
mLandscapeDisposition.setEnabled(!Preferences.Layout.isRandomDispositions());
}
+
+ @Override
+ public void onResume() {
+ super.onResume();
+
+ updateArrangementSummary(mPortraitDisposition,
+ PreferencesProvider.Preferences.Layout.getPortraitDisposition().size(),
+ R.string.disposition_orientation_portrait);
+ updateArrangementSummary(mLandscapeDisposition,
+ PreferencesProvider.Preferences.Layout.getLandscapeDisposition().size(),
+ R.string.disposition_orientation_landscape);
+ }
+
+ private void updateArrangementSummary(Preference pref, int count, int orientationLabelResId) {
+ String orientation = getString(orientationLabelResId);
+ String summary = getResources().getQuantityString(
+ R.plurals.pref_disposition_summary_format, count, count, orientation);
+ pref.setSummary(summary);
+ }
}