X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/ba6eafccb81f6761ae90c2e1f53833a02b119a2e..ce7f7fa48c5cce2070a8e42ec19d1954a18db090:/src/com/owncloud/android/media/MediaService.java diff --git a/src/com/owncloud/android/media/MediaService.java b/src/com/owncloud/android/media/MediaService.java index 30558cd4..f8e70fe7 100644 --- a/src/com/owncloud/android/media/MediaService.java +++ b/src/com/owncloud/android/media/MediaService.java @@ -62,7 +62,8 @@ public class MediaService extends Service implements OnCompletionListener, OnPre private static final String MY_PACKAGE = MediaService.class.getPackage() != null ? MediaService.class.getPackage().getName() : "com.owncloud.android.media"; /// Intent actions that we are prepared to handle - public static final String ACTION_PLAY_FILE = MY_PACKAGE + ".android.media.action.PLAY_FILE"; + public static final String ACTION_PLAY_FILE = MY_PACKAGE + ".action.PLAY_FILE"; + public static final String ACTION_STOP_ALL = MY_PACKAGE + ".action.STOP_ALL"; /// Keys to add extras to the action public static final String EXTRA_FILE = MY_PACKAGE + ".extra.FILE"; @@ -72,7 +73,10 @@ public class MediaService extends Service implements OnCompletionListener, OnPre public static final int OC_MEDIA_ERROR = 0; /** Time To keep the control panel visible when the user does not use it */ - public static final int MEDIA_CONTROL_LIFE = 5000; + public static final int MEDIA_CONTROL_SHORT_LIFE = 5000; + + /** Time To keep the control panel visible when the user does not use it */ + public static final int MEDIA_CONTROL_PERMANENT = 0; /** Volume to set when audio focus is lost and ducking is allowed */ private static final float DUCK_VOLUME = 0.1f; @@ -129,7 +133,7 @@ public class MediaService extends Service implements OnCompletionListener, OnPre private IBinder mBinder; /** Control panel shown to the user to control the playback, to register through binding */ - private MediaController mMediaController; + private MediaControlView mMediaController; @@ -228,6 +232,9 @@ public class MediaService extends Service implements OnCompletionListener, OnPre String action = intent.getAction(); if (action.equals(ACTION_PLAY_FILE)) { processPlayFileRequest(intent); + + } else if (action.equals(ACTION_STOP_ALL)) { + processStopRequest(true); } return START_NOT_STICKY; // don't want it to restart in case it's killed. @@ -474,9 +481,6 @@ public class MediaService extends Service implements OnCompletionListener, OnPre /** Called when media player is done playing current song. */ public void onCompletion(MediaPlayer player) { - if (mMediaController != null) { - mMediaController.hide(); - } Toast.makeText(this, String.format(getString(R.string.media_event_done, mFile.getFileName())), Toast.LENGTH_LONG).show(); processStopRequest(true); return; @@ -496,7 +500,7 @@ public class MediaService extends Service implements OnCompletionListener, OnPre } configAndStartMediaPlayer(); if (mMediaController != null) { - mMediaController.show(MEDIA_CONTROL_LIFE); + mMediaController.updatePausePlay(); } } @@ -569,10 +573,6 @@ public class MediaService extends Service implements OnCompletionListener, OnPre public boolean onError(MediaPlayer mp, int what, int extra) { Log.e(TAG, "Error in audio playback, what = " + what + ", extra = " + extra); - if (mMediaController != null) { - mMediaController.hide(); - } - String message = getMessageForMediaError(this, what, extra); Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show(); @@ -673,15 +673,11 @@ public class MediaService extends Service implements OnCompletionListener, OnPre } - protected void setMediaContoller(MediaController mediaController) { - if (mMediaController != null) { - mMediaController.hide(); - } + protected void setMediaContoller(MediaControlView mediaController) { mMediaController = mediaController; - } - protected MediaController getMediaController() { + protected MediaControlView getMediaController() { return mMediaController; }