summaryrefslogtreecommitdiff
path: root/src/de/danoeh/antennapod/activity/MediaplayerActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/de/danoeh/antennapod/activity/MediaplayerActivity.java')
-rw-r--r--src/de/danoeh/antennapod/activity/MediaplayerActivity.java69
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();
+ }
+ }
}