Electron 36.0.0
Electron 36.0.0 がリリースされました! It includes upgrades to Chromium 136, V8 13.6, and Node 22.14.0.
Electron チームは、Electron 36.0.0 のリリース発表にワクワクしています! You can install it with npm via npm install electron@latest
or download it from our releases website. このリリースの詳細は続きをご覧ください。
If you have any feedback, please share it with us on Bluesky or Mastodon, or join our community Discord! バグや機能の要望は Electron の Issue トラッカー で報告できます。
注目すべき変更
Writing Tools Support
In Electron 36, you can enable macOS system-level features like Writing Tools (spelling and grammar), Autofill, and Services menu items in your context menus. To do so, pass a WebFrameMain instance into the frame
parameter for menu.popup()
.
import { BrowserWindow, Menu, WebFrameMain } from 'electron';
const currentWindow = BrowserWindow.getFocusedWindow();
const focusedFrame = currentWindow.webContents.focusedFrame;
const menu = Menu.buildFromTemplate([{ label: 'Copy', role: 'copy' }]);
menu.popup({
window: currentWindow,
frame: focusedFrame,
});
累積的変更
- Chromium
136.0.7103.48
- Node
22.14.0
- V8
13.6
Electron 36 upgrades Chromium from 134.0.6998.23
to 136.0.7103.48
, and V8 from 13.5
to 13.6
.
New Features and Improvements
- Added
BrowserWindow.isSnapped()
to indicate whether a given window has been arranged via Snap on Windows. #46226 - Added
WebContents.focusedFrame
to get the focused frame. - Fixed
WebContents.opener
to specify potentialnull
type. #45667 - Added
ffmpeg.dll
to delay load configuration. #46173 (及び 34, 35) - Added
nativeTheme.shouldUseDarkColorsForSystemIntegratedUI
to distinguish system and app theme. #46598 (及び 35) - Added
excludeUrls
towebRequest
filter and deprecated the use of empty arrays inurls
property. #44692 (及び 35) - Added support for Autofill, Writing Tools and Services macOS level menu items in context menus via the new
frame
option inmenu.popup
. #46350 - Added support for
system-context-menu
on Linux. #46399 - Improved ASAR integrity checks on Windows. #46537
- Improved performance of
desktopCapturer.getSources
when not requesting thumbnails on macOS. #46251 (及び 34, 35) - Removed 240 FPS limit when use shared texture OSR. #45669 (及び 35)
破壊的変更
Deprecated: NativeImage.getBitmap()
The NativeImage.getBitmap()
function is now deprecated and documented as an alias for NativeImage.toBitmap()
.
The two functions both return a newly-allocated copy of the bitmap and are functionally equivalent.
Deprecated: Extension methods and events on session
session.loadExtension
, session.removeExtension
, session.getExtension
,
session.getAllExtensions
, and the events extension-loaded
,
extension-unloaded
, and extension-ready
have all moved to the new
Extensions
object
accessible via the session.extensions
instance property.
Removed: quota
type syncable
in session.clearStorageData(options)
When calling session.clearStorageData(options)
, the options.quota
type
syncable
is no longer supported because it has been
removed
from upstream Chromium.
Deprecated: quota
property in session.clearStorageData(options)
When calling Session.clearStorageData(options)
, the options.quota
property is deprecated. Since the syncable
type was removed, there
is only type left -- 'temporary'
-- so specifying it is unnecessary.
Behavior Changed: GTK 4 is the default when running on GNOME
After an upstream change, GTK 4 is now the default when running on GNOME.
In rare cases, this may cause some applications or configurations to error with the following message:
Gtk-ERROR **: 11:30:38.382: GTK 2/3 symbols detected. Using GTK 2/3 and GTK 4 in the same process is not supported
Affected users can work around this by specifying the gtk-version
command-line flag:
$ electron --gtk-version=3 # or --gtk-version=2
The same can be done with the app.commandLine.appendSwitch
function.
Behavior Changed: app.commandLine
app.commandLine
will convert uppercases switches and arguments to lowercase.
app.commandLine
was only meant to handle Chromium switches (which aren't case-sensitive) and switches passed via app.commandLine
will not be passed down to any of the child processes.
If you were using app.commandLine
to parse app-specific command line arguments, you should do this via process.argv
.
33.x.y サポートの終了
プロジェクトの サポートポリシー に則り、Electron 33.x.y はサポート終了を迎えました。 開発者とアプリケーションは新しいバージョンの Electron にアップグレードすることを推奨します。
E36 (Apr'25) | E37 (Jun'25) | E38 (Aug'25) |
---|---|---|
36.x.y | 37.x.y | 38.x.y |
35.x.y | 36.x.y | 37.x.y |
34.x.y | 35.x.y | 36.x.y |
次回予告
短期的には、Chromium、Node、V8 といった Electron を構成する主要コンポーネントの開発に遅れないでチームが注力し続けるでしょう。
Electron の公開タイムラインはこちらで ご覧いただけます。
今後の変更についての詳細は、予定されている破壊的変更 のページをご覧ください。