JavaScript 添加窗口 (addWindow) 函数代码详解
addWindow(window) { this.windowStack.addWindow(window); // 将窗口添加到窗口栈中 if (this.applicationMenu) // 如果有应用程序菜单 this.applicationMenu.addWindow(window.browserWindow); // 将窗口的浏览器窗口添加到应用程序菜单中
window.once('window:loaded', () => { // 当窗口加载完毕时
this.autoUpdateManager && // 如果自动更新管理器存在
this.autoUpdateManager.emitUpdateAvailableEvent(window); // 发出更新可用事件
});
if (!window.isSpec) { // 如果窗口不是规格
const focusHandler = () => this.windowStack.touch(window); // 焦点处理程序将窗口触摸到窗口栈的顶部
const blurHandler = () => this.saveCurrentWindowOptions(false); // 模糊处理程序保存当前窗口选项
window.browserWindow.on('focus', focusHandler); // 当窗口获得焦点时
window.browserWindow.on('blur', blurHandler); // 当窗口失去焦点时
window.browserWindow.once('closed', () => { // 当窗口关闭时
this.windowStack.removeWindow(window); // 从窗口栈中删除窗口
window.browserWindow.removeListener('focus', focusHandler); // 移除窗口的焦点处理程序
window.browserWindow.removeListener('blur', blurHandler); // 移除窗口的模糊处理程序
});
window.browserWindow.webContents.once('did-finish-load', blurHandler); // 当窗口的web内容完成加载时
this.saveCurrentWindowOptions(false); // 保存当前窗口选项
}
}
原文地址: https://www.cveoy.top/t/topic/oU0B 著作权归作者所有。请勿转载和采集!