Merge branch 'dev'

pull/733/head v1.14.1
lyswhut 2021-10-04 12:28:08 +08:00
commit ff47a224c7
8 changed files with 31 additions and 24 deletions

View File

@ -6,6 +6,13 @@ Project versioning adheres to [Semantic Versioning](http://semver.org/).
Commit convention is based on [Conventional Commits](http://conventionalcommits.org).
Change log format is based on [Keep a Changelog](http://keepachangelog.com/).
## [1.14.1](https://github.com/lyswhut/lx-music-desktop/compare/v1.14.0...v1.14.1) - 2021-10-04
### 修复
- 修复我的列表搜索无法搜索小括号、中括号等字符的问题
- 修复v1.14.0出现的备份与恢复功能备份的数据无法恢复的问题同时兼容使用v1.14.0导出的存在问题的数据
## [1.14.0](https://github.com/lyswhut/lx-music-desktop/compare/v1.13.0...v1.14.0) - 2021-10-02
### 新增

View File

@ -1,6 +1,6 @@
{
"name": "lx-music-desktop",
"version": "1.14.0",
"version": "1.14.1",
"description": "一个免费的音乐查找助手",
"main": "./dist/electron/main.js",
"productName": "lx-music-desktop",

View File

@ -1,15 +1,4 @@
### 新增
- 新增歌词简体中文转繁体中文,当软件语言被设置为繁体中文后,播放歌曲的歌词也将自动转成繁体中文显示
- 新增单个列表导入/导出功能,可以方便分享歌曲列表,可在右击“我的列表”里的列表名后弹出的菜单中使用
- 新增删除列表前的确认弹窗,防止误删列表
- 新增歌词文本选择复制功能,可在详情页进度条上方的歌词文本选择按钮进入歌词文本选择模式,选择完成后可鼠标右击或者使用系统快捷键复制
- 新增重复歌曲列表,可以方便移除我的列表中的重复歌曲,此列表会列出目标列表里歌曲名相同的歌曲,可在右击“我的列表”里的列表名后弹出的菜单中使用
### 修复
- 修复mg排行榜无法加载的问题
- 修复点击播放详情页的进度条跳进度时会出现偏移的问题
- 修复在有提示信息的地方长按鼠标按键时提示信息会闪烁的问题
- 修复下载歌曲时的歌词下载不尝试获取缓存歌词的问题
- 修复GNOME等桌面下每次打开应用时需重新设置歌词窗口置顶的问题
- 修复我的列表搜索无法搜索小括号、中括号等字符的问题
- 修复v1.14.0出现的备份与恢复功能备份的数据无法恢复的问题同时兼容使用v1.14.0导出的存在问题的数据

File diff suppressed because one or more lines are too long

View File

@ -239,7 +239,7 @@ export default {
handleSearch() {
if (!this.text.length) return this.resultList = []
let list = []
let rxp = new RegExp(this.text.split('').join('.*') + '.*', 'i')
let rxp = new RegExp(this.text.split('').map(s => s.replace(/[.*+?^${}()|[\]\\]/, '\\$&')).join('.*') + '.*', 'i')
for (const item of this.list) {
if (rxp.test(`${item.name}${item.singer}${item.albumName ? item.albumName : ''}`)) list.push(item)
}

View File

@ -464,7 +464,18 @@ export const readLxConfigFile = async path => {
let data = await fs.promises.readFile(path, isJSON ? 'utf8' : 'binary')
if (!data || isJSON) return data
data = await gunzipData(Buffer.from(data, 'binary'))
return data.toString('utf8')
data = JSON.parse(data.toString('utf8'))
// 修复v1.14.0出现的导出数据被序列化两次的问题
if (typeof data != 'object') {
try {
data = JSON.parse(data)
} catch (err) {
return data
}
}
return data
}

View File

@ -1050,7 +1050,7 @@ export default {
if (result.canceled) return
let listData
try {
listData = JSON.parse(await readLxConfigFile(result.filePaths[0]))
listData = await readLxConfigFile(result.filePaths[0])
} catch (error) {
return
}

View File

@ -815,7 +815,7 @@ export default {
async importSetting(path) {
let settingData
try {
settingData = JSON.parse(await readLxConfigFile(path))
settingData = await readLxConfigFile(path)
} catch (error) {
return
}
@ -830,12 +830,12 @@ export default {
type: 'setting',
data: Object.assign({ version: this.settingVersion }, this.setting),
}
saveLxConfigFile(path, JSON.stringify(data))
saveLxConfigFile(path, data)
},
async importPlayList(path) {
let listData
try {
listData = JSON.parse(await readLxConfigFile(path))
listData = await readLxConfigFile(path)
} catch (error) {
return
}
@ -867,12 +867,12 @@ export default {
if (item.otherSource) delete item.otherSource
}
}
saveLxConfigFile(path, JSON.stringify(data))
saveLxConfigFile(path, data)
},
async importAllData(path) {
let allData
try {
allData = JSON.parse(await readLxConfigFile(path))
allData = await readLxConfigFile(path)
} catch (error) {
return
}
@ -906,7 +906,7 @@ export default {
if (item.otherSource) delete item.otherSource
}
}
saveLxConfigFile(path, JSON.stringify(allData))
saveLxConfigFile(path, allData)
},
handleImportAllData() {
selectDir({