Electron 39.0.0 发布,跨平台桌面应用开发工具
Electron 是一个使用 JavaScript、HTML 和 CSS 构建跨平台的桌面应用程序。它基于 Node.js 和 Chromium,被 Atom 编辑器和许多其他应用程序使用。Electron 兼容 Mac、Windows 和 Linux,可以构建出三个平台的应用程序。
Electron v39.0.0 现已发布,一些更新内容如下:
Stack Upgrades
- Chromium
142.0.7444.52 - Node
22.20.0 - V8
14.2
Breaking Changes
- 在
webContents.on('paint')事件的 offscreen shared texture info中添加了colorSpace。- 修改了
OffscreenSharedTexture的签名,提供统一handle以持有 native handle。#47315
- 修改了
- 修复了
window.open规范合规性问题,该问题导致它应该始终创建一个可调整大小的弹出窗口,但却没有创建。#47540
有关通过 Chromium 继承的重大更改,可参阅博客文章
Features
Additions
- 为 Offscreen Rendering 添加了支持 scRGB HDR 色彩空间的
RGBAF16输出格式。#48504 - 为macOS平台的
process.getSystemMemoryInfo()方法新增fileBacked和purgeable字段。#47628 - 在 macOS 上为托盘图标构造函数新增
guidTray支持,确保图标在多次启动后保持位置。#47838 - 新增
webFrameMain.fromFrameToken(processId, frameToken)法,可通过 frame token 获取WebFrameMain实例。 #47850 - 添加了方法以实现更精细的可访问性支持管理。#48625
- 在 Windows 和 macOS 平台新增对
app.getRecentDocuments()的支持 。 #45839 - 增加了对
USBDevice.configurations的支持。#47459 - 新增在 Linux 系统中通过
systemPreferences.getAccentColor获取系统强调色的功能。#48628 - 新增在 Windows 系统中通过
{get|set}AccentColor在窗口初始化后更改窗口强调色的功能。#47741 - 允许在给定会话中持久保存文件系统 API 授权状态。#48326
- 内部切换为使用
DIR_ASSETS替代DIR_MODULE/DIR_EXE定位资源,并新增可通过app.getPath查询的 “assets” 键。#47439 - 支持在非上下文隔离预加载中导入动态 ESM。#48488
Fixes
- 修复了
systemPreferences.getAccentColor导致颜色反转的问题。 #48624 - 修复了 Wayland 环境中调用
webContents.openDevTools({ mode: 'detach' })会导致崩溃的问题。 #48623 - 修复访问
webContents.session时崩溃的问题。#48344 - 修复了 inspector agent 尝试在 provisional frames 上评估时发生崩溃的问题。#48515
- 修复了从命令行传递功能参数
--enable-features=Feature:ParamA/Value时崩溃的问题。#48442
更新说明:https://github.com/electron/electron/releases/tag/v39.0.0