Skip to content

Commit

Permalink
修复 MacOS 平台在 Finder 打开文件或目录时应用卡死的问题(#1684
Browse files Browse the repository at this point in the history
  • Loading branch information
lyswhut committed Dec 8, 2023
1 parent 15942a7 commit b67d99e
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 3 deletions.
1 change: 1 addition & 0 deletions publish/changeLog.md
Expand Up @@ -24,6 +24,7 @@
- 修复备份文件无法导入json格式的问题
- Windows、MacOS平台下的字体列表取消使用原生方式获取以修复某些字体应用后无效的问题(#1596
- 修复亮暗主题自动切换功能无效的问题(#1697
- 修复 MacOS 平台在 Finder 打开文件或目录时应用卡死的问题(#1684

### 其他

Expand Down
1 change: 1 addition & 0 deletions src/common/ipcNames.ts
Expand Up @@ -55,6 +55,7 @@ const modules = {
show_save_dialog: 'show_save_dialog',
show_select_dialog: 'show_select_dialog',
show_dialog: 'show_dialog',
open_dir_in_explorer: 'open_dir_in_explorer',
open_dev_tools: 'open_dev_tools',

progress: 'progress',
Expand Down
5 changes: 5 additions & 0 deletions src/main/modules/winMain/rendererEvent/app.ts
Expand Up @@ -26,6 +26,7 @@ import {
} from '@main/modules/winMain'
import { quitApp } from '@main/app'
import { getAllThemes, removeTheme, saveTheme } from '@main/utils'
import { openDirInExplorer } from '@common/utils/electron'

export default () => {
// 设置应用名称
Expand Down Expand Up @@ -80,6 +81,10 @@ export default () => {
mainHandle<Electron.SaveDialogOptions, Electron.SaveDialogReturnValue>(WIN_MAIN_RENDERER_EVENT_NAME.show_save_dialog, async({ params }) => {
return showSaveDialog(params)
})
// 在资源管理器中定位文件
mainOn<string>(WIN_MAIN_RENDERER_EVENT_NAME.open_dir_in_explorer, async({ params }) => {
return openDirInExplorer(params)
})


mainHandle(WIN_MAIN_RENDERER_EVENT_NAME.clear_cache, async() => {
Expand Down
6 changes: 6 additions & 0 deletions src/renderer/utils/ipc.ts
Expand Up @@ -494,6 +494,12 @@ export const openSaveDir = async(options: Electron.SaveDialogOptions) => {
return rendererInvoke<Electron.SaveDialogOptions, Electron.SaveDialogReturnValue>(WIN_MAIN_RENDERER_EVENT_NAME.show_save_dialog, options)
}

/**
* 在资源管理器中定位文件
*/
export const openDirInExplorer = async(path: string) => {
return rendererSend<string>(WIN_MAIN_RENDERER_EVENT_NAME.open_dir_in_explorer, path)
}

/**
* 获取缓存大小
Expand Down
3 changes: 2 additions & 1 deletion src/renderer/views/Download/useTaskActions.js
@@ -1,12 +1,13 @@
import { useRouter } from '@common/utils/vueRouter'
import musicSdk from '@renderer/utils/musicSdk'
import { openUrl, openDirInExplorer } from '@common/utils/electron'
import { openUrl } from '@common/utils/electron'
import { checkPath } from '@common/utils/nodejs'
// import { dialog } from '@renderer/plugins/Dialog'
// import { useI18n } from '@renderer/plugins/i18n'
// import { appSetting } from '@renderer/store/setting'
import { toOldMusicInfo } from '@renderer/utils/index'
import { startDownloadTasks, pauseDownloadTasks, removeDownloadTasks } from '@renderer/store/download/action'
import { openDirInExplorer } from '@renderer/utils/ipc'

export default ({ list, selectedList, removeAllSelect }) => {
const router = useRouter()
Expand Down
3 changes: 1 addition & 2 deletions src/renderer/views/Setting/components/SettingDownload.vue
Expand Up @@ -56,8 +56,7 @@ dd
<script>
import { computed } from '@common/utils/vueTools'
// import { getSystemFonts } from '@renderer/utils/tools'
import { openDirInExplorer } from '@common/utils/electron'
import { showSelectDialog } from '@renderer/utils/ipc'
import { showSelectDialog, openDirInExplorer } from '@renderer/utils/ipc'
import { useI18n } from '@renderer/plugins/i18n'
import { appSetting, updateSetting } from '@renderer/store/setting'
Expand Down

0 comments on commit b67d99e

Please sign in to comment.