diff options
Diffstat (limited to 'src/de/danoeh/antennapod/activity/MediaplayerActivity.java')
-rw-r--r-- | src/de/danoeh/antennapod/activity/MediaplayerActivity.java | 69 |
1 files changed, 35 insertions, 34 deletions
diff --git a/src/de/danoeh/antennapod/activity/MediaplayerActivity.java b/src/de/danoeh/antennapod/activity/MediaplayerActivity.java index 0425638bd..be0179e64 100644 --- a/src/de/danoeh/antennapod/activity/MediaplayerActivity.java +++ b/src/de/danoeh/antennapod/activity/MediaplayerActivity.java @@ -43,7 +43,7 @@ import de.danoeh.antennapod.util.MediaPlayerError; import de.danoeh.antennapod.util.StorageUtils; import de.danoeh.antennapod.util.menuhandler.FeedItemMenuHandler; -public abstract class MediaplayerActivity extends SherlockFragmentActivity { +public abstract class MediaplayerActivity extends SherlockFragmentActivity implements OnSeekBarChangeListener{ private static final String TAG = "MediaplayerActivity"; static final int DEFAULT_SEEK_DELTA = 30000; @@ -471,39 +471,7 @@ public abstract class MediaplayerActivity extends SherlockFragmentActivity { // SEEKBAR SETUP - sbPosition.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { - int duration; - float prog; - - @Override - public void onProgressChanged(SeekBar seekBar, int progress, - boolean fromUser) { - if (fromUser && PlaybackService.isRunning) { - prog = progress / ((float) seekBar.getMax()); - duration = playbackService.getPlayer().getDuration(); - txtvPosition.setText(Converter - .getDurationStringLong((int) (prog * duration))); - } - - } - - @Override - public void onStartTrackingTouch(SeekBar seekBar) { - // interrupt position Observer, restart later - if (positionObserver != null) { - positionObserver.cancel(true); - positionObserver = null; - } - } - - @Override - public void onStopTrackingTouch(SeekBar seekBar) { - if (PlaybackService.isRunning) { - playbackService.seek((int) (prog * duration)); - setupPositionObserver(); - } - } - }); + sbPosition.setOnSeekBarChangeListener(this); // BUTTON SETUP @@ -606,5 +574,38 @@ public abstract class MediaplayerActivity extends SherlockFragmentActivity { return null; } } + + // OnSeekbarChangeListener + private int duration; + private float prog; + + @Override + public void onProgressChanged(SeekBar seekBar, int progress, + boolean fromUser) { + if (fromUser && PlaybackService.isRunning) { + prog = progress / ((float) seekBar.getMax()); + duration = playbackService.getPlayer().getDuration(); + txtvPosition.setText(Converter + .getDurationStringLong((int) (prog * duration))); + } + + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) { + // interrupt position Observer, restart later + if (positionObserver != null) { + positionObserver.cancel(true); + positionObserver = null; + } + } + + @Override + public void onStopTrackingTouch(SeekBar seekBar) { + if (PlaybackService.isRunning) { + playbackService.seek((int) (prog * duration)); + setupPositionObserver(); + } + } } |