diff options
author | Jorge Ruesga <jorge@ruesga.com> | 2013-08-07 00:40:29 +0200 |
---|---|---|
committer | Jorge Ruesga <jorge@ruesga.com> | 2013-08-07 00:40:29 +0200 |
commit | 3c46e3e43e86bfd00c503caf8a31529f8f1ce18c (patch) | |
tree | b96b75bbcd346021e85ba5822620b4e3e795a43e /src/org/cyanogenmod/wallpapers/photophase/preferences | |
parent | e3e640aa2e7b1357903663705bfdce8e8f95dc43 (diff) | |
download | android_packages_wallpapers_PhotoPhase-3c46e3e43e86bfd00c503caf8a31529f8f1ce18c.tar.gz android_packages_wallpapers_PhotoPhase-3c46e3e43e86bfd00c503caf8a31529f8f1ce18c.tar.bz2 android_packages_wallpapers_PhotoPhase-3c46e3e43e86bfd00c503caf8a31529f8f1ce18c.zip |
Multiple transition selection (#13)
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Diffstat (limited to 'src/org/cyanogenmod/wallpapers/photophase/preferences')
-rw-r--r-- | src/org/cyanogenmod/wallpapers/photophase/preferences/GeneralPreferenceFragment.java | 4 | ||||
-rw-r--r-- | src/org/cyanogenmod/wallpapers/photophase/preferences/PreferencesProvider.java | 17 |
2 files changed, 16 insertions, 5 deletions
diff --git a/src/org/cyanogenmod/wallpapers/photophase/preferences/GeneralPreferenceFragment.java b/src/org/cyanogenmod/wallpapers/photophase/preferences/GeneralPreferenceFragment.java index e30e9c8..edf4880 100644 --- a/src/org/cyanogenmod/wallpapers/photophase/preferences/GeneralPreferenceFragment.java +++ b/src/org/cyanogenmod/wallpapers/photophase/preferences/GeneralPreferenceFragment.java @@ -46,7 +46,7 @@ public class GeneralPreferenceFragment extends PreferenceFragment { private SeekBarProgressPreference mWallpaperDim; private ColorPickerPreference mBackgroundColor; private ListPreference mTouchActions; - private ListPreference mTransitionsTypes; + private MultiSelectListPreference mTransitionsTypes; private SeekBarProgressPreference mTransitionsInterval; private MultiSelectListPreference mEffectsTypes; @@ -125,7 +125,7 @@ public class GeneralPreferenceFragment extends PreferenceFragment { mTouchActions = (ListPreference)findPreference("ui_touch_action"); mTouchActions.setOnPreferenceChangeListener(mOnChangeListener); - mTransitionsTypes = (ListPreference)findPreference("ui_transition_types"); + mTransitionsTypes = (MultiSelectListPreference)findPreference("ui_transition_types"); mTransitionsTypes.setOnPreferenceChangeListener(mOnChangeListener); mTransitionsInterval = (SeekBarProgressPreference)findPreference("ui_transition_interval"); diff --git a/src/org/cyanogenmod/wallpapers/photophase/preferences/PreferencesProvider.java b/src/org/cyanogenmod/wallpapers/photophase/preferences/PreferencesProvider.java index ab18a48..78d3686 100644 --- a/src/org/cyanogenmod/wallpapers/photophase/preferences/PreferencesProvider.java +++ b/src/org/cyanogenmod/wallpapers/photophase/preferences/PreferencesProvider.java @@ -217,10 +217,21 @@ public final class PreferencesProvider { * Return the current user preference about the transition to apply to * the pictures of the wallpaper. * - * @return int The transition to apply to the wallpaper's pictures + * @return TRANSITIONS[] The transition to apply to the wallpaper's pictures */ - public static int getTransitionTypes() { - return Integer.valueOf(getString("ui_transition_types", String.valueOf(TRANSITIONS.RANDOM.ordinal()))); + public static TRANSITIONS[] getTransitionTypes() { + Set<String> set = getStringSet("ui_transition_types", new HashSet<String>()); + if (set.isEmpty()) { + // Return all the transitions if no one is selected + return TRANSITIONS.getValidTranstions(); + } + String[] values = set.toArray(new String[set.size()]); + int count = values.length; + TRANSITIONS[] transitions = new TRANSITIONS[count]; + for (int i = 0; i < count; i++) { + transitions[i] = TRANSITIONS.fromOrdinal(Integer.valueOf(values[i])); + } + return transitions; } /** |