From a44bd7e255503aabd0d207b4958bce709aeafe97 Mon Sep 17 00:00:00 2001 From: daniel oeh Date: Thu, 6 Sep 2012 17:18:22 +0200 Subject: Seeking should now work again --- src/de/danoeh/antennapod/util/PlaybackController.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'src/de/danoeh/antennapod/util/PlaybackController.java') 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(); } } -- cgit v1.2.3