git: b632e17d745c - main - devel/electron44: Update to 44.4.3

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Sun, 20 Sep 2026 12:34:44 UTC
The branch main has been updated by tagattie:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b632e17d745cbe5c4a1ea411cf8f88043058aae0

commit b632e17d745cbe5c4a1ea411cf8f88043058aae0
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2026-09-20 12:33:43 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2026-09-20 12:34:36 +0000

    devel/electron44: Update to 44.4.3
    
    Changelog:
    - https://github.com/electron/electron/releases/tag/v44.4.2
    - https://github.com/electron/electron/releases/tag/v44.4.3
    
    Reported by:    GitHub (watch releases)
---
 devel/electron44/Makefile                          | 18 +++++++++--
 devel/electron44/Makefile.version                  |  2 +-
 devel/electron44/distinfo                          | 22 +++++++------
 ...nt_browser_web__contents_web__contents__impl.cc |  8 ++---
 ...ctron_shell_browser_osr_osr__video__consumer.cc | 13 ++++++--
 .../files/patch-electron_spec_api-app-spec.ts      | 32 +++++++++----------
 .../patch-electron_spec_api-browser-window-spec.ts | 36 +++++++++++-----------
 .../files/patch-electron_spec_api-net-spec.ts      |  4 +--
 .../files/patch-electron_spec_api-protocol-spec.ts | 11 -------
 .../files/patch-electron_spec_chromium-spec.ts     |  4 +--
 ...mmand__buffer_service_shared__context__state.cc |  8 ++---
 .../patch-third__party_blink_common_features.cc    |  4 +--
 ...blink_renderer_core_exported_web__view__impl.cc |  8 ++---
 ...derer_platform_runtime__enabled__features.json5 |  8 ++---
 14 files changed, 96 insertions(+), 82 deletions(-)

diff --git a/devel/electron44/Makefile b/devel/electron44/Makefile
index 9b0e36767bc9..0202afe7ac44 100644
--- a/devel/electron44/Makefile
+++ b/devel/electron44/Makefile
@@ -4,12 +4,15 @@ DISTVERSION=	${ELECTRON_VER}
 PULSEMV=	16
 PULSEV=		${PULSEMV}.1
 CATEGORIES=	devel
-MASTER_SITES=	https://commondatastorage.googleapis.com/chromium-browser-official/:chromium \
+MASTER_SITES=	https://github.com/tagattie/FreeBSD-Electron/releases/download/v44.4.3/:chromium \
 		https://freedesktop.org/software/pulseaudio/releases/:pulseaudio
 PKGNAMESUFFIX=	${ELECTRON_VER_MAJOR}
-DISTFILES=	chromium-${CHROMIUM_VER}-lite${EXTRACT_SUFX}:chromium \
+DISTFILES=	chromium-${CHROMIUM_VER}${EXTRACT_SUFX}.0:chromium \
+		chromium-${CHROMIUM_VER}${EXTRACT_SUFX}.1:chromium \
+		chromium-${CHROMIUM_VER}${EXTRACT_SUFX}.2:chromium \
 		pulseaudio-${PULSEV}.tar.gz:pulseaudio
 DIST_SUBDIR=	${PORTNAME}
+EXTRACT_ONLY=	${DISTFILES:C/:[^:]+$//:C/chromium-${CHROMIUM_VER}${EXTRACT_SUFX}\.[0-9]//}
 
 .if make(makesum)
 MASTER_SITES+=	https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-${ESBUILD_VER}.tgz?dummy=/:esbuild_arm64 \
@@ -232,7 +235,7 @@ SNDIO_VARS=		GN_ARGS+=use_sndio=true
 SNDIO_VARS_OFF=		GN_ARGS+=use_sndio=false
 
 # See ${WRKSRC}/electron/DEPS for CHROMIUM_VER
-CHROMIUM_VER=			152.0.7977.78
+CHROMIUM_VER=			152.0.7977.130
 # See ${WRKSRC}/electron/DEPS for NODE_VER
 NODE_VER=			24.21.0
 # See ${WRKSRC}/electron/DEPS for NAN_VER
@@ -307,6 +310,15 @@ pre-everything::
 	@${ECHO_MSG} "and around ${WANTSPACE} of free disk space."
 	@${ECHO_MSG}
 
+pre-extract:
+# Chromium source tarball is splitted into multiple fragments. Concatenate them
+# into a single one and manually extract it into WRKDIR.
+	@${CAT} ${DISTDIR}/${DIST_SUBDIR}/chromium-${CHROMIUM_VER}${EXTRACT_SUFX}.? > \
+		${WRKDIR}/chromium-${CHROMIUM_VER}${EXTRACT_SUFX}
+	@cd ${WRKDIR} && \
+	${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \
+		chromium-${CHROMIUM_VER}${EXTRACT_SUFX} ${EXTRACT_AFTER_ARGS}
+
 post-extract:
 	# Move extracted sources to appropriate locations
 	${MV} ${WRKDIR}/chromium-${CHROMIUM_VER} \
diff --git a/devel/electron44/Makefile.version b/devel/electron44/Makefile.version
index d1dcf4c0b6d8..8b066b011c71 100644
--- a/devel/electron44/Makefile.version
+++ b/devel/electron44/Makefile.version
@@ -1,2 +1,2 @@
-ELECTRON_VER=		44.4.1
+ELECTRON_VER=		44.4.3
 ELECTRON_VER_MAJOR=	${ELECTRON_VER:C/\..*//}
diff --git a/devel/electron44/distinfo b/devel/electron44/distinfo
index 80759840e789..3f1bad6ee941 100644
--- a/devel/electron44/distinfo
+++ b/devel/electron44/distinfo
@@ -1,6 +1,10 @@
-TIMESTAMP = 1789606446
-SHA256 (electron/chromium-152.0.7977.78-lite.tar.xz) = 8280281120d8306f97905fcb49ff63efd4ecdccbae76e4e37c5315b48b354baf
-SIZE (electron/chromium-152.0.7977.78-lite.tar.xz) = 1774874760
+TIMESTAMP = 1789817482
+SHA256 (electron/chromium-152.0.7977.130.tar.xz.0) = 42a48cd19ce2b96ff5ec89469f8e900720ff6ea62cdac01a5a386dd136b66f9b
+SIZE (electron/chromium-152.0.7977.130.tar.xz.0) = 2000000000
+SHA256 (electron/chromium-152.0.7977.130.tar.xz.1) = 4fe0c299ecc9806c89e7843a63ddafef896a745592906b39a583777ed18d7078
+SIZE (electron/chromium-152.0.7977.130.tar.xz.1) = 2000000000
+SHA256 (electron/chromium-152.0.7977.130.tar.xz.2) = 5c97b3d57a3d07121dfb1e13297341e987e3fc5f93122cdd7b39a5820d1c462e
+SIZE (electron/chromium-152.0.7977.130.tar.xz.2) = 981056244
 SHA256 (electron/pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92
 SIZE (electron/pulseaudio-16.1.tar.gz) = 2763111
 SHA256 (electron/esbuild-freebsd-arm64-0.25.1.tgz) = ef95ca9f5d3e7406d93912b4d8d063222a662a34ca24d45110d7e9d49b79c31b
@@ -417,12 +421,12 @@ SHA256 (electron/rust/crates/zmij-1.0.21.crate) = b8848ee67ecc8aedbaf3e4122217af
 SIZE (electron/rust/crates/zmij-1.0.21.crate) = 26665
 SHA256 (electron/yarn-4.12.0.tgz) = bd58d06826ce9542c4cd904fe10bab7bc718ea2cc39a45d9fbd15f2edb45761c
 SIZE (electron/yarn-4.12.0.tgz) = 1056794
-SHA256 (electron/electron44-44.4.1-node-modules-arm64.tar.xz) = a2817712b31e19cf0ea6504354ede4a32a30c60f3b917cbee3544566a2444ba8
-SIZE (electron/electron44-44.4.1-node-modules-arm64.tar.xz) = 75455077
-SHA256 (electron/electron44-44.4.1-node-modules-x64.tar.xz) = c2e61dbb16cd4cac6a6fddf6a3e09b7ad693be606371cf29322bc63842fb04d0
-SIZE (electron/electron44-44.4.1-node-modules-x64.tar.xz) = 83829057
-SHA256 (electron/electron-electron-v44.4.1_GH0.tar.gz) = 17ef01a20540b008a24fa92baecf7218bf95e41dc8e7b8e7e4f1207587e8f977
-SIZE (electron/electron-electron-v44.4.1_GH0.tar.gz) = 19768064
+SHA256 (electron/electron44-44.4.3-node-modules-arm64.tar.xz) = a2817712b31e19cf0ea6504354ede4a32a30c60f3b917cbee3544566a2444ba8
+SIZE (electron/electron44-44.4.3-node-modules-arm64.tar.xz) = 75455077
+SHA256 (electron/electron44-44.4.3-node-modules-x64.tar.xz) = c2e61dbb16cd4cac6a6fddf6a3e09b7ad693be606371cf29322bc63842fb04d0
+SIZE (electron/electron44-44.4.3-node-modules-x64.tar.xz) = 83829057
+SHA256 (electron/electron-electron-v44.4.3_GH0.tar.gz) = eba00fb67adf7e4aa7923a74170253271c7d7a31b7bcb09d329e7eaa53e181d2
+SIZE (electron/electron-electron-v44.4.3_GH0.tar.gz) = 19772949
 SHA256 (electron/nodejs-node-v24.21.0_GH0.tar.gz) = a00e45375fe01977235ddb81ab6ac12f2f90161077cfbc2f77b8aaea4f75f8f9
 SIZE (electron/nodejs-node-v24.21.0_GH0.tar.gz) = 129712318
 SHA256 (electron/nodejs-nan-675cefebca42410733da8a454c8d9391fcebfbc2_GH0.tar.gz) = 3983c68f19ed75dd37dc228eab385093ae2533132730f253f0c3d19ff10788e3
diff --git a/devel/electron44/files/patch-content_browser_web__contents_web__contents__impl.cc b/devel/electron44/files/patch-content_browser_web__contents_web__contents__impl.cc
index b82521f3e419..f8cd48cb0077 100644
--- a/devel/electron44/files/patch-content_browser_web__contents_web__contents__impl.cc
+++ b/devel/electron44/files/patch-content_browser_web__contents_web__contents__impl.cc
@@ -1,6 +1,6 @@
---- content/browser/web_contents/web_contents_impl.cc.orig	2026-09-01 23:50:56 UTC
+--- content/browser/web_contents/web_contents_impl.cc.orig	2026-09-19 11:36:54 UTC
 +++ content/browser/web_contents/web_contents_impl.cc
-@@ -1372,7 +1372,7 @@ WebContentsImpl::WebContentsImpl(BrowserContext* brows
+@@ -1379,7 +1379,7 @@ WebContentsImpl::WebContentsImpl(BrowserContext* brows
        SlowWebPreferenceCache::GetInstance());
    renderer_preferences_.caret_blink_interval =
        native_theme->caret_blink_interval();
@@ -9,7 +9,7 @@
    renderer_preferences_.use_overlay_scrollbar =
        native_theme->use_overlay_scrollbar();
  #endif
-@@ -12479,7 +12479,7 @@ void WebContentsImpl::OnNativeThemeUpdated(ui::NativeT
+@@ -12486,7 +12486,7 @@ void WebContentsImpl::OnNativeThemeUpdated(ui::NativeT
    HandleColorRelatedStateChanges();
  
    const auto caret_blink_interval = observed_theme->caret_blink_interval();
@@ -18,7 +18,7 @@
    const auto use_overlay_scrollbar = observed_theme->use_overlay_scrollbar();
  #endif
    bool renderer_preference_changed = false;
-@@ -12487,7 +12487,7 @@ void WebContentsImpl::OnNativeThemeUpdated(ui::NativeT
+@@ -12494,7 +12494,7 @@ void WebContentsImpl::OnNativeThemeUpdated(ui::NativeT
      renderer_preferences_.caret_blink_interval = caret_blink_interval;
      renderer_preference_changed = true;
    }
diff --git a/devel/electron44/files/patch-electron_shell_browser_osr_osr__video__consumer.cc b/devel/electron44/files/patch-electron_shell_browser_osr_osr__video__consumer.cc
index bae2a2d71804..219faeb19484 100644
--- a/devel/electron44/files/patch-electron_shell_browser_osr_osr__video__consumer.cc
+++ b/devel/electron44/files/patch-electron_shell_browser_osr_osr__video__consumer.cc
@@ -1,6 +1,15 @@
---- electron/shell/browser/osr/osr_video_consumer.cc.orig	2026-06-29 20:35:15 UTC
+--- electron/shell/browser/osr/osr_video_consumer.cc.orig	2026-09-18 15:43:03 UTC
 +++ electron/shell/browser/osr/osr_video_consumer.cc
-@@ -132,7 +132,7 @@ void OffScreenVideoConsumer::OnFrameCaptured(
+@@ -49,7 +49,7 @@ bool IsPlatformSharedTextureHandle(const gfx::GpuMemor
+   return handle.type == gfx::DXGI_SHARED_HANDLE;
+ #elif BUILDFLAG(IS_APPLE)
+   return handle.type == gfx::IO_SURFACE_BUFFER;
+-#elif BUILDFLAG(IS_LINUX)
++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
+   return handle.type == gfx::NATIVE_PIXMAP;
+ #else
+   return false;
+@@ -160,7 +160,7 @@ void OffScreenVideoConsumer::OnFrameCaptured(
  #elif BUILDFLAG(IS_APPLE)
      texture.shared_texture_handle =
          reinterpret_cast<uintptr_t>(gmb_handle.io_surface().get());
diff --git a/devel/electron44/files/patch-electron_spec_api-app-spec.ts b/devel/electron44/files/patch-electron_spec_api-app-spec.ts
index b118a707bd96..e120b4fa0fda 100644
--- a/devel/electron44/files/patch-electron_spec_api-app-spec.ts
+++ b/devel/electron44/files/patch-electron_spec_api-app-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/api-app-spec.ts.orig	2026-08-31 00:54:19 UTC
+--- electron/spec/api-app-spec.ts.orig	2026-09-18 15:43:03 UTC
 +++ electron/spec/api-app-spec.ts
 @@ -123,7 +123,7 @@ describe('app module', () => {
      });
@@ -83,10 +83,10 @@
  
 -  ifdescribe(process.platform !== 'linux')('accessibility support functionality', () => {
 +  ifdescribe(process.platform !== 'linux' && process.platform !== 'freebsd')('accessibility support functionality', () => {
-     it('is mutable', () => {
-       const values = [false, true, false];
-       const setters: Array<(arg: boolean) => void> = [
-@@ -1375,7 +1375,7 @@ describe('app module', () => {
+     // These tests toggle a process-wide AXMode. Turn it back off so the rest of
+     // the suite doesn't run with renderer accessibility enabled.
+     afterEach(() => {
+@@ -1381,7 +1381,7 @@ describe('app module', () => {
      });
    });
  
@@ -95,7 +95,7 @@
      let w: BrowserWindow;
  
      before(function () {
-@@ -1518,7 +1518,7 @@ describe('app module', () => {
+@@ -1524,7 +1524,7 @@ describe('app module', () => {
  
    describe('getApplicationNameForProtocol()', () => {
      // TODO: Linux CI doesn't have registered http & https handlers
@@ -104,7 +104,7 @@
        'returns application names for common protocols',
        function () {
          // We can't expect particular app names here, but these protocols should
-@@ -1535,7 +1535,7 @@ describe('app module', () => {
+@@ -1541,7 +1541,7 @@ describe('app module', () => {
        expect(app.getApplicationNameForProtocol('bogus-protocol://')).to.equal('');
      });
  
@@ -113,7 +113,7 @@
        const desktopFileId = 'mock-browser.desktop';
        const mockDisplayName = 'Mock Browser';
        const mockScheme = 'mockproto';
-@@ -1585,7 +1585,7 @@ describe('app module', () => {
+@@ -1591,7 +1591,7 @@ describe('app module', () => {
      let xdgBinDir: string;
  
      before(() => {
@@ -122,7 +122,7 @@
          return;
        }
  
-@@ -1602,7 +1602,7 @@ describe('app module', () => {
+@@ -1608,7 +1608,7 @@ describe('app module', () => {
      });
  
      after(() => {
@@ -131,7 +131,7 @@
          fs.rmSync(xdgDir, { recursive: true, force: true });
        }
      });
-@@ -1614,7 +1614,7 @@ describe('app module', () => {
+@@ -1620,7 +1620,7 @@ describe('app module', () => {
      });
  
      it('returns resolved promise with appPath, displayName and icon', async function () {
@@ -140,7 +140,7 @@
          const appInfo = await spawnProtocolInfoWithXdgMock(`${mockScheme}://`, xdgDataHome, xdgConfigHome);
          expect(appInfo.name).to.equal(mockDisplayName);
          expect(appInfo.path).to.equal('/usr/bin/true');
-@@ -1628,7 +1628,7 @@ describe('app module', () => {
+@@ -1634,7 +1634,7 @@ describe('app module', () => {
        expect(appInfo.icon).not.to.be.undefined();
      });
  
@@ -149,7 +149,7 @@
        const pathLookupExecutable = 'mock-browser';
        const pathLookupExecutablePath = path.join(xdgBinDir, pathLookupExecutable);
        const pathLookupDisplayName = 'Mock Browser PATH';
-@@ -1662,7 +1662,7 @@ describe('app module', () => {
+@@ -1668,7 +1668,7 @@ describe('app module', () => {
      });
    });
  
@@ -158,7 +158,7 @@
      const protocol = 'electron-test-linux';
      const desktopFileId = 'electron-test.desktop';
      const protocolMimeType = `x-scheme-handler/${protocol}`;
-@@ -1779,7 +1779,7 @@ describe('app module', () => {
+@@ -1785,7 +1785,7 @@ describe('app module', () => {
    });
  
    // FIXME Get these specs running on Linux CI
@@ -167,7 +167,7 @@
      const iconPath = path.join(__dirname, 'fixtures/assets/icon.ico');
      const sizes = {
        small: 16,
-@@ -1861,7 +1861,7 @@ describe('app module', () => {
+@@ -1867,7 +1867,7 @@ describe('app module', () => {
            expect(entry.memory).to.have.property('privateBytes').that.is.greaterThan(0);
          }
  
@@ -176,7 +176,7 @@
            expect(entry.sandboxed).to.be.a('boolean');
          }
  
-@@ -1950,7 +1950,7 @@ describe('app module', () => {
+@@ -1956,7 +1956,7 @@ describe('app module', () => {
          if (isGpuUnavailable(error as Error)) return this.skip();
          throw error;
        }
@@ -185,7 +185,7 @@
          // For linux and macOS complete info is same as basic info
          await verifyBasicGPUInfo(completeInfo);
          const basicInfo = await getGPUInfo('basic');
-@@ -1974,7 +1974,7 @@ describe('app module', () => {
+@@ -1980,7 +1980,7 @@ describe('app module', () => {
      });
    });
  
diff --git a/devel/electron44/files/patch-electron_spec_api-browser-window-spec.ts b/devel/electron44/files/patch-electron_spec_api-browser-window-spec.ts
index a9eb176bff90..7c9eb5805beb 100644
--- a/devel/electron44/files/patch-electron_spec_api-browser-window-spec.ts
+++ b/devel/electron44/files/patch-electron_spec_api-browser-window-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/api-browser-window-spec.ts.orig	2026-09-15 22:52:01 UTC
+--- electron/spec/api-browser-window-spec.ts.orig	2026-09-18 15:43:03 UTC
 +++ electron/spec/api-browser-window-spec.ts
 @@ -105,7 +105,7 @@ describe('BrowserWindow module', () => {
        }).not.to.throw();
@@ -18,7 +18,7 @@
      afterEach(closeAllWindows);
      it('can set content protection', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -1509,7 +1509,7 @@ describe('BrowserWindow module', () => {
+@@ -1517,7 +1517,7 @@ describe('BrowserWindow module', () => {
  
      describe('BrowserWindow.minimize()', () => {
        // TODO(codebytere): Enable for Linux once maximize/minimize events work in CI.
@@ -27,7 +27,7 @@
          const minimize = once(w, 'minimize');
          w.minimize();
          await minimize;
-@@ -1526,7 +1526,7 @@ describe('BrowserWindow module', () => {
+@@ -1534,7 +1534,7 @@ describe('BrowserWindow module', () => {
        });
  
        // TODO(dsanders11): Enable for Linux once CI plays nice with these kinds of tests
@@ -36,7 +36,7 @@
          const maximize = once(w, 'maximize');
          const shown = once(w, 'show');
          w.maximize();
-@@ -1591,7 +1591,7 @@ describe('BrowserWindow module', () => {
+@@ -1599,7 +1599,7 @@ describe('BrowserWindow module', () => {
          expect(w.isFocused()).to.equal(true);
        });
  
@@ -45,7 +45,7 @@
          const w1 = new BrowserWindow({ show: false });
          const w2 = new BrowserWindow({ show: false });
          const w3 = new BrowserWindow({ show: false });
-@@ -1696,7 +1696,7 @@ describe('BrowserWindow module', () => {
+@@ -1704,7 +1704,7 @@ describe('BrowserWindow module', () => {
          expect(w.isFocused()).to.equal(false);
        });
  
@@ -54,7 +54,7 @@
          const w1 = new BrowserWindow({ show: false });
          const w2 = new BrowserWindow({ show: false });
          const w3 = new BrowserWindow({ show: false });
-@@ -2246,7 +2246,7 @@ describe('BrowserWindow module', () => {
+@@ -2254,7 +2254,7 @@ describe('BrowserWindow module', () => {
          });
        });
  
@@ -63,7 +63,7 @@
          it('checks normal bounds when maximized', async () => {
            const bounds = w.getBounds();
            const maximize = once(w, 'maximize');
-@@ -2464,7 +2464,7 @@ describe('BrowserWindow module', () => {
+@@ -2472,7 +2472,7 @@ describe('BrowserWindow module', () => {
          });
        });
  
@@ -72,7 +72,7 @@
          it('checks normal bounds when minimized', async () => {
            const bounds = w.getBounds();
            const minimize = once(w, 'minimize');
-@@ -3827,7 +3827,7 @@ describe('BrowserWindow module', () => {
+@@ -3835,7 +3835,7 @@ describe('BrowserWindow module', () => {
        expect(overlayRectPreMax.height).to.equal(size);
  
        // 'maximize' event is not emitted on Linux in CI.
@@ -81,7 +81,7 @@
          const maximize = once(w, 'maximize');
          w.show();
          w.maximize();
-@@ -3946,7 +3946,7 @@ describe('BrowserWindow module', () => {
+@@ -3954,7 +3954,7 @@ describe('BrowserWindow module', () => {
          expect(preMaxHeight).to.equal(size);
  
          // 'maximize' event is not emitted on Linux in CI.
@@ -90,7 +90,7 @@
            const maximize = once(w, 'maximize');
            w.show();
            w.maximize();
-@@ -5082,7 +5082,7 @@ describe('BrowserWindow module', () => {
+@@ -5090,7 +5090,7 @@ describe('BrowserWindow module', () => {
          expect(test.nodeTimers).to.equal(true);
          expect(test.nodeUrl).to.equal(true);
  
@@ -99,7 +99,7 @@
            expect(test.creationTime).to.be.null('creation time');
            expect(test.systemMemoryInfo).to.be.null('system memory info');
          } else {
-@@ -5598,7 +5598,7 @@ describe('BrowserWindow module', () => {
+@@ -5606,7 +5606,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -108,7 +108,7 @@
      afterEach(closeAllWindows);
      it('emits an event when window is maximized', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -5874,7 +5874,7 @@ describe('BrowserWindow module', () => {
+@@ -5882,7 +5882,7 @@ describe('BrowserWindow module', () => {
      // TODO(zcbenz):
      // This test does not run on Linux CI. See:
      // https://github.com/electron/electron/issues/28699
@@ -117,7 +117,7 @@
        'should bring a minimized maximized window back to maximized state',
        async () => {
          const w = new BrowserWindow({});
-@@ -5892,7 +5892,7 @@ describe('BrowserWindow module', () => {
+@@ -5900,7 +5900,7 @@ describe('BrowserWindow module', () => {
        }
      );
  
@@ -126,7 +126,7 @@
        const w = new BrowserWindow({ show: false });
        w.show();
  
-@@ -5915,7 +5915,7 @@ describe('BrowserWindow module', () => {
+@@ -5923,7 +5923,7 @@ describe('BrowserWindow module', () => {
    });
  
    // TODO(dsanders11): Enable once maximize event works on Linux again on CI
@@ -135,7 +135,7 @@
      afterEach(closeAllWindows);
      it('should show the window if it is not currently shown', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -5952,7 +5952,7 @@ describe('BrowserWindow module', () => {
+@@ -5960,7 +5960,7 @@ describe('BrowserWindow module', () => {
  
      // TODO(dsanders11): Enable once minimize event works on Linux again.
      //                   See https://github.com/electron/electron/issues/28699
@@ -144,7 +144,7 @@
        const w = new BrowserWindow();
        const minimize = once(w, 'minimize');
        w.minimize();
-@@ -6465,7 +6465,7 @@ describe('BrowserWindow module', () => {
+@@ -6473,7 +6473,7 @@ describe('BrowserWindow module', () => {
        });
  
        // On Linux there is no "resizable" property of a window.
@@ -153,7 +153,7 @@
          const w = new BrowserWindow({ show: false });
          expect(w.resizable).to.be.true('resizable');
  
-@@ -6706,7 +6706,7 @@ describe('BrowserWindow module', () => {
+@@ -6714,7 +6714,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -162,7 +162,7 @@
      // Not implemented on Linux.
      afterEach(closeAllWindows);
  
-@@ -8063,7 +8063,7 @@ describe('BrowserWindow module', () => {
+@@ -8072,7 +8072,7 @@ describe('BrowserWindow module', () => {
    describe('"transparent" option', () => {
      afterEach(closeAllWindows);
  
diff --git a/devel/electron44/files/patch-electron_spec_api-net-spec.ts b/devel/electron44/files/patch-electron_spec_api-net-spec.ts
index 9a3bd04a5204..85ee171f08d2 100644
--- a/devel/electron44/files/patch-electron_spec_api-net-spec.ts
+++ b/devel/electron44/files/patch-electron_spec_api-net-spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/api-net-spec.ts.orig	2026-09-08 02:42:44 UTC
+--- electron/spec/api-net-spec.ts.orig	2026-09-18 15:43:03 UTC
 +++ electron/spec/api-net-spec.ts
-@@ -2066,7 +2066,7 @@ describe('net module', () => {
+@@ -2104,7 +2104,7 @@ describe('net module', () => {
    // The select-client-certificate event only fires when the platform cert
    // store yields at least one matching identity, which the test suite cannot
    // guarantee on Linux (NSS) without app.importCertificate.
diff --git a/devel/electron44/files/patch-electron_spec_api-protocol-spec.ts b/devel/electron44/files/patch-electron_spec_api-protocol-spec.ts
deleted file mode 100644
index 2dd2e7d9fa06..000000000000
--- a/devel/electron44/files/patch-electron_spec_api-protocol-spec.ts
+++ /dev/null
@@ -1,11 +0,0 @@
---- electron/spec/api-protocol-spec.ts.orig	2026-09-15 22:52:01 UTC
-+++ electron/spec/api-protocol-spec.ts
-@@ -2461,7 +2461,7 @@ describe('protocol module', () => {
- 
-     // TODO(nornagon): this test doesn't pass on Linux currently, investigate.
-     // test is also flaky on CI on macOS so it is currently disabled there as well.
--    ifit(process.platform !== 'linux' && (!process.env.CI || process.platform !== 'darwin'))('is fast', async () => {
-+    ifit((process.platform !== 'linux' && process.platform !== 'freebsd') && (!process.env.CI || process.platform !== 'darwin'))('is fast', async () => {
-       // 128 MB of spaces.
-       const chunk = new Uint8Array(128 * 1024 * 1024);
-       chunk.fill(' '.charCodeAt(0));
diff --git a/devel/electron44/files/patch-electron_spec_chromium-spec.ts b/devel/electron44/files/patch-electron_spec_chromium-spec.ts
index f69455626e56..bc8b68229885 100644
--- a/devel/electron44/files/patch-electron_spec_chromium-spec.ts
+++ b/devel/electron44/files/patch-electron_spec_chromium-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/chromium-spec.ts.orig	2026-09-15 22:52:01 UTC
+--- electron/spec/chromium-spec.ts.orig	2026-09-18 15:43:03 UTC
 +++ electron/spec/chromium-spec.ts
 @@ -608,15 +608,15 @@ describe('command line switches', () => {
        testLocale('asdfkl', `${currentLocale}|${currentSystemLocale}|${currentPreferredLanguages}`));
@@ -35,7 +35,7 @@
      'should fall back to Japanese font for sans-serif Japanese script',
      async function () {
        const html = `
-@@ -4946,7 +4946,7 @@ describe('paste execCommand', () => {
+@@ -4972,7 +4972,7 @@ describe('paste execCommand', () => {
    });
  });
  
diff --git a/devel/electron44/files/patch-gpu_command__buffer_service_shared__context__state.cc b/devel/electron44/files/patch-gpu_command__buffer_service_shared__context__state.cc
index e2c6d02d9173..9cb05f9e8c25 100644
--- a/devel/electron44/files/patch-gpu_command__buffer_service_shared__context__state.cc
+++ b/devel/electron44/files/patch-gpu_command__buffer_service_shared__context__state.cc
@@ -1,6 +1,6 @@
---- gpu/command_buffer/service/shared_context_state.cc.orig	2026-08-24 20:59:34 UTC
+--- gpu/command_buffer/service/shared_context_state.cc.orig	2026-09-14 21:34:05 UTC
 +++ gpu/command_buffer/service/shared_context_state.cc
-@@ -66,7 +66,7 @@
+@@ -67,7 +67,7 @@
  #include "gpu/vulkan/vulkan_implementation.h"
  #include "gpu/vulkan/vulkan_util.h"
  
@@ -9,7 +9,7 @@
  #include "gpu/command_buffer/service/external_semaphore_pool.h"
  #endif
  
-@@ -303,7 +303,7 @@ SharedContextState::SharedContextState(
+@@ -304,7 +304,7 @@ SharedContextState::SharedContextState(
    ) {
      if (vk_context_provider_) {
  #if BUILDFLAG(ENABLE_VULKAN) && \
@@ -18,7 +18,7 @@
        external_semaphore_pool_ = std::make_unique<ExternalSemaphorePool>(this);
  #endif
      }
-@@ -344,7 +344,7 @@ SharedContextState::~SharedContextState() {
+@@ -345,7 +345,7 @@ SharedContextState::~SharedContextState() {
    }
  
  #if BUILDFLAG(ENABLE_VULKAN) && \
diff --git a/devel/electron44/files/patch-third__party_blink_common_features.cc b/devel/electron44/files/patch-third__party_blink_common_features.cc
index 05656d6d05fe..5922bbe0bac3 100644
--- a/devel/electron44/files/patch-third__party_blink_common_features.cc
+++ b/devel/electron44/files/patch-third__party_blink_common_features.cc
@@ -1,4 +1,4 @@
---- third_party/blink/common/features.cc.orig	2026-08-24 20:59:34 UTC
+--- third_party/blink/common/features.cc.orig	2026-09-19 11:36:54 UTC
 +++ third_party/blink/common/features.cc
 @@ -693,7 +693,7 @@ BASE_FEATURE(kDirectCompositorThreadIpc,
  
@@ -9,7 +9,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT
  #else
               base::FEATURE_DISABLED_BY_DEFAULT
-@@ -1907,7 +1907,7 @@ BASE_FEATURE(kPreloadingEagerHoverHeuristics,
+@@ -1911,7 +1911,7 @@ BASE_FEATURE(kPreloadingEagerHoverHeuristics,
  // currently out of scope.
  BASE_FEATURE(kPreloadingEagerHoverHeuristics,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
diff --git a/devel/electron44/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc b/devel/electron44/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc
index 073bfb91efb4..992b4b44cd68 100644
--- a/devel/electron44/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc
+++ b/devel/electron44/files/patch-third__party_blink_renderer_core_exported_web__view__impl.cc
@@ -1,4 +1,4 @@
---- third_party/blink/renderer/core/exported/web_view_impl.cc.orig	2026-09-01 23:50:56 UTC
+--- third_party/blink/renderer/core/exported/web_view_impl.cc.orig	2026-09-19 11:36:53 UTC
 +++ third_party/blink/renderer/core/exported/web_view_impl.cc
 @@ -196,7 +196,7 @@
  #include "ui/base/ui_base_features.h"
@@ -27,7 +27,7 @@
  void UpdateUseOverlayScrollbar(bool use_overlay_scrollbar) {
    ui::NativeTheme::GetInstanceForWeb()->set_use_overlay_scrollbar(
        use_overlay_scrollbar);
-@@ -3681,7 +3681,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs
+@@ -3682,7 +3682,7 @@ void WebViewImpl::UpdateFontRenderingFromRendererPrefs
        gfx::FontRenderParams::SUBPIXEL_RENDERING_NONE);
    WebFontRenderStyle::SetSubpixelPositioning(
        renderer_preferences_.use_subpixel_positioning);
@@ -36,7 +36,7 @@
    if (!renderer_preferences_.system_font_family_name.empty()) {
      WebFontRenderStyle::SetSystemFontFamily(blink::WebString::FromUtf8(
          renderer_preferences_.system_font_family_name));
-@@ -3821,7 +3821,7 @@ void WebViewImpl::UpdateRendererPreferences(
+@@ -3822,7 +3822,7 @@ void WebViewImpl::UpdateRendererPreferences(
        renderer_preferences_.selection_clipboard_buffer_available);
  #endif  // BUILDFLAG(IS_OZONE)
  
@@ -45,7 +45,7 @@
    GetSettings()->SetMiddleClickPasteAllowed(
        renderer_preferences_.middle_click_paste_allowed);
  #endif  // BUILDFLAG(IS_LINUX)
-@@ -3829,7 +3829,7 @@ void WebViewImpl::UpdateRendererPreferences(
+@@ -3830,7 +3830,7 @@ void WebViewImpl::UpdateRendererPreferences(
    SetExplicitlyAllowedPorts(
        renderer_preferences_.explicitly_allowed_network_ports);
  
diff --git a/devel/electron44/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5 b/devel/electron44/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5
index 5240a3823b9b..434eea200eb4 100644
--- a/devel/electron44/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5
+++ b/devel/electron44/files/patch-third__party_blink_renderer_platform_runtime__enabled__features.json5
@@ -1,4 +1,4 @@
---- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig	2026-09-01 23:50:56 UTC
+--- third_party/blink/renderer/platform/runtime_enabled_features.json5.orig	2026-09-19 11:36:54 UTC
 +++ third_party/blink/renderer/platform/runtime_enabled_features.json5
 @@ -463,7 +463,7 @@
          "default": "",
@@ -90,7 +90,7 @@
        public: true,
        base_feature_status: "enabled",
        copied_from_base_feature_if: "overridden",
-@@ -6665,7 +6665,7 @@
+@@ -6669,7 +6669,7 @@
        name: "UnrestrictedSharedArrayBuffer",
        base_feature: "none",
        origin_trial_feature_name: "UnrestrictedSharedArrayBuffer",
@@ -99,7 +99,7 @@
      },
      // Enables using policy-controlled feature "usb-unrestricted" to allow
      // isolated context to access protected USB interface classes and to
-@@ -6893,7 +6893,7 @@
+@@ -6897,7 +6897,7 @@
        name: "WebAppInstallation",
        status: {"Android": "", "default": "test"},
        origin_trial_feature_name: "WebAppInstallation",
@@ -108,7 +108,7 @@
        public: true,
        base_feature_status: "enabled",
        copied_from_base_feature_if: "overridden",
-@@ -6907,7 +6907,7 @@
+@@ -6911,7 +6911,7 @@
      {
        name: "WebAppScopeExtensions",
        origin_trial_feature_name: "WebAppScopeExtensions",