From c3be251e8be6ddf3ff014f03577f58e11e9b1566 Mon Sep 17 00:00:00 2001 From: Nite Date: Tue, 23 Jun 2020 19:27:04 +0200 Subject: [PATCH] Restored minor fixes --- .../service/DownloadServiceLifecycleSupport.java | 7 ++++++- .../org/moire/ultrasonic/service/MediaPlayerService.java | 2 ++ .../src/main/java/org/moire/ultrasonic/service/Player.java | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/service/DownloadServiceLifecycleSupport.java b/ultrasonic/src/main/java/org/moire/ultrasonic/service/DownloadServiceLifecycleSupport.java index 407a2fd2..a63829a9 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/service/DownloadServiceLifecycleSupport.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/service/DownloadServiceLifecycleSupport.java @@ -79,6 +79,7 @@ public class DownloadServiceLifecycleSupport downloadQueueSerializer.getValue().deserializeDownloadQueue(new Consumer() { @Override public void accept(State state) { + // TODO: here the autoPlay = false creates problems when Ultrasonic is started by a Play MediaButton as the player won't start this way. downloadService.restore(state.songs, state.currentPlayingIndex, state.currentPlayingPosition, false, false); // Work-around: Serialize again, as the restore() method creates a serialization without current playing info. @@ -176,7 +177,11 @@ public class DownloadServiceLifecycleSupport downloadService.stop(); break; case KeyEvent.KEYCODE_MEDIA_PLAY: - if (downloadService.getPlayerState() != PlayerState.STARTED) + if (downloadService.getPlayerState() == PlayerState.IDLE) + { + downloadService.play(); + } + else if (downloadService.getPlayerState() != PlayerState.STARTED) { downloadService.start(); } diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/service/MediaPlayerService.java b/ultrasonic/src/main/java/org/moire/ultrasonic/service/MediaPlayerService.java index a093bd5b..82b0d7a4 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/service/MediaPlayerService.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/service/MediaPlayerService.java @@ -257,6 +257,7 @@ public class MediaPlayerService extends Service { tabInstance.hideNowPlaying(); stopForeground(true); + player.getValue().clearRemoteControl(); isInForeground = false; stopSelf(); } @@ -465,6 +466,7 @@ public class MediaPlayerService extends Service if (tabInstance != null) { stopForeground(true); + player.getValue().clearRemoteControl(); isInForeground = false; tabInstance.hideNowPlaying(); stopSelf(); diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/service/Player.java b/ultrasonic/src/main/java/org/moire/ultrasonic/service/Player.java index 6922dc91..eb1001a6 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/service/Player.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/service/Player.java @@ -478,7 +478,7 @@ public class Player } } - private void clearRemoteControl() + public void clearRemoteControl() { if (remoteControlClient != null) {