feat(corner-player): support now playing (#717)

* feat(corner-player): support now playing

* fix(corner-player): remove comment

* fix(corner-player): remove mediaSessionAtom

* update

Signed-off-by: Innei <i@innei.in>

---------

Signed-off-by: Innei <i@innei.in>
Co-authored-by: Innei <i@innei.in>
This commit is contained in:
colmugx 2024-09-30 17:22:20 +08:00 committed by GitHub
parent 1d6348919f
commit 553f71b1ba
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 15 additions and 0 deletions

View File

@ -28,6 +28,12 @@ const handleClickPlay = () => {
AudioPlayer.togglePlayAndPause()
}
const setNowPlaying = (metadata: MediaMetadataInit) => {
if ("mediaSession" in navigator) {
navigator.mediaSession.metadata = new MediaMetadata(metadata)
}
}
export const CornerPlayer = () => {
const show = useAudioPlayerAtomSelector((v) => v.show)
const entryId = useAudioPlayerAtomSelector((v) => v.entryId)
@ -102,6 +108,15 @@ const CornerPlayerImpl = () => {
scopes: HotKeyScopeMap.Home,
})
useEffect(() => {
setNowPlaying({
title: entry?.entries.title || undefined,
artist: feed?.title || undefined,
album: feed?.image || undefined,
artwork: [{ src: entry?.entries.authorAvatar || feed?.image || "" }],
})
}, [entry, feed])
const navigateToEntry = useNavigateEntry()
usePlayerTracker()