rubickCenter / rubick

🔧 Electron based open source toolbox, free integration of rich plug-ins. 基于 electron 的开源工具箱,自由集成丰富插件。
https://rubickcenter.github.io/docs
MIT License
7.99k stars 837 forks source link

UI 插件 onPluginOut 钩子未被调用 #377

Closed V-YOP closed 4 months ago

V-YOP commented 5 months ago

描述一下这个bug onPluginOut 注册的函数在插件退出时未被调用。但在短时间内快速关闭和打开插件时其又能被正常调用,可能是因为在调用该钩子时窗口已经被销毁了?

环境: windows 10 企业版 22H2 x64

复现方式

  1. 在 preload 中注册 onPluginOut,在插件退出时弹出通知:
window.rubick.onPluginOut(() => {
  window.rubick.showNotification('my go')
})
  1. 按退格键退出插件,onPluginOut 钩子未被调用,没有通知
  2. 使用window.rubick.outPlugin退出插件,onPluginOut 钩子未被调用,没有通知
  3. 进入插件,然后在一瞬间按退格键退出并重新进入插件
  4. onPluginOut 正常被调用,有通知

image

预期行为

onPluginOut 钩子在插件退出时总是被调用。