summaryrefslogtreecommitdiff
path: root/src/de/danoeh/antennapod
diff options
context:
space:
mode:
authorJames Falcon <therealfalcon@gmail.com>2013-05-13 21:53:44 -0500
committerJames Falcon <therealfalcon@gmail.com>2013-05-13 21:53:44 -0500
commit0a607117d6c8d26d48adede0c903e0b7772a4327 (patch)
treef798b6c66ca6ff78afef13dc1722a1110d6e66a1 /src/de/danoeh/antennapod
parentad3e8d8bfea75bf78e0ecb075997a58bdec29d6f (diff)
downloadAntennaPod-0a607117d6c8d26d48adede0c903e0b7772a4327.zip
Reduce default speeds to every .1 instead of every .05 so user doesn't have to do a lot of unchecking. Also, be consistant about where float or double is used and be consistent about which context is used for UserPreferences.
Diffstat (limited to 'src/de/danoeh/antennapod')
-rw-r--r--src/de/danoeh/antennapod/activity/AudioplayerActivity.java3
-rw-r--r--src/de/danoeh/antennapod/dialog/VariableSpeedDialog.java3
-rw-r--r--src/de/danoeh/antennapod/preferences/UserPreferences.java42
3 files changed, 26 insertions, 22 deletions
diff --git a/src/de/danoeh/antennapod/activity/AudioplayerActivity.java b/src/de/danoeh/antennapod/activity/AudioplayerActivity.java
index a84e5b8f2..a5104426c 100644
--- a/src/de/danoeh/antennapod/activity/AudioplayerActivity.java
+++ b/src/de/danoeh/antennapod/activity/AudioplayerActivity.java
@@ -428,8 +428,7 @@ public class AudioplayerActivity extends MediaplayerActivity {
break;
}
}
- UserPreferences.setPlaybackSpeed(AudioplayerActivity.this,
- newSpeed);
+ UserPreferences.setPlaybackSpeed(newSpeed);
controller.setPlaybackSpeed(Float.parseFloat(newSpeed));
}
}
diff --git a/src/de/danoeh/antennapod/dialog/VariableSpeedDialog.java b/src/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
index 308235f95..bcff905d9 100644
--- a/src/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
+++ b/src/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
@@ -85,8 +85,7 @@ public class VariableSpeedDialog {
}
}
- UserPreferences.setPlaybackSpeedArray(context,
- newSpeedValues);
+ UserPreferences.setPlaybackSpeedArray(newSpeedValues);
}
});
diff --git a/src/de/danoeh/antennapod/preferences/UserPreferences.java b/src/de/danoeh/antennapod/preferences/UserPreferences.java
index b2c1927b4..8ee03527a 100644
--- a/src/de/danoeh/antennapod/preferences/UserPreferences.java
+++ b/src/de/danoeh/antennapod/preferences/UserPreferences.java
@@ -2,6 +2,8 @@ package de.danoeh.antennapod.preferences;
import java.io.File;
import java.io.IOException;
+import java.util.LinkedList;
+import java.util.List;
import java.util.concurrent.TimeUnit;
import org.apache.commons.lang3.StringUtils;
@@ -89,6 +91,7 @@ public class UserPreferences implements
createNoMediaFile();
PreferenceManager.getDefaultSharedPreferences(context)
.registerOnSharedPreferenceChangeListener(instance);
+
}
private void loadPreferences() {
@@ -145,17 +148,25 @@ public class UserPreferences implements
}
private String[] readPlaybackSpeedArray(String valueFromPrefs) {
- String[] playbackSpeeds = null;
- // If this preference hasn't been set yet, return all options
+ String[] selectedSpeeds = null;
+ // If this preference hasn't been set yet, return the default options
if (valueFromPrefs == null) {
- playbackSpeeds = context.getResources().getStringArray(
+ String[] allSpeeds = context.getResources().getStringArray(
R.array.playback_speed_values);
+ List<String> speedList = new LinkedList<String>();
+ for (String speedStr : allSpeeds) {
+ float speed = Float.parseFloat(speedStr);
+ if (speed < 2.0001 && speed * 10 % 1 == 0) {
+ speedList.add(speedStr);
+ }
+ }
+ selectedSpeeds = speedList.toArray(new String[speedList.size()]);
} else {
try {
JSONArray jsonArray = new JSONArray(valueFromPrefs);
- playbackSpeeds = new String[jsonArray.length()];
+ selectedSpeeds = new String[jsonArray.length()];
for (int i = 0; i < jsonArray.length(); i++) {
- playbackSpeeds[i] = jsonArray.getString(i);
+ selectedSpeeds[i] = jsonArray.getString(i);
}
} catch (JSONException e) {
Log.e(TAG,
@@ -163,7 +174,7 @@ public class UserPreferences implements
e.printStackTrace();
}
}
- return playbackSpeeds;
+ return selectedSpeeds;
}
private static void instanceAvailable() {
@@ -299,24 +310,19 @@ public class UserPreferences implements
}
}
- public static void setPlaybackSpeed(Context context, String speed) {
- SharedPreferences prefs = PreferenceManager
- .getDefaultSharedPreferences(context.getApplicationContext());
- SharedPreferences.Editor editor = prefs.edit();
- editor.putString(PREF_PLAYBACK_SPEED, speed);
- editor.apply();
+ public static void setPlaybackSpeed(String speed) {
+ PreferenceManager.getDefaultSharedPreferences(instance.context).edit()
+ .putString(PREF_PLAYBACK_SPEED, speed).apply();
}
- public static void setPlaybackSpeedArray(Context context, String[] speeds) {
- SharedPreferences prefs = PreferenceManager
- .getDefaultSharedPreferences(context.getApplicationContext());
- SharedPreferences.Editor editor = prefs.edit();
+ public static void setPlaybackSpeedArray(String[] speeds) {
JSONArray jsonArray = new JSONArray();
for (String speed : speeds) {
jsonArray.put(speed);
}
- editor.putString(PREF_PLAYBACK_SPEED_ARRAY, jsonArray.toString());
- editor.apply();
+ PreferenceManager.getDefaultSharedPreferences(instance.context).edit()
+ .putString(PREF_PLAYBACK_SPEED_ARRAY, jsonArray.toString())
+ .apply();
}
public static void setAutodownloadSelectedNetworks(Context context,