diff options
author | Domingos Lopes <domingos86lopes@gmail.com> | 2016-02-20 09:02:50 -0500 |
---|---|---|
committer | Domingos Lopes <domingos86lopes@gmail.com> | 2016-02-20 09:02:50 -0500 |
commit | 13f5b09d56d5dd0e21a4e13f438e35ed3c7ebb19 (patch) | |
tree | 3667823f66c1a41b258ccc6c26f8d169a6d994be /core/src | |
parent | 844dd17cb195c6fd81d83f5ca560d65612a9cdcb (diff) | |
download | AntennaPod-13f5b09d56d5dd0e21a4e13f438e35ed3c7ebb19.zip |
fix the volume conversion upon user interaction
move the conversion formula to a new method in core.util.Converter
Diffstat (limited to 'core/src')
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java | 13 | ||||
-rw-r--r-- | core/src/main/java/de/danoeh/antennapod/core/util/Converter.java | 13 |
2 files changed, 15 insertions, 11 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java b/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java index 6c0aff15e..293514ec7 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java +++ b/core/src/main/java/de/danoeh/antennapod/core/preferences/UserPreferences.java @@ -29,6 +29,7 @@ import de.danoeh.antennapod.core.storage.APCleanupAlgorithm; import de.danoeh.antennapod.core.storage.APNullCleanupAlgorithm; import de.danoeh.antennapod.core.storage.APQueueCleanupAlgorithm; import de.danoeh.antennapod.core.storage.EpisodeCleanupAlgorithm; +import de.danoeh.antennapod.core.util.Converter; /** * Provides access to preferences set by the user in the settings screen. A @@ -260,20 +261,12 @@ public class UserPreferences { public static float getLeftVolume() { int volume = prefs.getInt(PREF_LEFT_VOLUME, 100); - if(volume == 100) { - return 1.0f; - } else { - return (float) (1 - (Math.log(100 - volume) / Math.log(100))); - } + return Converter.getVolumeFromPercentage(volume); } public static float getRightVolume() { int volume = prefs.getInt(PREF_RIGHT_VOLUME, 100); - if(volume == 100) { - return 1.0f; - } else { - return (float) (1 - (Math.log(100 - volume) / Math.log(100))); - } + return Converter.getVolumeFromPercentage(volume); } public static boolean shouldPauseForFocusLoss() { diff --git a/core/src/main/java/de/danoeh/antennapod/core/util/Converter.java b/core/src/main/java/de/danoeh/antennapod/core/util/Converter.java index 1b929b214..74fb9e709 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/util/Converter.java +++ b/core/src/main/java/de/danoeh/antennapod/core/util/Converter.java @@ -118,5 +118,16 @@ public final class Converter { result += minutes; return result; } - + + /** + * Converts the volume as read as the progress from a SeekBar scaled to 100 and as saved in + * UserPreferences to the format taken by setVolume methods. + * @param progress integer between 0 to 100 taken from the SeekBar progress + * @return the appropriate volume as float taken by setVolume methods + */ + public static float getVolumeFromPercentage(int progress){ + if (progress==100) + return 1f; + return (float) (1 - (Math.log(101 - progress) / Math.log(101))); + } } |