devel/electron41: Update to 41.3.0

Changelog:
- https://github.com/electron/electron/releases/tag/v41.2.2
- https://github.com/electron/electron/releases/tag/v41.3.0

Reported by:	GitHub (watch releases)
This commit is contained in:
Hiroki Tagato
2026-04-26 17:47:11 +09:00
parent 439ad72612
commit 46e614a41b
61 changed files with 298 additions and 65 deletions
+1 -1
View File
@@ -226,7 +226,7 @@ SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false
# See ${WRKSRC}/electron/DEPS for CHROMIUM_VER
CHROMIUM_VER= 146.0.7680.188
# See ${WRKSRC}/electron/DEPS for NODE_VER
NODE_VER= 24.14.1
NODE_VER= 24.15.0
# See ${WRKSRC}/electron/DEPS for NAN_VER
NAN_VER= 675cefebca42410733da8a454c8d9391fcebfbc2
# See ${WRKSRC}/electron/DEPS for SQUIRREL_MAC_VER
+1 -1
View File
@@ -1,2 +1,2 @@
ELECTRON_VER= 41.2.1
ELECTRON_VER= 41.3.0
ELECTRON_VER_MAJOR= ${ELECTRON_VER:C/\..*//}
+7 -7
View File
@@ -1,4 +1,4 @@
TIMESTAMP = 1776597735
TIMESTAMP = 1777152067
SHA256 (electron/chromium-146.0.7680.188.tar.xz.0) = fe0dd625b47d1a0594b20d8c748da45c023da315b4a8f2fc3944b96149330cc6
SIZE (electron/chromium-146.0.7680.188.tar.xz.0) = 2000000000
SHA256 (electron/chromium-146.0.7680.188.tar.xz.1) = 3a0320e66c708c527dbc39a9e21051d6146e039a50b57209ec069e808369e6ce
@@ -341,12 +341,12 @@ SHA256 (electron/rust/crates/zerocopy-derive-0.7.35.crate) = fa4f8080344d4671fb4
SIZE (electron/rust/crates/zerocopy-derive-0.7.35.crate) = 37829
SHA256 (electron/yarn-4.12.0.tgz) = bd58d06826ce9542c4cd904fe10bab7bc718ea2cc39a45d9fbd15f2edb45761c
SIZE (electron/yarn-4.12.0.tgz) = 1056794
SHA256 (electron/electron41-41.2.1-node-modules.tar.xz) = 9ded0bbcd3c5db0b211a670695a5cd39b06240eb3cde395fcc8990702f45da14
SIZE (electron/electron41-41.2.1-node-modules.tar.xz) = 63583255
SHA256 (electron/electron-electron-v41.2.1_GH0.tar.gz) = ca1d8c95ec295f2945f6dc8cc0ddc4be6a2f38a2e661f4ab8e03f94ec2c0a83a
SIZE (electron/electron-electron-v41.2.1_GH0.tar.gz) = 17239327
SHA256 (electron/nodejs-node-v24.14.1_GH0.tar.gz) = dd9da50596e7b1c4edeb56daf0e81f57e1b61e43c36f40eadeee77be7d779e08
SIZE (electron/nodejs-node-v24.14.1_GH0.tar.gz) = 126384322
SHA256 (electron/electron41-41.3.0-node-modules.tar.xz) = 9ded0bbcd3c5db0b211a670695a5cd39b06240eb3cde395fcc8990702f45da14
SIZE (electron/electron41-41.3.0-node-modules.tar.xz) = 63583255
SHA256 (electron/electron-electron-v41.3.0_GH0.tar.gz) = d5394172ad19b0d251ad7e370295a305c64b2974187d2acfccbcb4ffe4cb9e14
SIZE (electron/electron-electron-v41.3.0_GH0.tar.gz) = 17096687
SHA256 (electron/nodejs-node-v24.15.0_GH0.tar.gz) = 5cfb169b21878f50876e0c6a77db1a5e40d733960232682bebb5e267246a2e80
SIZE (electron/nodejs-node-v24.15.0_GH0.tar.gz) = 126716937
SHA256 (electron/nodejs-nan-675cefebca42410733da8a454c8d9391fcebfbc2_GH0.tar.gz) = 3983c68f19ed75dd37dc228eab385093ae2533132730f253f0c3d19ff10788e3
SIZE (electron/nodejs-nan-675cefebca42410733da8a454c8d9391fcebfbc2_GH0.tar.gz) = 111323
SHA256 (electron/Squirrel-Squirrel.Mac-0e5d146ba13101a1302d59ea6e6e0b3cace4ae38_GH0.tar.gz) = f4ebb40a8d85dbb7ef02aa0571b2f8e22182c6d73b6992484a53c90047779d01
File diff suppressed because one or more lines are too long
@@ -0,0 +1,6 @@
{
"name": "electron",
"productName": "Electron",
"main": "main.js",
"type": "module"
}
@@ -0,0 +1,18 @@
{
"main": "index.js",
"types": "electron.d.ts",
"bin": {
"electron": "cli.js"
},
"scripts": {
"postinstall": "node install.js"
},
"dependencies": {
"@electron/get": "^2.0.0",
"@types/node": "^24.9.0",
"extract-zip": "^2.0.1"
},
"engines": {
"node": ">= 12.20.55"
}
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-app-path",
"main": "lib/index.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-command-line",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-context-bridge-mutability",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-cookie-app",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-default-menu",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-exit-closes-all-windows",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-first-party-sets-base",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-first-party-sets-command-line",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-ipc-main-listeners",
"main": "main.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-locale-check",
"main": "main.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-mixed-sandbox",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-net-log",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-protocol-name",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-quit-app",
"main": "main.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-relaunch",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-safe-storage",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-safe-storage",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-shared-dictionary-app",
"main": "main.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-singleton-data",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-singleton-userdata",
"main": "main.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-singleton",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-menu",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-menu",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-utility-process-env-app",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-utility-process-inherit-stderr",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-utility-process-inherit-stdout",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-window-all-closed",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-crash",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-node-options-utility-process",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-open-new-window-from-link",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-refresh-page",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-remote-control",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-self-module-paths",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-set-path",
"main": "main.js"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-xwindow-icon",
"main": "main.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-check-with-headers",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-check",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-initial-app",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-update-json",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-update-race",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-update-stack",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-update-triple-stack",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,5 @@
{
"name": "electron-test-update",
"version": "1.0.0",
"main": "./index.js"
}
@@ -0,0 +1,4 @@
{
"main": "main.mjs",
"type": "module"
}
@@ -0,0 +1,4 @@
{
"main": "index.mjs",
"type": "module"
}
@@ -0,0 +1,4 @@
{
"name": "electron-test-snapshot-items-available",
"main": "main.js"
}
@@ -1,4 +1,4 @@
--- components/password_manager/core/browser/password_manual_fallback_flow.cc.orig 2026-03-13 16:54:03 UTC
--- components/password_manager/core/browser/password_manual_fallback_flow.cc.orig 2026-04-25 21:25:43 UTC
+++ components/password_manager/core/browser/password_manual_fallback_flow.cc
@@ -46,7 +46,7 @@ std::u16string GetUsernameFromLabel(const std::u16stri
}
@@ -9,7 +9,7 @@
// Returns the password form corresponding to the `payload` data. In most
// cases there is only one such form stored, but having more than one or no
// forms is also possible. If there is more than one form, showing any of them
@@ -304,7 +304,7 @@ void PasswordManualFallbackFlow::DidAcceptSuggestion(
@@ -305,7 +305,7 @@ void PasswordManualFallbackFlow::DidAcceptSuggestion(
}
case autofill::SuggestionType::kViewPasswordDetails: {
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
@@ -18,7 +18,7 @@
std::optional<password_manager::PasswordForm> credentials =
GetCorrespondingPasswordForm(
suggestion.GetPayload<Suggestion::PasswordSuggestionDetails>(),
@@ -440,7 +440,7 @@ void PasswordManualFallbackFlow::EnsureCrossDomainPass
@@ -441,7 +441,7 @@ void PasswordManualFallbackFlow::EnsureCrossDomainPass
const Suggestion::PasswordSuggestionDetails& payload,
base::OnceClosure on_allowed) {
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
@@ -1,6 +1,6 @@
--- electron/BUILD.gn.orig 2026-04-15 14:10:25 UTC
--- electron/BUILD.gn.orig 2026-04-22 19:52:17 UTC
+++ electron/BUILD.gn
@@ -553,7 +553,7 @@ source_set("electron_lib") {
@@ -557,7 +557,7 @@ source_set("electron_lib") {
defines += [ "GDK_DISABLE_DEPRECATION_WARNINGS" ]
}
@@ -9,7 +9,7 @@
deps += [
"//components/crash/core/app",
"//components/crash/core/browser",
@@ -652,6 +652,12 @@ source_set("electron_lib") {
@@ -656,6 +656,12 @@ source_set("electron_lib") {
cflags_objcc = [ "-fobjc-weak" ]
}
}
@@ -22,7 +22,7 @@
if (is_linux) {
libs = [ "xshmfence" ]
deps += [
@@ -1237,7 +1243,7 @@ if (is_mac) {
@@ -1241,7 +1247,7 @@ if (is_mac) {
":electron_lib",
":electron_win32_resources",
":packed_resources",
@@ -31,7 +31,7 @@
"//content:sandbox_helper_win",
"//electron/buildflags",
"//third_party/electron_node:libnode",
@@ -1264,7 +1270,7 @@ if (is_mac) {
@@ -1268,7 +1274,7 @@ if (is_mac) {
public_deps = [ "//tools/v8_context_snapshot" ]
}
@@ -40,7 +40,7 @@
data_deps += [ "//components/crash/core/app:chrome_crashpad_handler" ]
}
@@ -1331,7 +1337,7 @@ if (is_mac) {
@@ -1335,7 +1341,7 @@ if (is_mac) {
configs += [ "//build/config/gcc:rpath_for_built_shared_libraries" ]
}
@@ -49,7 +49,7 @@
deps += [ "//sandbox/linux:chrome_sandbox" ]
}
}
@@ -1452,7 +1458,9 @@ dist_zip("electron_dist_zip") {
@@ -1456,7 +1462,9 @@ dist_zip("electron_dist_zip") {
]
}
@@ -1,4 +1,4 @@
--- electron/shell/browser/api/electron_api_web_contents.cc.orig 2026-04-15 14:10:25 UTC
--- electron/shell/browser/api/electron_api_web_contents.cc.orig 2026-04-22 19:52:17 UTC
+++ electron/shell/browser/api/electron_api_web_contents.cc
@@ -164,11 +164,11 @@
#include "ui/base/cocoa/defaults_utils.h"
@@ -41,7 +41,7 @@
// Update font settings.
static const gfx::FontRenderParams params(
gfx::GetFontRenderParams(gfx::FontRenderParamsQuery(), nullptr));
@@ -2830,13 +2830,13 @@ void WebContents::ForcefullyCrashRenderer() {
@@ -2837,13 +2837,13 @@ void WebContents::ForcefullyCrashRenderer() {
content::RenderProcessHost* rph = rwh->GetProcess();
if (rph) {
@@ -57,7 +57,7 @@
CrashDumpHungChildProcess(rph->GetProcess().Handle());
#endif
rph->Shutdown(content::RESULT_CODE_HUNG);
@@ -3540,7 +3540,7 @@ void WebContents::Focus() {
@@ -3547,7 +3547,7 @@ void WebContents::Focus() {
void WebContents::Focus() {
// Focusing on WebContents does not automatically focus the window on macOS
// and Linux, do it manually to match the behavior on Windows.
@@ -66,7 +66,7 @@
if (owner_window())
owner_window()->Focus(true);
#endif
@@ -4437,7 +4437,7 @@ ui::ImageModel WebContents::GetDevToolsWindowIcon() {
@@ -4444,7 +4444,7 @@ ui::ImageModel WebContents::GetDevToolsWindowIcon() {
}
#endif
@@ -1,4 +1,4 @@
--- electron/shell/browser/native_window_views.cc.orig 2026-04-15 14:10:25 UTC
--- electron/shell/browser/native_window_views.cc.orig 2026-04-22 19:52:17 UTC
+++ electron/shell/browser/native_window_views.cc
@@ -58,7 +58,7 @@
#include "ui/wm/core/shadow_types.h"
@@ -99,7 +99,7 @@
if (resizable_)
old_size_constraints_ = GetSizeConstraints();
#endif
@@ -1128,7 +1128,7 @@ bool NativeWindowViews::IsClosable() const {
@@ -1136,7 +1136,7 @@ bool NativeWindowViews::IsClosable() const {
return false;
}
return !(info.fState & MFS_DISABLED);
@@ -108,7 +108,7 @@
return true;
#endif
}
@@ -1168,7 +1168,7 @@ void NativeWindowViews::Center() {
@@ -1176,7 +1176,7 @@ void NativeWindowViews::Center() {
// for now to avoid breaking API contract, but should consider the long
// term plan for this aligning with upstream.
void NativeWindowViews::Center() {
@@ -117,7 +117,7 @@
auto display =
display::Screen::Get()->GetDisplayNearestWindow(GetNativeWindow());
gfx::Rect window_bounds_in_screen = display.work_area();
@@ -1272,7 +1272,7 @@ void NativeWindowViews::SetBackgroundColor(SkColor bac
@@ -1280,7 +1280,7 @@ void NativeWindowViews::SetBackgroundColor(SkColor bac
InvalidateRect(GetAcceleratedWidget(), nullptr, 1);
#endif
SkColor compositor_color = background_color;
@@ -126,7 +126,7 @@
// Widget background needs to stay transparent for CSD shadow regions.
LinuxFrameLayout* frame_layout = GetLinuxFrameLayout();
const bool uses_csd =
@@ -1394,7 +1394,7 @@ void NativeWindowViews::SetMenu(ElectronMenuModel* men
@@ -1402,7 +1402,7 @@ void NativeWindowViews::SetMenu(ElectronMenuModel* men
}
void NativeWindowViews::SetMenu(ElectronMenuModel* menu_model) {
@@ -135,7 +135,7 @@
// Remove global menu bar.
if (global_menu_bar_ && menu_model == nullptr) {
global_menu_bar_.reset();
@@ -1450,7 +1450,7 @@ void NativeWindowViews::SetParentWindow(NativeWindow*
@@ -1458,7 +1458,7 @@ void NativeWindowViews::SetParentWindow(NativeWindow*
void NativeWindowViews::SetParentWindow(NativeWindow* parent) {
NativeWindow::SetParentWindow(parent);
@@ -144,7 +144,7 @@
if (x11_util::IsX11()) {
auto* connection = x11::Connection::Get();
connection->SetProperty(
@@ -1512,7 +1512,7 @@ void NativeWindowViews::SetProgressBar(double progress
@@ -1520,7 +1520,7 @@ void NativeWindowViews::SetProgressBar(double progress
NativeWindow::ProgressState state) {
#if BUILDFLAG(IS_WIN)
taskbar_host_.SetProgressBar(GetAcceleratedWidget(), progress, state);
@@ -153,7 +153,7 @@
if (unity::IsRunning()) {
unity::SetProgressFraction(progress);
}
@@ -1638,7 +1638,7 @@ content::DesktopMediaID NativeWindowViews::GetDesktopM
@@ -1646,7 +1646,7 @@ content::DesktopMediaID NativeWindowViews::GetDesktopM
#if BUILDFLAG(IS_WIN)
window_handle =
reinterpret_cast<content::DesktopMediaID::Id>(accelerated_widget);
@@ -162,7 +162,7 @@
window_handle = static_cast<uint32_t>(accelerated_widget);
#endif
aura::WindowTreeHost* const host =
@@ -1768,7 +1768,7 @@ void NativeWindowViews::SetIcon(HICON window_icon, HIC
@@ -1776,7 +1776,7 @@ void NativeWindowViews::SetIcon(HICON window_icon, HIC
SendMessage(hwnd, WM_SETICON, ICON_BIG,
reinterpret_cast<LPARAM>(app_icon_.get()));
}
@@ -171,7 +171,7 @@
void NativeWindowViews::SetIcon(const gfx::ImageSkia& icon) {
auto* tree_host = views::DesktopWindowTreeHostLinux::GetHostForWidget(
GetAcceleratedWidget());
@@ -1889,7 +1889,7 @@ bool NativeWindowViews::CanMinimize() const {
@@ -1897,7 +1897,7 @@ bool NativeWindowViews::CanMinimize() const {
bool NativeWindowViews::CanMinimize() const {
#if BUILDFLAG(IS_WIN)
return minimizable_;
@@ -180,7 +180,7 @@
return true;
#endif
}
@@ -1931,7 +1931,7 @@ std::unique_ptr<views::FrameView> NativeWindowViews::C
@@ -1939,7 +1939,7 @@ std::unique_ptr<views::FrameView> NativeWindowViews::C
#endif
}
@@ -189,7 +189,7 @@
LinuxFrameLayout* NativeWindowViews::GetLinuxFrameLayout() {
auto* ncv = widget()->non_client_view();
if (!ncv)
@@ -1951,7 +1951,7 @@ void NativeWindowViews::HandleKeyboardEvent(
@@ -1959,7 +1959,7 @@ void NativeWindowViews::HandleKeyboardEvent(
if (widget_destroyed_)
return;
@@ -198,7 +198,7 @@
if (event.windows_key_code == ui::VKEY_BROWSER_BACK)
NotifyWindowExecuteAppCommand(kBrowserBackward);
else if (event.windows_key_code == ui::VKEY_BROWSER_FORWARD)
@@ -1970,7 +1970,7 @@ void NativeWindowViews::OnMouseEvent(ui::MouseEvent* e
@@ -1978,7 +1978,7 @@ void NativeWindowViews::OnMouseEvent(ui::MouseEvent* e
// Alt+Click should not toggle menu bar.
root_view_.ResetAltState();
@@ -1,4 +1,4 @@
--- electron/shell/common/node_bindings.cc.orig 2026-03-05 10:29:21 UTC
--- electron/shell/common/node_bindings.cc.orig 2026-04-22 19:52:17 UTC
+++ electron/shell/common/node_bindings.cc
@@ -51,7 +51,7 @@
#include "third_party/electron_node/src/debug_utils.h"
@@ -27,7 +27,7 @@
electron::crash_keys::SetCrashKey("electron.v8-oom.is_heap_oom",
std::to_string(details.is_heap_oom));
if (location) {
@@ -639,7 +639,7 @@ void NodeBindings::Initialize(v8::Isolate* const isola
@@ -662,7 +662,7 @@ void NodeBindings::Initialize(v8::Isolate* const isola
TRACE_EVENT0("electron", "NodeBindings::Initialize");
// Open node's error reporting system for browser process.
@@ -1,4 +1,4 @@
--- electron/spec/api-app-spec.ts.orig 2026-03-17 08:46:36 UTC
--- electron/spec/api-app-spec.ts.orig 2026-04-22 19:52:17 UTC
+++ electron/spec/api-app-spec.ts
@@ -129,11 +129,11 @@ describe('app module', () => {
});
@@ -86,7 +86,16 @@
// We can't expect particular app names here, but these protocols should
// at least have _something_ registered. Except on our Linux CI
// environment apparently.
@@ -1455,7 +1455,7 @@ describe('app module', () => {
@@ -1454,7 +1454,7 @@ describe('app module', () => {
expect(app.getApplicationNameForProtocol('bogus-protocol://')).to.equal('');
});
- ifdescribe(process.platform === 'linux')('on Linux with mocked XDG dirs', () => {
+ ifdescribe(process.platform === 'linux' || process.platform === 'freebsd')('on Linux with mocked XDG dirs', () => {
const fixtureApp = path.join(fixturesPath, 'api', 'protocol-name');
const desktopFileId = 'mock-browser.desktop';
const mockScheme = 'mockproto';
@@ -1581,7 +1581,7 @@ describe('app module', () => {
});
});
@@ -95,7 +104,7 @@
it('returns promise rejection for a bogus protocol', async function () {
await expect(
app.getApplicationInfoForProtocol('bogus-protocol://')
@@ -1528,7 +1528,7 @@ describe('app module', () => {
@@ -1654,7 +1654,7 @@ describe('app module', () => {
});
// FIXME Get these specs running on Linux CI
@@ -104,7 +113,7 @@
const iconPath = path.join(__dirname, 'fixtures/assets/icon.ico');
const sizes = {
small: 16,
@@ -1610,7 +1610,7 @@ describe('app module', () => {
@@ -1736,7 +1736,7 @@ describe('app module', () => {
expect(entry.memory).to.have.property('privateBytes').that.is.greaterThan(0);
}
@@ -113,7 +122,7 @@
expect(entry.sandboxed).to.be.a('boolean');
}
@@ -1684,7 +1684,7 @@ describe('app module', () => {
@@ -1810,7 +1810,7 @@ describe('app module', () => {
it('succeeds with complete GPUInfo', async () => {
const completeInfo = await getGPUInfo('complete');
@@ -122,7 +131,7 @@
// For linux and macOS complete info is same as basic info
await verifyBasicGPUInfo(completeInfo);
const basicInfo = await getGPUInfo('basic');
@@ -1708,7 +1708,7 @@ describe('app module', () => {
@@ -1834,7 +1834,7 @@ describe('app module', () => {
});
});
@@ -1,4 +1,4 @@
--- electron/spec/api-browser-window-spec.ts.orig 2026-04-15 14:10:25 UTC
--- electron/spec/api-browser-window-spec.ts.orig 2026-04-22 19:52:17 UTC
+++ electron/spec/api-browser-window-spec.ts
@@ -69,7 +69,7 @@ describe('BrowserWindow module', () => {
}).not.to.throw();
@@ -72,7 +72,7 @@
it('checks normal bounds when minimized', async () => {
const bounds = w.getBounds();
const minimize = once(w, 'minimize');
@@ -3164,7 +3164,7 @@ describe('BrowserWindow module', () => {
@@ -3191,7 +3191,7 @@ describe('BrowserWindow module', () => {
describe('BrowserWindow.setOpacity(opacity)', () => {
afterEach(closeAllWindows);
@@ -81,7 +81,7 @@
it('make window with initial opacity', () => {
const w = new BrowserWindow({ show: false, opacity: 0.5 });
expect(w.getOpacity()).to.equal(0.5);
@@ -3190,7 +3190,7 @@ describe('BrowserWindow module', () => {
@@ -3217,7 +3217,7 @@ describe('BrowserWindow module', () => {
});
});
@@ -90,7 +90,7 @@
it('sets 1 regardless of parameter', () => {
const w = new BrowserWindow({ show: false });
w.setOpacity(0);
@@ -3401,7 +3401,7 @@ describe('BrowserWindow module', () => {
@@ -3428,7 +3428,7 @@ describe('BrowserWindow module', () => {
expect(overlayRectPreMax.height).to.equal(size);
// 'maximize' event is not emitted on Linux in CI.
@@ -99,7 +99,7 @@
const maximize = once(w, 'maximize');
w.show();
w.maximize();
@@ -3467,7 +3467,7 @@ describe('BrowserWindow module', () => {
@@ -3494,7 +3494,7 @@ describe('BrowserWindow module', () => {
expect(preMaxHeight).to.equal(size);
// 'maximize' event is not emitted on Linux in CI.
@@ -108,7 +108,7 @@
const maximize = once(w, 'maximize');
w.show();
w.maximize();
@@ -4160,7 +4160,7 @@ describe('BrowserWindow module', () => {
@@ -4187,7 +4187,7 @@ describe('BrowserWindow module', () => {
expect(test.nodeTimers).to.equal(true);
expect(test.nodeUrl).to.equal(true);
@@ -117,7 +117,7 @@
expect(test.creationTime).to.be.null('creation time');
expect(test.systemMemoryInfo).to.be.null('system memory info');
} else {
@@ -4665,7 +4665,7 @@ describe('BrowserWindow module', () => {
@@ -4692,7 +4692,7 @@ describe('BrowserWindow module', () => {
});
});
@@ -126,7 +126,7 @@
afterEach(closeAllWindows);
it('emits an event when window is maximized', async () => {
const w = new BrowserWindow({ show: false });
@@ -4936,7 +4936,7 @@ describe('BrowserWindow module', () => {
@@ -4963,7 +4963,7 @@ describe('BrowserWindow module', () => {
// TODO(zcbenz):
// This test does not run on Linux CI. See:
// https://github.com/electron/electron/issues/28699
@@ -135,7 +135,7 @@
const w = new BrowserWindow({});
const maximize = once(w, 'maximize');
w.maximize();
@@ -4951,7 +4951,7 @@ describe('BrowserWindow module', () => {
@@ -4978,7 +4978,7 @@ describe('BrowserWindow module', () => {
expect(w.isMaximized()).to.equal(true);
});
@@ -144,7 +144,7 @@
const w = new BrowserWindow({ show: false });
w.show();
@@ -4974,7 +4974,7 @@ describe('BrowserWindow module', () => {
@@ -5001,7 +5001,7 @@ describe('BrowserWindow module', () => {
});
// TODO(dsanders11): Enable once maximize event works on Linux again on CI
@@ -153,7 +153,7 @@
afterEach(closeAllWindows);
it('should show the window if it is not currently shown', async () => {
const w = new BrowserWindow({ show: false });
@@ -5011,7 +5011,7 @@ describe('BrowserWindow module', () => {
@@ -5038,7 +5038,7 @@ describe('BrowserWindow module', () => {
// TODO(dsanders11): Enable once minimize event works on Linux again.
// See https://github.com/electron/electron/issues/28699
@@ -162,7 +162,7 @@
const w = new BrowserWindow();
const minimize = once(w, 'minimize');
w.minimize();
@@ -5497,7 +5497,7 @@ describe('BrowserWindow module', () => {
@@ -5524,7 +5524,7 @@ describe('BrowserWindow module', () => {
});
// On Linux there is no "resizable" property of a window.
@@ -171,7 +171,7 @@
const w = new BrowserWindow({ show: false });
expect(w.resizable).to.be.true('resizable');
@@ -5751,7 +5751,7 @@ describe('BrowserWindow module', () => {
@@ -5778,7 +5778,7 @@ describe('BrowserWindow module', () => {
});
});
@@ -180,7 +180,7 @@
// Not implemented on Linux.
afterEach(closeAllWindows);
@@ -7001,7 +7001,7 @@ describe('BrowserWindow module', () => {
@@ -7028,7 +7028,7 @@ describe('BrowserWindow module', () => {
describe('"transparent" option', () => {
afterEach(closeAllWindows);
@@ -1,4 +1,4 @@
--- electron/spec/api-web-contents-spec.ts.orig 2026-04-15 14:10:25 UTC
--- electron/spec/api-web-contents-spec.ts.orig 2026-04-22 19:52:17 UTC
+++ electron/spec/api-web-contents-spec.ts
@@ -1266,7 +1266,7 @@ describe('webContents module', () => {
// back to OpenFolder() which does a blocking DirectoryExists() on the UI
@@ -9,7 +9,7 @@
const w = new BrowserWindow({ show: false });
await openDevTools(w);
@@ -3013,7 +3013,7 @@ describe('webContents module', () => {
@@ -3023,7 +3023,7 @@ describe('webContents module', () => {
});
// TODO(codebytere): OOPIF printing is disabled on Linux at the moment due to crashes.
@@ -1,4 +1,4 @@
--- electron/spec/chromium-spec.ts.orig 2026-04-15 14:10:25 UTC
--- electron/spec/chromium-spec.ts.orig 2026-04-22 19:52:17 UTC
+++ electron/spec/chromium-spec.ts
@@ -475,13 +475,13 @@ describe('command line switches', () => {
it('should not set an invalid locale', async () => testLocale('asdfkl', `${currentLocale}|${currentSystemLocale}|${currentPreferredLanguages}`));
@@ -18,7 +18,7 @@
});
describe('--remote-debugging-pipe switch', () => {
@@ -3479,12 +3479,12 @@ describe('font fallback', () => {
@@ -3502,12 +3502,12 @@ describe('font fallback', () => {
expect(fonts[0].familyName).to.equal('Arial');
} else if (process.platform === 'darwin') {
expect(fonts[0].familyName).to.equal('Helvetica');
@@ -33,7 +33,7 @@
const html = `
<html lang="ja-JP">
<head>
@@ -4037,7 +4037,7 @@ describe('paste execCommand', () => {
@@ -4060,7 +4060,7 @@ describe('paste execCommand', () => {
});
});