修复“当前的声音输出设备被改变时暂停播放歌曲”设置无效的问题
parent
86f9c03707
commit
b51c8e1552
|
@ -2,6 +2,10 @@
|
|||
|
||||
- 优化Windows任务栏缩略图工具栏控制按钮在浅色任务栏下的显示效果
|
||||
|
||||
### 修复
|
||||
|
||||
- 修复“当前的声音输出设备被改变时暂停播放歌曲”设置无效的问题
|
||||
|
||||
### 文档
|
||||
|
||||
添加LX中定义的快捷操作汇总说明到常见问题中,这是目前可用的鼠标、键盘快捷操作,他们都可以在更新日志中找到
|
||||
|
|
|
@ -7,6 +7,10 @@ import { setMediaDeviceId } from '@renderer/plugins/player'
|
|||
import { isPlay } from '@renderer/core/share/player'
|
||||
import { player as eventPlayerNames } from '@renderer/event/names'
|
||||
|
||||
const getDevices = async() => {
|
||||
const devices = await navigator.mediaDevices.enumerateDevices()
|
||||
return devices.filter(({ kind }) => kind == 'audiooutput')
|
||||
}
|
||||
|
||||
export default ({ setting }) => {
|
||||
let prevDeviceLabel = null
|
||||
|
@ -15,7 +19,7 @@ export default ({ setting }) => {
|
|||
|
||||
const setMediaDevice = async(mediaDeviceId) => {
|
||||
let label = prevDeviceLabel
|
||||
const devices = await navigator.mediaDevices.enumerateDevices()
|
||||
const devices = await getDevices()
|
||||
let device = devices.find(device => device.deviceId === mediaDeviceId)
|
||||
if (device) {
|
||||
mediaDeviceId = device.deviceId
|
||||
|
@ -41,12 +45,12 @@ export default ({ setting }) => {
|
|||
setting.value.player.isMediaDeviceRemovedStopPlay &&
|
||||
isPlay.value &&
|
||||
device.label != prevDeviceLabel
|
||||
) window.eventHub.emit(eventPlayerNames.setTogglePlay)
|
||||
) window.eventHub.emit(eventPlayerNames.setPause)
|
||||
}
|
||||
|
||||
const handleMediaListChange = async() => {
|
||||
let mediaDeviceId = setting.value.player.mediaDeviceId
|
||||
const devices = await navigator.mediaDevices.enumerateDevices()
|
||||
const devices = await getDevices()
|
||||
let device = devices.find(device => device.deviceId === mediaDeviceId)
|
||||
if (!device) device = devices.find(device => device.deviceId === 'default')
|
||||
if (!device) device = { label: null, deviceId: null }
|
||||
|
|
Loading…
Reference in New Issue