| | |
| | | import { app, BrowserWindow, shell, ipcMain,Menu } from 'electron' |
| | | import { app, BrowserWindow, shell, ipcMain,Menu, IpcMainEvent } from 'electron' |
| | | import { release } from 'os' |
| | | import { join } from 'path' |
| | | // import updater from "../preload/autoUpdate.js" |
| | | import logger from '../preload/logger.js' |
| | | import fs from 'fs' |
| | | import iconv from 'iconv-lite' |
| | | //koa---- |
| | | import Koa from 'koa'; |
| | | import Router from 'koa-router'; |
| | | import { checkUpdate } from './appVersion.js'; |
| | | const koaBody = require('koa-body'); |
| | | const creatorKoa=(win)=>{ |
| | | const app = new Koa(); |
| | |
| | | frame:store.get('debug')===undefined?true:store.get('debug'),//关闭菜单栏 |
| | | fullscreen: true,// 开启默认全屏 |
| | | kiosk: true, |
| | | movable:false,// 关闭窗口移动 |
| | | |
| | | // autoHideMenuBar:store.get('debug'), |
| | | webPreferences: { |
| | | preload: splash, |
| | |
| | | logger.info(arg) |
| | | }) |
| | | }) |
| | | /** |
| | | * 版本更新检测 |
| | | */ |
| | | ipcMain.handle("check-update",(e:any)=>{ |
| | | // 获取发送通知的渲染进程窗口 |
| | | const currentWin = getWindowByEvent(e); |
| | | // 升级校验 |
| | | // checkUpdate(currentWin); |
| | | }); |
| | | |
| | | |
| | | /** |
| | | * 通过窗口事件获取发送者的窗口 |
| | | * @param event ipc发送窗口事件 |
| | | */ |
| | | function getWindowByEvent(event: IpcMainEvent): BrowserWindow { |
| | | const webContentsId = event.sender.id; |
| | | for (const currentWin of BrowserWindow.getAllWindows()) { |
| | | if (currentWin.webContents.id === webContentsId) { |
| | | return currentWin; |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | // 渲染端发送消息到主进程 |
| | | ipcMain.on("winClose",()=>{ |
| | | win?.close() |