修复修改播放设置-音频输出设置后,所做的更改没有被保存的问题(#1116)

pull/1123/head
lyswhut 2023-01-07 15:17:07 +08:00
parent 3c589743b1
commit cccb5b191d
2 changed files with 15 additions and 7 deletions

View File

@ -6,6 +6,7 @@
- 修复桌面歌词使用斜体出现截断的问题(#1106
- 修复某些情况下歌词的滚动问题
- 修复禁用切歌时歌曲播放完毕后的歌曲信息显示问题
- 修复修改播放设置-音频输出设置后,所做的更改没有被保存的问题
### 优化

View File

@ -14,6 +14,7 @@ const getDevices = async() => {
export default () => {
let prevDeviceLabel: string | null = null
let prevDeviceId = ''
const setMediaDevice = async(mediaDeviceId: string) => {
let label = prevDeviceLabel
@ -30,9 +31,15 @@ export default () => {
prevDeviceLabel = label
// console.log(device)
setMediaDeviceId(mediaDeviceId).catch((err: any) => {
setMediaDeviceId(mediaDeviceId).then(() => {
prevDeviceId = mediaDeviceId
saveMediaDeviceId(mediaDeviceId)
}).catch((err: any) => {
console.log(err)
saveMediaDeviceId('default')
setMediaDeviceId('default').finally(() => {
prevDeviceId = 'default'
saveMediaDeviceId('default')
})
})
}
@ -60,13 +67,13 @@ export default () => {
// @ts-expect-error
handleDeviceChangeStopPlay(device, mediaDeviceId)
setMediaDeviceId(device!.deviceId).catch((err: any) => {
console.log(err)
saveMediaDeviceId('default')
})
void setMediaDevice(device!.deviceId)
}
watch(() => appSetting['player.mediaDeviceId'], setMediaDevice)
watch(() => appSetting['player.mediaDeviceId'], (id) => {
if (prevDeviceId == id) return
void setMediaDevice(id)
})
void setMediaDevice(appSetting['player.mediaDeviceId'])