diff --git a/package.json b/package.json index c67a90b..64ccd00 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "china-telecom-app", "productName": "china-telecom-app", - "version": "1.1.0", + "version": "1.1.1", "description": "China Telecom App", "main": ".vite/build/main.js", "scripts": { diff --git a/src/index.ts b/src/index.ts index 2dfac4b..64cafe3 100644 --- a/src/index.ts +++ b/src/index.ts @@ -155,7 +155,9 @@ async function addTabAsync(tabGroup: TabGroup, menuItem: MenuItem, allowCloseTab const webview: Electron.WebviewTag = tab.webview as Electron.WebviewTag; listenWebviewTitleChange(webview, tab); + // 监听 webview 的 DOM 加载完成事件 tab.once('webview-dom-ready', () => { + // 设置 webview 的缩放比例 const webview: Electron.WebviewTag = tab.webview as Electron.WebviewTag; const defaultZoomFactor: number = webview.getZoomFactor(); console.log('Default zoom factor:', defaultZoomFactor); @@ -166,6 +168,18 @@ async function addTabAsync(tabGroup: TabGroup, menuItem: MenuItem, allowCloseTab } else { console.log('Default zoom factor is the same as the zoom factor:', zoomFactor); } + + // 监听 webview 的关闭事件 + webview.addEventListener('destroyed', (_event: Event) => { + console.log('Webview destroyed, closing tab:', tab.title); + tab.close(true); + }); + + // 监听 webview 的关闭事件(当页面调用 window.close() 时触发) + webview.addEventListener('close', (_event: Event) => { + console.log('Webview close event triggered, closing tab:', tab.title); + tab.close(true); + }); }); } });