修复更新日志弹窗显示
parent
165832e703
commit
ba3b2f613a
|
@ -39,7 +39,7 @@ export const DATA_KEYS = {
|
|||
songListSetting: 'songListSetting',
|
||||
searchSetting: 'searchSetting',
|
||||
|
||||
lastLastStartInfo: 'lastLastStartInfo',
|
||||
lastStartInfo: 'lastStartInfo',
|
||||
} as const
|
||||
|
||||
export const DEFAULT_SETTING = {
|
||||
|
|
|
@ -46,21 +46,27 @@ export default {
|
|||
if (!versionInfo.newVersion || !versionInfo.newVersion?.history) return info
|
||||
info.isLatest = compareVer(currentVer, versionInfo.newVersion.version) >= 0
|
||||
|
||||
for (const ver of versionInfo.newVersion.history) {
|
||||
switch (compareVer(ver.version, currentVer)) {
|
||||
case 0:
|
||||
info.version = ver.version
|
||||
info.desc = ver.desc
|
||||
break
|
||||
case -1:
|
||||
if (lastStartVer && compareVer(lastStartVer, ver.version) < 0) info.history.push(ver)
|
||||
}
|
||||
}
|
||||
const history = [{ version: versionInfo.newVersion.version, desc: versionInfo.newVersion.desc }, ...versionInfo.newVersion.history]
|
||||
|
||||
if (!info.version) {
|
||||
if (currentVer == versionInfo.newVersion.version) {
|
||||
info.version = versionInfo.newVersion.version
|
||||
info.desc = versionInfo.newVersion.desc
|
||||
if (lastStartVer) {
|
||||
for (const ver of history) {
|
||||
switch (compareVer(ver.version, currentVer)) {
|
||||
case 0:
|
||||
info.version = ver.version
|
||||
info.desc = ver.desc
|
||||
break
|
||||
case -1:
|
||||
if (compareVer(lastStartVer, ver.version) < 0) info.history.push(ver)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
const verInfo = history.find(v => v.version == currentVer)
|
||||
if (verInfo) {
|
||||
info.version = verInfo.version
|
||||
info.desc = verInfo.desc
|
||||
} else {
|
||||
info.desc = '未找到当前版本的更新日志'
|
||||
info.version = currentVer
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -46,14 +46,21 @@ export default () => {
|
|||
void getLastStartInfo().then((version) => {
|
||||
if (version == process.versions.app) return
|
||||
saveLastStartInfo(process.versions.app)
|
||||
if (compareVer(process.versions.app, version) < 0) {
|
||||
void dialog({
|
||||
message: window.i18n.t('update__downgrade_tip', { ver: `${version} → ${process.versions.app}` }),
|
||||
confirmButtonText: window.i18n.t('update__ignore_confirm_tip_confirm'),
|
||||
})
|
||||
return
|
||||
}
|
||||
if (compareVer(process.versions.app, versionInfo.newVersion!.version) > 0) return
|
||||
if (version) {
|
||||
if (compareVer(process.versions.app, version) < 0) {
|
||||
void dialog({
|
||||
message: window.i18n.t('update__downgrade_tip', { ver: `${version} → ${process.versions.app}` }),
|
||||
confirmButtonText: window.i18n.t('update__ignore_confirm_tip_confirm'),
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
if (compareVer(version, versionInfo.newVersion!.version) >= 0) return
|
||||
} else if (
|
||||
// 如果当前版本不在已发布的版本中,则不需要显示更新日志
|
||||
![{ version: versionInfo.newVersion!.version, desc: '' }, ...(versionInfo.newVersion!.history ?? [])]
|
||||
.some(i => i.version == process.versions.app)
|
||||
) return
|
||||
isShowChangeLog.value = true
|
||||
})
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { rendererSend, rendererInvoke, rendererOn, rendererOff } from '@common/rendererIpc'
|
||||
import { HOTKEY_RENDERER_EVENT_NAME, WIN_MAIN_RENDERER_EVENT_NAME, CMMON_EVENT_NAME } from '@common/ipcNames'
|
||||
import { ProgressInfo, UpdateDownloadedEvent, UpdateInfo } from 'electron-updater'
|
||||
import { type ProgressInfo, type UpdateDownloadedEvent, type UpdateInfo } from 'electron-updater'
|
||||
import { markRaw } from '@common/utils/vueTools'
|
||||
import * as hotKeys from '@common/hotKey'
|
||||
import { APP_EVENT_NAMES, DATA_KEYS, DEFAULT_SETTING } from '@common/constants'
|
||||
|
@ -172,13 +172,13 @@ export const setTaskBarProgress = (progress: number, mode?: Electron.ProgressBar
|
|||
|
||||
export const saveLastStartInfo = (version: string) => {
|
||||
rendererSend(WIN_MAIN_RENDERER_EVENT_NAME.save_data, {
|
||||
path: DATA_KEYS.lastLastStartInfo,
|
||||
path: DATA_KEYS.lastStartInfo,
|
||||
data: version,
|
||||
})
|
||||
}
|
||||
// 获取最后一次启动时的版本号
|
||||
export const getLastStartInfo = async() => {
|
||||
return rendererInvoke<string, string>(WIN_MAIN_RENDERER_EVENT_NAME.get_data, DATA_KEYS.lastLastStartInfo)
|
||||
return rendererInvoke<string, string | null>(WIN_MAIN_RENDERER_EVENT_NAME.get_data, DATA_KEYS.lastStartInfo)
|
||||
}
|
||||
|
||||
export const savePlayInfo = (playInfo: LX.Player.SavedPlayInfo) => {
|
||||
|
|
Loading…
Reference in New Issue