Added episode cache size preference
This commit is contained in:
parent
73d23773c5
commit
6a784b7b31
@ -21,6 +21,15 @@
|
|||||||
<item>24</item>
|
<item>24</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
|
<string-array name="episode_cache_size">
|
||||||
|
<item>10</item>
|
||||||
|
<item>20</item>
|
||||||
|
<item>40</item>
|
||||||
|
<item>60</item>
|
||||||
|
<item>80</item>
|
||||||
|
<item>100</item>
|
||||||
|
</string-array>
|
||||||
|
|
||||||
<string-array name="autodl_select_networks_default_entries">
|
<string-array name="autodl_select_networks_default_entries">
|
||||||
<item>N/A</item>
|
<item>N/A</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
@ -177,6 +177,7 @@
|
|||||||
<string name="pref_automatic_download_sum">Configure the automatic download of episodes.</string>
|
<string name="pref_automatic_download_sum">Configure the automatic download of episodes.</string>
|
||||||
<string name="pref_autodl_wifi_filter_title">Enable Wi-Fi filter</string>
|
<string name="pref_autodl_wifi_filter_title">Enable Wi-Fi filter</string>
|
||||||
<string name="pref_autodl_wifi_filter_sum">Allow automatic download only for selected Wi-Fi networks.</string>
|
<string name="pref_autodl_wifi_filter_sum">Allow automatic download only for selected Wi-Fi networks.</string>
|
||||||
|
<string name="pref_episode_cache_title">Episode cache</string>
|
||||||
|
|
||||||
<!-- Search -->
|
<!-- Search -->
|
||||||
<string name="search_hint">Search for Feeds or Episodes</string>
|
<string name="search_hint">Search for Feeds or Episodes</string>
|
||||||
|
@ -35,9 +35,10 @@
|
|||||||
android:summary="@string/pref_mobileUpdate_sum"
|
android:summary="@string/pref_mobileUpdate_sum"
|
||||||
android:title="@string/pref_mobileUpdate_title" />
|
android:title="@string/pref_mobileUpdate_title" />
|
||||||
<CheckBoxPreference android:summary="@string/pref_autoQueue_sum" android:defaultValue="true" android:key="prefAutoQueue" android:title="@string/pref_autoQueue_title"/>
|
<CheckBoxPreference android:summary="@string/pref_autoQueue_sum" android:defaultValue="true" android:key="prefAutoQueue" android:title="@string/pref_autoQueue_title"/>
|
||||||
<PreferenceScreen android:summary="@string/pref_automatic_download_sum" android:key="prefAutoDownloadSettings" android:title="@string/pref_automatic_download_title">
|
<ListPreference android:defaultValue="20" android:entries="@array/episode_cache_size" android:key="prefEpisodeCacheSize" android:title="@string/pref_episode_cache_title" android:entryValues="@array/episode_cache_size"/><PreferenceScreen android:summary="@string/pref_automatic_download_sum" android:key="prefAutoDownloadSettings" android:title="@string/pref_automatic_download_title">
|
||||||
<CheckBoxPreference android:key="prefEnableAutoDownloadWifiFilter" android:title="@string/pref_autodl_wifi_filter_title" android:summary="@string/pref_autodl_wifi_filter_sum"/>
|
<CheckBoxPreference android:key="prefEnableAutoDownloadWifiFilter" android:title="@string/pref_autodl_wifi_filter_title" android:summary="@string/pref_autodl_wifi_filter_sum"/>
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
|
||||||
</PreferenceCategory>
|
</PreferenceCategory>
|
||||||
<PreferenceCategory android:title="@string/flattr_settings_label" >
|
<PreferenceCategory android:title="@string/flattr_settings_label" >
|
||||||
<PreferenceScreen
|
<PreferenceScreen
|
||||||
|
@ -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();
|
buildAutodownloadSelectedNetworsPreference();
|
||||||
setSelectedNetworksEnabled(UserPreferences
|
setSelectedNetworksEnabled(UserPreferences
|
||||||
.isEnableAutodownloadWifiFilter());
|
.isEnableAutodownloadWifiFilter());
|
||||||
@ -162,6 +176,7 @@ public class PreferenceActivity extends SherlockPreferenceActivity {
|
|||||||
protected void onResume() {
|
protected void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
checkItemVisibility();
|
checkItemVisibility();
|
||||||
|
setEpisodeCacheSizeText(UserPreferences.getEpisodeCacheSize());
|
||||||
setDataFolderText();
|
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() {
|
private void setDataFolderText() {
|
||||||
File f = UserPreferences.getDataFolder(this, null);
|
File f = UserPreferences.getDataFolder(this, null);
|
||||||
if (f != null) {
|
if (f != null) {
|
||||||
|
@ -41,6 +41,7 @@ public class UserPreferences implements
|
|||||||
public static final String PREF_DATA_FOLDER = "prefDataFolder";
|
public static final String PREF_DATA_FOLDER = "prefDataFolder";
|
||||||
public static final String PREF_ENABLE_AUTODL_WIFI_FILTER = "prefEnableAutoDownloadWifiFilter";
|
public static final String PREF_ENABLE_AUTODL_WIFI_FILTER = "prefEnableAutoDownloadWifiFilter";
|
||||||
private static final String PREF_AUTODL_SELECTED_NETWORKS = "prefAutodownloadSelectedNetworks";
|
private static final String PREF_AUTODL_SELECTED_NETWORKS = "prefAutodownloadSelectedNetworks";
|
||||||
|
public static final String PREF_EPISODE_CACHE_SIZE = "prefEpisodeCacheSize";
|
||||||
|
|
||||||
private static UserPreferences instance;
|
private static UserPreferences instance;
|
||||||
private Context context;
|
private Context context;
|
||||||
@ -57,6 +58,7 @@ public class UserPreferences implements
|
|||||||
private int theme;
|
private int theme;
|
||||||
private boolean enableAutodownloadWifiFilter;
|
private boolean enableAutodownloadWifiFilter;
|
||||||
private String[] autodownloadSelectedNetworks;
|
private String[] autodownloadSelectedNetworks;
|
||||||
|
private int episodeCacheSize;
|
||||||
|
|
||||||
private UserPreferences(Context context) {
|
private UserPreferences(Context context) {
|
||||||
this.context = context;
|
this.context = context;
|
||||||
@ -101,6 +103,8 @@ public class UserPreferences implements
|
|||||||
PREF_ENABLE_AUTODL_WIFI_FILTER, false);
|
PREF_ENABLE_AUTODL_WIFI_FILTER, false);
|
||||||
autodownloadSelectedNetworks = StringUtils.split(
|
autodownloadSelectedNetworks = StringUtils.split(
|
||||||
sp.getString(PREF_AUTODL_SELECTED_NETWORKS, ""), ',');
|
sp.getString(PREF_AUTODL_SELECTED_NETWORKS, ""), ',');
|
||||||
|
episodeCacheSize = Integer.valueOf(sp.getString(
|
||||||
|
PREF_EPISODE_CACHE_SIZE, "20"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private int readThemeValue(String valueFromPrefs) {
|
private int readThemeValue(String valueFromPrefs) {
|
||||||
@ -181,6 +185,11 @@ public class UserPreferences implements
|
|||||||
return instance.autodownloadSelectedNetworks;
|
return instance.autodownloadSelectedNetworks;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static int getEpisodeCacheSize() {
|
||||||
|
instanceAvailable();
|
||||||
|
return instance.episodeCacheSize;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSharedPreferenceChanged(SharedPreferences sp, String key) {
|
public void onSharedPreferenceChanged(SharedPreferences sp, String key) {
|
||||||
if (AppConfig.DEBUG)
|
if (AppConfig.DEBUG)
|
||||||
@ -231,10 +240,14 @@ public class UserPreferences implements
|
|||||||
} else if (key.equals(PREF_AUTODL_SELECTED_NETWORKS)) {
|
} else if (key.equals(PREF_AUTODL_SELECTED_NETWORKS)) {
|
||||||
autodownloadSelectedNetworks = StringUtils.split(
|
autodownloadSelectedNetworks = StringUtils.split(
|
||||||
sp.getString(PREF_AUTODL_SELECTED_NETWORKS, ""), ',');
|
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
|
SharedPreferences.Editor editor = PreferenceManager
|
||||||
.getDefaultSharedPreferences(context.getApplicationContext())
|
.getDefaultSharedPreferences(context.getApplicationContext())
|
||||||
.edit();
|
.edit();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user