diff options
Diffstat (limited to 'src/de/danoeh')
-rw-r--r-- | src/de/danoeh/antennapod/activity/MediaplayerActivity.java | 7 | ||||
-rw-r--r-- | src/de/danoeh/antennapod/util/PlaybackController.java | 18 |
2 files changed, 13 insertions, 12 deletions
diff --git a/src/de/danoeh/antennapod/activity/MediaplayerActivity.java b/src/de/danoeh/antennapod/activity/MediaplayerActivity.java index 6d56861e9..16be3d17c 100644 --- a/src/de/danoeh/antennapod/activity/MediaplayerActivity.java +++ b/src/de/danoeh/antennapod/activity/MediaplayerActivity.java @@ -380,13 +380,12 @@ public abstract class MediaplayerActivity extends SherlockFragmentActivity } float prog; - int duration; @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { - controller.onSeekBarProgressChanged(seekBar, progress, fromUser, prog, - duration, txtvPosition); + prog = controller.onSeekBarProgressChanged(seekBar, progress, fromUser, + txtvPosition); } @Override @@ -396,7 +395,7 @@ public abstract class MediaplayerActivity extends SherlockFragmentActivity @Override public void onStopTrackingTouch(SeekBar seekBar) { - controller.onSeekBarStopTrackingTouch(seekBar, prog, duration); + controller.onSeekBarStopTrackingTouch(seekBar, prog); } } diff --git a/src/de/danoeh/antennapod/util/PlaybackController.java b/src/de/danoeh/antennapod/util/PlaybackController.java index 94deb0c77..cd91aef18 100644 --- a/src/de/danoeh/antennapod/util/PlaybackController.java +++ b/src/de/danoeh/antennapod/util/PlaybackController.java @@ -415,14 +415,16 @@ public abstract class PlaybackController { /** * Should be used by classes which implement the OnSeekBarChanged interface. */ - public void onSeekBarProgressChanged(SeekBar seekBar, int progress, - boolean fromUser, float prog, int duration, TextView txtvPosition) { - if (fromUser && PlaybackService.isRunning) { - prog = progress / ((float) seekBar.getMax()); - duration = playbackService.getPlayer().getDuration(); + public float onSeekBarProgressChanged(SeekBar seekBar, int progress, + boolean fromUser, TextView txtvPosition) { + if (fromUser && playbackService != null) { + float prog = progress / ((float) seekBar.getMax()); + int duration = playbackService.getPlayer().getDuration(); txtvPosition.setText(Converter .getDurationStringLong((int) (prog * duration))); + return prog; } + return 0; } @@ -440,9 +442,9 @@ public abstract class PlaybackController { /** * Should be used by classes which implement the OnSeekBarChanged interface. */ - public void onSeekBarStopTrackingTouch(SeekBar seekBar, float prog, int duration) { - if (PlaybackService.isRunning) { - playbackService.seek((int) (prog * duration)); + public void onSeekBarStopTrackingTouch(SeekBar seekBar, float prog) { + if (playbackService != null) { + playbackService.seek((int) (prog * playbackService.getPlayer().getDuration())); setupPositionObserver(); } } |