From 526f848f9779dd0d699a60d2d63af97120e88cd1 Mon Sep 17 00:00:00 2001 From: MM20 <15646950+MM2-0@users.noreply.github.com> Date: Sat, 15 Jan 2022 14:41:58 +0100 Subject: [PATCH] MusicRepository: ignore metadata updates for controllers other than the current --- .../main/java/de/mm20/launcher2/music/MusicRepository.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/music/src/main/java/de/mm20/launcher2/music/MusicRepository.kt b/music/src/main/java/de/mm20/launcher2/music/MusicRepository.kt index 4a854b6a..9ca6f775 100644 --- a/music/src/main/java/de/mm20/launcher2/music/MusicRepository.kt +++ b/music/src/main/java/de/mm20/launcher2/music/MusicRepository.kt @@ -141,25 +141,26 @@ class MusicRepositoryImpl( allowedCommands: SessionCommandGroup ) { super.onConnected(controller, allowedCommands) - if (!controller.isConnected) return + if (controller != mediaController) return updateMetadata(controller.currentMediaItem, controller.connectedToken?.packageName) updateState(controller.playerState) } override fun onCurrentMediaItemChanged(controller: MediaController, item: MediaItem?) { super.onCurrentMediaItemChanged(controller, item) - if (!controller.isConnected) return + if (controller != mediaController) return updateMetadata(item, controller.connectedToken?.packageName) } override fun onPlayerStateChanged(controller: MediaController, state: Int) { super.onPlayerStateChanged(controller, state) - if (!controller.isConnected) return + if (controller != mediaController) return updateState(state) } override fun onDisconnected(controller: MediaController) { super.onDisconnected(controller) + if (controller != mediaController) return mediaController = null } }