electron globalShortcut 快捷键与系统全局快捷键冲突

这篇具有很好参考价值的文章主要介绍了electron globalShortcut 快捷键与系统全局快捷键冲突。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

electron 开发自己的接口测试工具(Post Tools),在设置了 globalShortcut 快捷键后,发现应用中的快捷键与系统全局快捷键冲突了,导致系统快捷键不可正常使用。

electron globalShortcut 快捷键与系统全局快捷键冲突,Electron / Tauri,electron,桌面应用

快捷键配置

export function initGlobalShortcut(mainWindow) {
  globalShortcut.register('CommandOrControl+shift+r', () => {
    app.relaunch()
    app.exit()
  })
  globalShortcut.register('CommandOrControl+shift+delete', () => {
    resetLocalData()
  })
  globalShortcut.register('F1', () => {
    shell.openExternal('https://tiven.cn/p/4dc21784/')
  })
  globalShortcut.register('F2', () => {
    shell.openExternal('https://tiven.cn/service/tools/post-tool')
  })
  globalShortcut.register('F5', () => {
    mainWindow?.reload()
  })
  globalShortcut.register('CommandOrControl+r', () => {
    mainWindow?.reload()
  })
  globalShortcut.register('CommandOrControl+q', () => {
    app.exit()
  })
  globalShortcut.register('CommandOrControl+w', () => {
    mainWindow?.hide()
    mainWindow?.setSkipTaskbar(true)
  })
  globalShortcut.register('F11', () => {
    // 是否全屏
    if (mainWindow?.isFullScreen()) {
      // mainWindow?.minimize();
      mainWindow?.setFullScreen(false)
      mainWindow?.setMenuBarVisibility(true)
    } else {
      mainWindow?.setFullScreen(true)
      mainWindow?.setMenuBarVisibility(false)
    }
  })
  globalShortcut.register('Esc', () => {
    // 是否全屏
    if (mainWindow?.isFullScreen()) {
      // mainWindow?.minimize();
      mainWindow?.setFullScreen(false)
      mainWindow?.setMenuBarVisibility(true)
    }
  })
  globalShortcut.register('CommandOrControl+F12', () => {
    mainWindow?.webContents.openDevTools({ mode: 'detach' })
  })
}

解决冲突

一般来说会在 mainWindow ready-to-show 的时候初始化快捷键,当然也可以在应用失去焦点(blur)的时候主动应用的注销快捷键,以避免和系统快捷键冲突。


  mainWindow.on('ready-to-show', () => {
    mainWindow.show()
    // 注册全局快捷键
    initGlobalShortcut(mainWindow)
  })

  mainWindow.on('blur', () => {
    // 失去焦点,注销快捷键
    globalShortcut.unregisterAll()
  })


欢迎访问:天问博客文章来源地址https://www.toymoban.com/news/detail-596791.html

到了这里,关于electron globalShortcut 快捷键与系统全局快捷键冲突的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 系列三十七、IDEA设置全局快捷键

     

    2024年01月15日
    浏览(32)
  • 在idea中shift+f6不可以重命名,快捷键冲突

    这种问题一般都是出现在win11用户的电脑上,在idea重命名快捷键中,发现不可以用,可能是因为idea本身的快捷键冲突,不过这种问题很少出现,另一种方式就是win11的系统更新后,电脑开始用新的输入法,然后引发的快捷键冲突问题,现在我来带大家修改一下 首先,先看一下

    2024年02月04日
    浏览(32)
  • windows自带win+shift+s截图快捷键没反应---与Onenote热键冲突--已解决

    (这里写自定义目录标题) 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 由于经常使用windows自带的win+shift+s快捷键进行屏幕截图,快捷方便,有一次使用Onenote2016做笔记时,再按快捷键截图,突然没反应了,下面是解决办法。 注:如果你的电脑没有

    2023年04月08日
    浏览(33)
  • 【开发工具】idea 的全局搜索快捷键(Ctrl+shift+F)失效

    当你发现在idea 中看到用于全局搜索的快捷键就是 Ctrl+shift+F,可是怎么按都不管用的时候,你就不要再执着于自己的操作继续狂点电脑按键了,因为可能根本就不是你的问题,而是微软的问题哟 !! 当我们在使用快捷键失效的时候,排除掉因为电脑太卡顿的原因,那应该就

    2024年02月04日
    浏览(33)
  • windows系统Typora快捷键

    较实用的快捷键总结如下 功能 快捷键 创建新文件 Ctrl + N 新窗户创建新文件 Ctrl + Shift + N 打开新文件 Ctrl + O 打开历史文件 Ctrl + P 重新打开关闭的文件 Ctrl + Shift + T 保存 Ctrl + S 另存为/复制 Ctrl + Shift + S 打开设置 Ctrl + , 关闭窗口 Ctrl + W 功能 快捷键 复制为 Markdown Ctrl + Shift +

    2024年01月18日
    浏览(27)
  • Mac系统Safari浏览器快捷键大全

    Command+L:快速进入地址栏,输入网址进行访问。 Command+T:新建一个选项卡。 Command+Shift+T:恢复最近关闭的选项卡。 Command+数字:选中相应的选项卡。 Command+左箭头/右箭头:在两个选项卡之间切换。 Command+上箭头:返回到当前页面的上一级页面。 Command+下箭头:进入当前页面

    2024年02月12日
    浏览(46)
  • 【Linux】Linux系统编程——Linux常用快捷键

    在 Linux 中,特别是在使用命令行界面时,有许多快捷键可以提高你的工作效率。以下是一些常用的快捷键: 命令行编辑 : Ctrl + A :移动光标到行首。 Ctrl + E :移动光标到行尾。 Ctrl + U :删除光标之前到行首的内容。 Ctrl + K :删除光标位置到行尾的内容。 Ctrl + W :删除光

    2024年01月22日
    浏览(49)
  • 苹果Mac系统快捷键 mac新手必看

    Mac中主要有五个修饰键,分别是Command,Control,Option,return和Shift。这四个键分别有自己的图案,他们经常出现在Mac应用程序中的菜单栏里,方便你随时学习新的快捷键。(如下图) control option/alt command shift return Command+Tab 任意情况下切换应用程序 - 向前循环 Shift+Command+Tab 切换

    2024年02月09日
    浏览(53)
  • mac 系统中vscode 返回上一次文件编辑位置快捷键

    mac 系统中vscode 返回上一次文件编辑位置快捷键 以下内容由chatgpt中文网 动态生成,助力开发找我

    2024年01月17日
    浏览(36)
  • mac android studio设置跟mac系统一样的快捷键

    mac版的android studio 跟mac系统的快捷键不一样,主要修改了下面几组操作,为了跟mac系统快捷键相同 setting-Keymap 搜索bottom 修改3个快捷键: cmd+↓ 设置让鼠标移动到屏幕最后面 shift+cmd+↓ 选中从当前位置到屏幕最下面 option+↓. 或者 end 滚动到屏幕最下方 // 因为默认的end距离右手比较

    2024年02月16日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包