chore: upgrade electron to 41 and fix black screen on startup

This commit is contained in:
Memory
2026-04-26 12:41:00 +08:00
committed by GitHub
parent 09ed12c67f
commit 82436d2fbf
3 changed files with 1790 additions and 1617 deletions

View File

@@ -26,7 +26,7 @@
"telegram:dev": "node scripts/telegram.mjs dev",
"artifact": "node scripts/artifact.mjs",
"dev": "electron-vite dev",
"postinstall": "electron-builder install-app-deps && node node_modules/electron/install.js",
"postinstall": "electron-builder install-app-deps",
"build:win": "electron-vite build && electron-builder --publish never --win",
"build:win:dev": "pnpm run prepare:dev && electron-vite build && electron-builder --publish never --win",
"build:mac": "electron-vite build && electron-builder --publish never --mac",
@@ -38,8 +38,8 @@
"@electron-toolkit/utils": "^4.0.0",
"@types/d3": "^7.4.3",
"@types/plist": "^3.0.5",
"adm-zip": "^0.5.16",
"axios": "^1.14.0",
"adm-zip": "^0.5.17",
"axios": "^1.15.2",
"chokidar": "^5.0.0",
"croner": "^9.1.0",
"crypto-js": "^4.2.0",
@@ -48,13 +48,13 @@
"file-icon": "^6.0.0",
"file-icon-info": "^1.1.1",
"flag-icons": "^7.5.0",
"i18next": "^25.10.10",
"i18next": "^26.0.7",
"iconv-lite": "^0.7.2",
"js-yaml": "^4.1.1",
"plist": "^3.1.0",
"qrcode.react": "^4.2.0",
"sysproxy-rs": "file:src\\native\\sysproxy",
"validator": "^13.15.26",
"validator": "^13.15.35",
"webdav": "^5.9.0",
"ws": "^8.20.0",
"yaml": "^2.8.3"
@@ -67,59 +67,64 @@
"@electron-toolkit/eslint-config-ts": "^3.1.0",
"@electron-toolkit/tsconfig": "^2.0.0",
"@heroui/react": "^2.8.10",
"@tailwindcss/vite": "^4.2.2",
"@tailwindcss/vite": "^4.2.4",
"@types/adm-zip": "^0.5.8",
"@types/crypto-js": "^4.2.2",
"@types/express": "^5.0.6",
"@types/node": "^25.5.0",
"@types/node": "^25.6.0",
"@types/pubsub-js": "^1.8.6",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@types/validator": "^13.15.10",
"@types/ws": "^8.18.1",
"@typescript-eslint/eslint-plugin": "^8.57.2",
"@typescript-eslint/parser": "^8.57.2",
"@typescript-eslint/eslint-plugin": "^8.59.0",
"@typescript-eslint/parser": "^8.59.0",
"@vitejs/plugin-react": "^5.2.0",
"chart.js": "^4.5.1",
"cron-validator": "^1.4.0",
"dayjs": "^1.11.20",
"driver.js": "^1.4.0",
"electron": "37.10.0",
"electron": "^41.3.0",
"electron-builder": "26.0.12",
"electron-vite": "4.0.1",
"electron-window-state": "^5.0.3",
"eslint": "9.39.2",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-hooks": "^7.0.1",
"eslint-plugin-react-hooks": "^7.1.1",
"form-data": "^4.0.5",
"framer-motion": "12.23.26",
"lodash": "^4.17.23",
"meta-json-schema": "^1.19.21",
"lodash": "^4.18.1",
"meta-json-schema": "^1.19.24",
"monaco-yaml": "^5.4.1",
"nanoid": "^5.1.7",
"nanoid": "^5.1.9",
"next-themes": "^0.4.6",
"postcss": "^8.5.8",
"prettier": "^3.8.1",
"postcss": "^8.5.10",
"prettier": "^3.8.3",
"pubsub-js": "^1.9.5",
"react": "^19.2.4",
"react": "^19.2.5",
"react-chartjs-2": "^5.3.1",
"react-dom": "^19.2.4",
"react-dom": "^19.2.5",
"react-error-boundary": "^6.1.1",
"react-i18next": "^16.6.6",
"react-icons": "^5.6.0",
"react-markdown": "^10.1.0",
"react-monaco-editor": "^0.59.0",
"react-router-dom": "^7.13.2",
"react-virtuoso": "^4.18.3",
"react-router-dom": "^7.14.2",
"react-virtuoso": "^4.18.5",
"swr": "^2.4.1",
"tailwindcss": "^4.2.2",
"tailwindcss": "^4.2.4",
"tar": "^7.5.13",
"tsx": "^4.21.0",
"types-pac": "^1.0.3",
"typescript": "^5.9.3",
"vite": "^7.3.1",
"vite": "^7.3.2",
"vite-plugin-monaco-editor": "^1.1.0"
},
"packageManager": "pnpm@10.27.0"
"packageManager": "pnpm@10.27.0",
"pnpm": {
"onlyBuiltDependencies": [
"electron"
]
}
}

3351
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -48,7 +48,10 @@ export function setupPlatformSpecifics(): void {
app.relaunch = customRelaunch
}
if (process.platform === 'win32' && !exePath().startsWith('C')) {
// https://github.com/electron/electron/issues/43278
// https://github.com/electron/electron/issues/36698
const electronMajor = parseInt(process.versions.electron.split('.')[0], 10) || 0
if (process.platform === 'win32' && !exePath().startsWith('C') && electronMajor < 38) {
app.commandLine.appendSwitch('in-process-gpu')
}
}