修复桌面歌词在关闭软件时被重置回关闭状态的问题

pull/1072/head
lyswhut 2022-12-05 13:05:17 +08:00
parent 5c7652afe8
commit 92c77332a0
9 changed files with 29 additions and 32 deletions

View File

@ -19,10 +19,10 @@
- 桌面歌词新增歌词对齐方式、是否不允许歌词换行、歌词颜色、滚动对齐方式、歌词间距设置
- 桌面歌词新增歌曲频谱显示得益于主窗口与桌面歌词进程通信的改进可以将此功能以CPU使用率“相对较低”的方式带到桌面歌词中
- 桌面歌词新增在任务栏显示歌词进程设置(此设置用于在录屏软件无法捕获歌词窗口时的变通解决方法)(#1063
- 添加kg源罗马音歌词的支持
- 添加kg源罗马音歌词的支持(感谢@helloplhm-qwq
- 支持打开波点音乐歌单(需在酷我源打开)
- 新增设置-基本设置-播放栏进度条样式设置(此版本默认使用迷你进度条样式,对于某些不喜欢该样式的人可以将其换成其他样式)
- 添加kg源评论图片展示感谢 彭狸花喵
- 添加kg源评论图片展示感谢@helloplhm-qwq
### 优化(界面/交互/功能)

View File

@ -204,7 +204,8 @@ export const initAppSetting = async() => {
const config = await initHotKey()
global.lx = {
isTrafficLightClose: false,
isQuitting: false,
isSkipTrayQuit: false,
// mainWindowClosed: true,
event_app: createAppEvent(),
event_list: createListEvent(),
appSetting: defaultSetting,
@ -241,6 +242,6 @@ export const initAppSetting = async() => {
}
export const quitApp = () => {
global.lx.isQuitting = true
global.lx.isSkipTrayQuit = true
closeWindow()
}

View File

@ -17,23 +17,16 @@ const setLyricsConfig = debounce((config: Partial<LX.AppSetting>) => {
const winEvent = () => {
if (!browserWindow) return
// let bounds
// lyricWindow.on('close', event => {
// if (global.isQuitting || !global.appSetting.tray.enable || (!isWin && !global.isTrafficLightClose)) {
// lyricWindow.setProgressBar(-1)
// return
// }
// if (global.isTrafficLightClose) global.isTrafficLightClose = false
// event.preventDefault()
// lyricWindow.hide()
// browserWindow.on('close', () => {
// if (global.lx.appSetting['desktopLyric.enable'] && !global.lx.mainWindowClosed) {
// browserWindow = null
// global.lx.event_app.update_config({ 'desktopLyric.enable': false })
// }
// })
browserWindow.on('closed', () => {
browserWindow = null
if (global.lx.appSetting['desktopLyric.enable']) {
global.lx.event_app.update_config({ 'desktopLyric.enable': false })
}
})
browserWindow.on('move', () => {

View File

@ -109,7 +109,7 @@ export default () => {
})
mainOn(WIN_MAIN_RENDERER_EVENT_NAME.quit_update, () => {
global.lx.isQuitting = true
global.lx.isSkipTrayQuit = true
setTimeout(() => {
autoUpdater.quitAndInstall(true, true)

View File

@ -13,8 +13,9 @@ const winEvent = () => {
if (!browserWindow) return
browserWindow.on('close', event => {
if (global.lx.isQuitting || !global.lx.appSetting['tray.enable'] || (!isWin && !global.lx.isTrafficLightClose)) {
if (global.lx.isSkipTrayQuit || !global.lx.appSetting['tray.enable'] || (!isWin && !global.lx.isTrafficLightClose)) {
browserWindow!.setProgressBar(-1)
// global.lx.mainWindowClosed = true
global.lx.event_app.main_window_close()
return
}
@ -25,6 +26,7 @@ const winEvent = () => {
})
browserWindow.on('closed', () => {
// global.lx.mainWindowClosed = true
browserWindow = null
})
@ -100,6 +102,8 @@ export const createWindow = () => {
winEvent()
if (global.envParams.cmdParams.odt) handleOpenDevTools(browserWindow.webContents)
// global.lx.mainWindowClosed = false
// browserWindow.webContents.openDevTools()
}

View File

@ -11,8 +11,18 @@ interface Lx {
config: LX.HotKeyConfigAll
state: LX.HotKeyState
}
/**
* 绿
*/
isTrafficLightClose: boolean
isQuitting: boolean
/**
* 退
*/
isSkipTrayQuit: boolean
/**
* main window
*/
// mainWindowClosed: boolean
event_app: AppType
event_list: ListType
worker: {

View File

@ -1,16 +1,5 @@
// interface Lx {
// appSetting: LX.AppSetting
// hotKey: {
// enable: boolean
// config: LX.HotKeyConfigAll
// state: LX.HotKeyState
// }
// isTrafficLightClose: boolean
// isQuitting: boolean
// }
// // declare module NodeJS {
// // interface Global {
// // isDev: boolean

View File

@ -36,7 +36,7 @@ export const addSongListDetail = async(id: string, name: string, source: LX.Onli
export const playSongListDetail = async(id: string, list?: LX.Music.MusicInfoOnline[], index: number = 0) => {
let isPlayingList = false
console.log(list)
// console.log(list)
const listId = getListId(id)
if (!list?.length) list = (await getListDetail(id, 1)).list
if (list?.length) {

View File

@ -36,7 +36,7 @@ export const addSongListDetail = async(id: string, source: LX.OnlineSource, name
export const playSongListDetail = async(id: string, source: LX.OnlineSource, list?: LX.Music.MusicInfoOnline[], index: number = 0) => {
let isPlayingList = false
console.log(list)
// console.log(list)
const listId = getListId(id, source)
if (!list?.length) list = (await getListDetail(id, source, 1)).list
if (list?.length) {