diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2013-03-09 11:13:30 +0100 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2013-03-09 11:13:30 +0100 |
commit | 6a784b7b31cd6de1935cc7ed242c613d6eff0b0c (patch) | |
tree | 8991d3d9913047075b8447cae0829961ccba4acd /src | |
parent | 73d23773c5c9517688ba0004914b6d1582ec9f0c (diff) | |
download | AntennaPod-6a784b7b31cd6de1935cc7ed242c613d6eff0b0c.zip |
Added episode cache size preference
Diffstat (limited to 'src')
-rw-r--r-- | src/de/danoeh/antennapod/activity/PreferenceActivity.java | 21 | ||||
-rw-r--r-- | src/de/danoeh/antennapod/preferences/UserPreferences.java | 15 |
2 files changed, 35 insertions, 1 deletions
diff --git a/src/de/danoeh/antennapod/activity/PreferenceActivity.java b/src/de/danoeh/antennapod/activity/PreferenceActivity.java index 7df0c17bd..6bad316a6 100644 --- a/src/de/danoeh/antennapod/activity/PreferenceActivity.java +++ b/src/de/danoeh/antennapod/activity/PreferenceActivity.java @@ -144,6 +144,20 @@ public class PreferenceActivity extends SherlockPreferenceActivity { } } }); + findPreference(UserPreferences.PREF_EPISODE_CACHE_SIZE) + .setOnPreferenceChangeListener( + new OnPreferenceChangeListener() { + + @Override + public boolean onPreferenceChange( + Preference preference, Object newValue) { + if (newValue instanceof String) { + setEpisodeCacheSizeText(Integer + .valueOf((String) newValue)); + } + return true; + } + }); buildAutodownloadSelectedNetworsPreference(); setSelectedNetworksEnabled(UserPreferences .isEnableAutodownloadWifiFilter()); @@ -162,6 +176,7 @@ public class PreferenceActivity extends SherlockPreferenceActivity { protected void onResume() { super.onResume(); checkItemVisibility(); + setEpisodeCacheSizeText(UserPreferences.getEpisodeCacheSize()); setDataFolderText(); } @@ -175,6 +190,12 @@ public class PreferenceActivity extends SherlockPreferenceActivity { } + private void setEpisodeCacheSizeText(int cacheSize) { + findPreference(UserPreferences.PREF_EPISODE_CACHE_SIZE).setSummary( + Integer.toString(cacheSize) + + getString(R.string.episodes_suffix)); + } + private void setDataFolderText() { File f = UserPreferences.getDataFolder(this, null); if (f != null) { diff --git a/src/de/danoeh/antennapod/preferences/UserPreferences.java b/src/de/danoeh/antennapod/preferences/UserPreferences.java index 72fd7a46a..5684c5f37 100644 --- a/src/de/danoeh/antennapod/preferences/UserPreferences.java +++ b/src/de/danoeh/antennapod/preferences/UserPreferences.java @@ -41,6 +41,7 @@ public class UserPreferences implements public static final String PREF_DATA_FOLDER = "prefDataFolder"; public static final String PREF_ENABLE_AUTODL_WIFI_FILTER = "prefEnableAutoDownloadWifiFilter"; private static final String PREF_AUTODL_SELECTED_NETWORKS = "prefAutodownloadSelectedNetworks"; + public static final String PREF_EPISODE_CACHE_SIZE = "prefEpisodeCacheSize"; private static UserPreferences instance; private Context context; @@ -57,6 +58,7 @@ public class UserPreferences implements private int theme; private boolean enableAutodownloadWifiFilter; private String[] autodownloadSelectedNetworks; + private int episodeCacheSize; private UserPreferences(Context context) { this.context = context; @@ -101,6 +103,8 @@ public class UserPreferences implements PREF_ENABLE_AUTODL_WIFI_FILTER, false); autodownloadSelectedNetworks = StringUtils.split( sp.getString(PREF_AUTODL_SELECTED_NETWORKS, ""), ','); + episodeCacheSize = Integer.valueOf(sp.getString( + PREF_EPISODE_CACHE_SIZE, "20")); } private int readThemeValue(String valueFromPrefs) { @@ -181,6 +185,11 @@ public class UserPreferences implements return instance.autodownloadSelectedNetworks; } + public static int getEpisodeCacheSize() { + instanceAvailable(); + return instance.episodeCacheSize; + } + @Override public void onSharedPreferenceChanged(SharedPreferences sp, String key) { if (AppConfig.DEBUG) @@ -231,10 +240,14 @@ public class UserPreferences implements } else if (key.equals(PREF_AUTODL_SELECTED_NETWORKS)) { autodownloadSelectedNetworks = StringUtils.split( sp.getString(PREF_AUTODL_SELECTED_NETWORKS, ""), ','); + } else if (key.equals(PREF_EPISODE_CACHE_SIZE)) { + episodeCacheSize = Integer.valueOf(sp.getString( + PREF_EPISODE_CACHE_SIZE, "20")); } } - public static void setAutodownloadSelectedNetworks(Context context, String[] value) { + public static void setAutodownloadSelectedNetworks(Context context, + String[] value) { SharedPreferences.Editor editor = PreferenceManager .getDefaultSharedPreferences(context.getApplicationContext()) .edit(); |