From c1a4b5ede8c7efa69168a36e50011e5094506f93 Mon Sep 17 00:00:00 2001 From: austinried <4966622+austinried@users.noreply.github.com> Date: Tue, 12 Apr 2022 09:45:10 +0900 Subject: [PATCH 1/2] restore repeat mode when rebuilding the queue (#93) --- app/state/trackplayer.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/state/trackplayer.ts b/app/state/trackplayer.ts index 0ea4431..eb1c5c8 100644 --- a/app/state/trackplayer.ts +++ b/app/state/trackplayer.ts @@ -274,6 +274,7 @@ export const createTrackPlayerSlice = (set: SetStore, get: GetStore): TrackPlaye const currentTrack = await getCurrentTrack() const playerState = await getPlayerState() const position = (await TrackPlayer.getPosition()) || 0 + const repeatMode = await getRepeatMode() const queueName = get().queueName const queueContextId = get().queueContextId @@ -304,6 +305,7 @@ export const createTrackPlayerSlice = (set: SetStore, get: GetStore): TrackPlaye await TrackPlayer.skip(currentTrack) } + await TrackPlayer.setRepeatMode(repeatMode) await TrackPlayer.seekTo(position) if (playerState === State.Playing || forcePlay) { From f39a29159a12e9b0f17bc5e3034c989713a9e6b1 Mon Sep 17 00:00:00 2001 From: austinried <4966622+austinried@users.noreply.github.com> Date: Tue, 12 Apr 2022 09:45:38 +0900 Subject: [PATCH 2/2] Fix pausing after playing a few tracks (#94) we only get this error when playing so we should always keep playing --- app/playbackservice.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/playbackservice.ts b/app/playbackservice.ts index c926944..45c5b46 100644 --- a/app/playbackservice.ts +++ b/app/playbackservice.ts @@ -28,9 +28,9 @@ const setNetState = (netState: 'mobile' | 'wifi') => { }) } -const rebuildQueue = () => { +const rebuildQueue = (forcePlay?: boolean) => { unstable_batchedUpdates(() => { - useStore.getState().rebuildQueue(useStore.getState().playerState === State.Playing) + useStore.getState().rebuildQueue(forcePlay) }) } @@ -139,7 +139,7 @@ const createService = async () => { // fix for ExoPlayer aborting playback while esimating content length if (code === 'playback-source' && message.includes('416')) { - rebuildQueue() + rebuildQueue(true) } }) }