Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Jun 2026 14:19:47 +0000
From:      Hiroki Tagato <tagattie@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 6081600b0870 - main - devel/electron42: Update to 42.4.0
Message-ID:  <6a2d6703.24229.7614b022@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by tagattie:

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

commit 6081600b0870a213c191c9cd3009892fff32b596
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2026-06-13 14:18:41 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2026-06-13 14:19:41 +0000

    devel/electron42: Update to 42.4.0
    
    Changelog: https://github.com/electron/electron/releases/tag/v42.4.0
    
    Reported by:    GitHub (watch releases)
---
 devel/electron42/Makefile                          | 20 ++++++--
 devel/electron42/Makefile.version                  |  2 +-
 devel/electron42/distinfo                          | 22 ++++----
 .../electron42/files/packagejsons/npm/package.json |  4 +-
 ...d__manager_chrome__password__manager__client.cc |  6 +--
 ...ill_core_common_autofill__payments__features.cc | 26 +++++-----
 ...derer__host_render__widget__host__view__aura.cc |  8 +--
 .../patch-electron_script_pgo_collect-profile.js   |  4 +-
 ...ell_browser_api_electron__api__web__contents.cc |  8 +--
 ...hell_browser_api_electron__api__web__contents.h |  4 +-
 ...electron_shell_browser_native__window__views.cc | 60 ++++++++--------------
 ..._shell_browser_ui_inspectable__web__contents.cc |  4 +-
 ..._browser_ui_inspectable__web__contents__view.cc |  4 +-
 .../patch-electron_spec_api-browser-window-spec.ts | 44 ++++++++--------
 .../files/patch-electron_spec_api-menu-spec.ts     |  4 +-
 .../patch-electron_spec_api-web-contents-spec.ts   |  4 +-
 .../files/patch-media_base_video__frame.cc         |  4 +-
 ...u_chromeos_libyuv__image__processor__backend.cc |  6 +--
 ...d__party_electron__node_deps_uv_src_unix_pipe.c |  4 +-
 .../files/patch-ui_accessibility_ax__tree.cc       |  6 +--
 ...top__aura_desktop__drag__drop__client__ozone.cc |  4 +-
 ...__aura_desktop__window__tree__host__platform.cc |  4 +-
 22 files changed, 125 insertions(+), 127 deletions(-)

diff --git a/devel/electron42/Makefile b/devel/electron42/Makefile
index 2b366855e7d1..1976a75b4ee9 100644
--- a/devel/electron42/Makefile
+++ b/devel/electron42/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/v42.4.0/: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]//}
 
 MAINTAINER=	tagattie@FreeBSD.org
 COMMENT=	Build cross-platform desktop apps with JavaScript, HTML, and CSS
@@ -223,9 +226,9 @@ SNDIO_VARS=		GN_ARGS+=use_sndio=true
 SNDIO_VARS_OFF=		GN_ARGS+=use_sndio=false
 
 # See ${WRKSRC}/electron/DEPS for CHROMIUM_VER
-CHROMIUM_VER=			148.0.7778.218
+CHROMIUM_VER=			148.0.7778.254
 # See ${WRKSRC}/electron/DEPS for NODE_VER
-NODE_VER=			24.15.0
+NODE_VER=			24.16.0
 # See ${WRKSRC}/electron/DEPS for NAN_VER
 NAN_VER=			675cefebca42410733da8a454c8d9391fcebfbc2
 # See ${WRKSRC}/electron/DEPS for SQUIRREL_MAC_VER
@@ -308,6 +311,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/electron42/Makefile.version b/devel/electron42/Makefile.version
index 328511e349d5..f438f45da71f 100644
--- a/devel/electron42/Makefile.version
+++ b/devel/electron42/Makefile.version
@@ -1,2 +1,2 @@
-ELECTRON_VER=		42.3.3
+ELECTRON_VER=		42.4.0
 ELECTRON_VER_MAJOR=	${ELECTRON_VER:C/\..*//}
diff --git a/devel/electron42/distinfo b/devel/electron42/distinfo
index cc7ba38c6cc9..67260f2f2e8e 100644
--- a/devel/electron42/distinfo
+++ b/devel/electron42/distinfo
@@ -1,6 +1,10 @@
-TIMESTAMP = 1780902060
-SHA256 (electron/chromium-148.0.7778.218-lite.tar.xz) = 9ef5529ee99461ec74fca7582fbd9db81e88d702ff6c3d19d0db12944c0c0b35
-SIZE (electron/chromium-148.0.7778.218-lite.tar.xz) = 1593163700
+TIMESTAMP = 1781338455
+SHA256 (electron/chromium-148.0.7778.254.tar.xz.0) = 946b3281fd32725f4858da5a07232704011bc39d12023e847cfb6632e6ffd3da
+SIZE (electron/chromium-148.0.7778.254.tar.xz.0) = 2000000000
+SHA256 (electron/chromium-148.0.7778.254.tar.xz.1) = b238ec3e80fb18f89f66eb6ef0adb98e005ef9ded8d96a2271b1024eeb1fe828
+SIZE (electron/chromium-148.0.7778.254.tar.xz.1) = 2000000000
+SHA256 (electron/chromium-148.0.7778.254.tar.xz.2) = c9f96d012ebc13ce01e54d30a654f037e4ef43f6f918b3203016df8123b45f3d
+SIZE (electron/chromium-148.0.7778.254.tar.xz.2) = 777489584
 SHA256 (electron/pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92
 SIZE (electron/pulseaudio-16.1.tar.gz) = 2763111
 SHA256 (electron/rust/crates/Inflector-0.11.4.crate) = fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3
@@ -337,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/electron42-42.3.3-node-modules.tar.xz) = fb701440d9f0c7f5e4a7d45c2365ffc64fab9bba66c5fdfe33f0a63397f96205
-SIZE (electron/electron42-42.3.3-node-modules.tar.xz) = 71016077
-SHA256 (electron/electron-electron-v42.3.3_GH0.tar.gz) = c019addb5d2f25c8570a2237be17fe5a3181220f19532986c5462c5e9c443428
-SIZE (electron/electron-electron-v42.3.3_GH0.tar.gz) = 18875958
-SHA256 (electron/nodejs-node-v24.15.0_GH0.tar.gz) = 5cfb169b21878f50876e0c6a77db1a5e40d733960232682bebb5e267246a2e80
-SIZE (electron/nodejs-node-v24.15.0_GH0.tar.gz) = 126716937
+SHA256 (electron/electron42-42.4.0-node-modules.tar.xz) = fb701440d9f0c7f5e4a7d45c2365ffc64fab9bba66c5fdfe33f0a63397f96205
+SIZE (electron/electron42-42.4.0-node-modules.tar.xz) = 71016077
+SHA256 (electron/electron-electron-v42.4.0_GH0.tar.gz) = 7adc30ead5be30b51d84388eea71b63974fd4d53c7b40c8aaa5de1869f5436fe
+SIZE (electron/electron-electron-v42.4.0_GH0.tar.gz) = 18904909
+SHA256 (electron/nodejs-node-v24.16.0_GH0.tar.gz) = 6443d4d1ac5e5221293607ae625978d407745737c5d1a53cb10d5c927edfb20b
+SIZE (electron/nodejs-node-v24.16.0_GH0.tar.gz) = 127279939
 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
diff --git a/devel/electron42/files/packagejsons/npm/package.json b/devel/electron42/files/packagejsons/npm/package.json
index 38ac890cff99..23fc312d3917 100644
--- a/devel/electron42/files/packagejsons/npm/package.json
+++ b/devel/electron42/files/packagejsons/npm/package.json
@@ -16,9 +16,9 @@
     "install.js"
   ],
   "dependencies": {
+    "@electron-internal/extract-zip": "^1.0.1",
     "@electron/get": "^5.0.0",
-    "@types/node": "^24.9.0",
-    "extract-zip": "^2.0.1"
+    "@types/node": "^24.9.0"
   },
   "engines": {
     "node": ">= 22.12.0"
diff --git a/devel/electron42/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc b/devel/electron42/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc
index a47ffe3874d8..c07d304b049e 100644
--- a/devel/electron42/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc
+++ b/devel/electron42/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc
@@ -1,4 +1,4 @@
---- chrome/browser/password_manager/chrome_password_manager_client.cc.orig	2026-04-28 21:06:17 UTC
+--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig	2026-06-02 17:55:02 UTC
 +++ chrome/browser/password_manager/chrome_password_manager_client.cc
 @@ -703,7 +703,7 @@ bool ChromePasswordManagerClient::IsReauthBeforeFillin
  bool ChromePasswordManagerClient::IsReauthBeforeFillingRequired(
@@ -18,7 +18,7 @@
    PasswordsClientUIDelegate* manage_passwords_ui_controller =
        PasswordsClientUIDelegateFromWebContents(web_contents());
    if (manage_passwords_ui_controller) {
-@@ -2033,7 +2033,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement
+@@ -2043,7 +2043,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement
  bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
      const GURL& url) const {
  #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \
@@ -27,7 +27,7 @@
    if (IsPasswordManagerForUrlDisallowedByPolicy(url)) {
      return false;
    }
-@@ -2072,7 +2072,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement
+@@ -2082,7 +2082,7 @@ bool ChromePasswordManagerClient::IsPasswordManagement
  }
  
  #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \
diff --git a/devel/electron42/files/patch-components_autofill_core_common_autofill__payments__features.cc b/devel/electron42/files/patch-components_autofill_core_common_autofill__payments__features.cc
index a43863e232f8..24423f4beb1a 100644
--- a/devel/electron42/files/patch-components_autofill_core_common_autofill__payments__features.cc
+++ b/devel/electron42/files/patch-components_autofill_core_common_autofill__payments__features.cc
@@ -1,6 +1,6 @@
---- components/autofill/core/common/autofill_payments_features.cc.orig	2026-04-28 21:06:17 UTC
+--- components/autofill/core/common/autofill_payments_features.cc.orig	2026-06-02 17:55:02 UTC
 +++ components/autofill/core/common/autofill_payments_features.cc
-@@ -27,7 +27,7 @@ BASE_FEATURE(kAutofillEnableAiBasedAmountExtraction,
+@@ -32,7 +32,7 @@ BASE_FEATURE(kAutofillEnableAiBasedAmountExtraction,
  // page using server-side AI.
  BASE_FEATURE(kAutofillEnableAiBasedAmountExtraction,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -9,7 +9,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -38,7 +38,7 @@ BASE_FEATURE(kAutofillEnableAmountExtraction,
+@@ -43,7 +43,7 @@ BASE_FEATURE(kAutofillEnableAmountExtraction,
  // of the allowlisted merchant websites.
  BASE_FEATURE(kAutofillEnableAmountExtraction,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -18,7 +18,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -61,7 +61,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLater,
+@@ -66,7 +66,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLater,
  // When enabled, buy now pay later (BNPL) in Autofill will be offered.
  BASE_FEATURE(kAutofillEnableBuyNowPayLater,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -27,7 +27,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -72,7 +72,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForExternall
+@@ -77,7 +77,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForExternall
  // (BNPL) issuers that are externally linked.
  BASE_FEATURE(kAutofillEnableBuyNowPayLaterForExternallyLinked,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -36,7 +36,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -82,7 +82,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna,
+@@ -87,7 +87,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna,
  // offered.
  BASE_FEATURE(kAutofillEnableBuyNowPayLaterForKlarna,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -45,7 +45,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -91,7 +91,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterSyncing,
+@@ -96,7 +96,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterSyncing,
  // When enabled, buy now pay later (BNPL) data will be synced to Chrome clients.
  BASE_FEATURE(kAutofillEnableBuyNowPayLaterSyncing,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -54,7 +54,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -101,7 +101,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterUpdatedSugge
+@@ -106,7 +106,7 @@ BASE_FEATURE(kAutofillEnableBuyNowPayLaterUpdatedSugge
  // include the issuer names for better brand recognition.
  BASE_FEATURE(kAutofillEnableBuyNowPayLaterUpdatedSuggestionSecondLineString,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -63,7 +63,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -121,7 +121,7 @@ BASE_FEATURE(kAutofillEnableCardBenefitsForBmo,
+@@ -126,7 +126,7 @@ BASE_FEATURE(kAutofillEnableCardBenefitsForBmo,
  // UI.
  BASE_FEATURE(kAutofillEnableCardBenefitsForBmo,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -72,7 +72,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -165,7 +165,7 @@ BASE_FEATURE(kAutofillEnableFlatRateCardBenefitsFromCu
+@@ -170,7 +170,7 @@ BASE_FEATURE(kAutofillEnableFlatRateCardBenefitsFromCu
  // Payments Autofill UI.
  BASE_FEATURE(kAutofillEnableFlatRateCardBenefitsFromCurinos,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -81,7 +81,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -247,7 +247,7 @@ BASE_FEATURE(kAutofillEnableVcn3dsAuthentication,
+@@ -252,7 +252,7 @@ BASE_FEATURE(kAutofillEnableVcn3dsAuthentication,
  // the card, and FIDO is not.
  BASE_FEATURE(kAutofillEnableVcn3dsAuthentication,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -90,7 +90,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -276,7 +276,7 @@ BASE_FEATURE(kAutofillPreferBuyNowPayLaterBlocklists,
+@@ -281,7 +281,7 @@ BASE_FEATURE(kAutofillPreferBuyNowPayLaterBlocklists,
  // eligibility.
  BASE_FEATURE(kAutofillPreferBuyNowPayLaterBlocklists,
  #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
@@ -99,7 +99,7 @@
               base::FEATURE_ENABLED_BY_DEFAULT);
  #else
               base::FEATURE_DISABLED_BY_DEFAULT);
-@@ -326,7 +326,7 @@ bool ShouldShowImprovedUserConsentForCreditCardSave() 
+@@ -331,7 +331,7 @@ bool ShouldShowImprovedUserConsentForCreditCardSave() 
      /*default_value=*/180};
  
  bool ShouldShowImprovedUserConsentForCreditCardSave() {
diff --git a/devel/electron42/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc b/devel/electron42/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc
index 9f58f9f0c651..bb4355e9c37e 100644
--- a/devel/electron42/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc
+++ b/devel/electron42/files/patch-content_browser_renderer__host_render__widget__host__view__aura.cc
@@ -1,4 +1,4 @@
---- content/browser/renderer_host/render_widget_host_view_aura.cc.orig	2026-06-02 11:14:29 UTC
+--- content/browser/renderer_host/render_widget_host_view_aura.cc.orig	2026-06-13 08:19:50 UTC
 +++ content/browser/renderer_host/render_widget_host_view_aura.cc
 @@ -130,7 +130,7 @@
  #include "ui/gfx/win/gdi_util.h"
@@ -18,7 +18,7 @@
    ui::BrowserAccessibilityManager* manager =
        host()->GetOrCreateRootBrowserAccessibilityManager();
    if (manager && manager->GetBrowserAccessibilityRoot())
-@@ -2003,7 +2003,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() {
+@@ -2010,7 +2010,7 @@ bool RenderWidgetHostViewAura::ShouldDoLearning() {
    return host() && host()->delegate() && host()->delegate()->ShouldDoLearning();
  }
  
@@ -27,7 +27,7 @@
  bool RenderWidgetHostViewAura::SetCompositionFromExistingText(
      const gfx::Range& range,
      const std::vector<ui::ImeTextSpan>& ui_ime_text_spans) {
-@@ -3046,7 +3046,7 @@ bool RenderWidgetHostViewAura::NeedsMouseCapture() {
+@@ -3053,7 +3053,7 @@ bool RenderWidgetHostViewAura::NeedsMouseCapture() {
  }
  
  bool RenderWidgetHostViewAura::NeedsMouseCapture() {
@@ -36,7 +36,7 @@
    return NeedsInputGrab();
  #else
    return false;
-@@ -3256,7 +3256,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit
+@@ -3263,7 +3263,7 @@ void RenderWidgetHostViewAura::ForwardKeyboardEventWit
    if (!target_host)
      return;
  
diff --git a/devel/electron42/files/patch-electron_script_pgo_collect-profile.js b/devel/electron42/files/patch-electron_script_pgo_collect-profile.js
index e19e0b4936f9..564ba453725c 100644
--- a/devel/electron42/files/patch-electron_script_pgo_collect-profile.js
+++ b/devel/electron42/files/patch-electron_script_pgo_collect-profile.js
@@ -1,6 +1,6 @@
---- electron/script/pgo/collect-profile.js.orig	2026-06-02 11:33:02 UTC
+--- electron/script/pgo/collect-profile.js.orig	2026-06-09 06:05:33 UTC
 +++ electron/script/pgo/collect-profile.js
-@@ -71,7 +71,7 @@ function installTrustedCA(caCertPath) {
+@@ -75,7 +75,7 @@ function installTrustedCA(caCertPath) {
  // network workload coverage degrades but collection still succeeds.
  function installTrustedCA(caCertPath) {
    try {
diff --git a/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.cc b/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.cc
index 74f5b28a5452..7f8f1b735609 100644
--- a/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.cc
+++ b/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.cc
@@ -1,4 +1,4 @@
---- electron/shell/browser/api/electron_api_web_contents.cc.orig	2026-06-03 19:18:10 UTC
+--- electron/shell/browser/api/electron_api_web_contents.cc.orig	2026-06-09 06:05:33 UTC
 +++ electron/shell/browser/api/electron_api_web_contents.cc
 @@ -174,11 +174,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));
-@@ -2968,13 +2968,13 @@ void WebContents::ForcefullyCrashRenderer() {
+@@ -2982,13 +2982,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);
-@@ -3684,7 +3684,7 @@ void WebContents::Focus() {
+@@ -3698,7 +3698,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
-@@ -4585,7 +4585,7 @@ ui::ImageModel WebContents::GetDevToolsWindowIcon() {
+@@ -4599,7 +4599,7 @@ ui::ImageModel WebContents::GetDevToolsWindowIcon() {
  }
  #endif
  
diff --git a/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.h b/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.h
index 67e9a78e02f3..4eb3a6322f3b 100644
--- a/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.h
+++ b/devel/electron42/files/patch-electron_shell_browser_api_electron__api__web__contents.h
@@ -1,6 +1,6 @@
---- electron/shell/browser/api/electron_api_web_contents.h.orig	2026-06-03 19:18:10 UTC
+--- electron/shell/browser/api/electron_api_web_contents.h.orig	2026-06-09 06:05:33 UTC
 +++ electron/shell/browser/api/electron_api_web_contents.h
-@@ -758,7 +758,7 @@ class WebContents final : public ExclusiveAccessContex
+@@ -761,7 +761,7 @@ class WebContents final : public ExclusiveAccessContex
  #if defined(TOOLKIT_VIEWS) && !BUILDFLAG(IS_MAC)
    ui::ImageModel GetDevToolsWindowIcon() override;
  #endif
diff --git a/devel/electron42/files/patch-electron_shell_browser_native__window__views.cc b/devel/electron42/files/patch-electron_shell_browser_native__window__views.cc
index ac06069a2ff5..98ac0b5e2206 100644
--- a/devel/electron42/files/patch-electron_shell_browser_native__window__views.cc
+++ b/devel/electron42/files/patch-electron_shell_browser_native__window__views.cc
@@ -1,4 +1,4 @@
---- electron/shell/browser/native_window_views.cc.orig	2026-05-26 16:24:13 UTC
+--- electron/shell/browser/native_window_views.cc.orig	2026-06-09 06:05:33 UTC
 +++ electron/shell/browser/native_window_views.cc
 @@ -58,7 +58,7 @@
  #include "ui/wm/core/shadow_types.h"
@@ -9,7 +9,7 @@
  #include "base/notimplemented.h"
  #include "shell/browser/browser.h"
  #include "shell/browser/linux/unity_service.h"
-@@ -292,7 +292,7 @@ NativeWindowViews::NativeWindowViews(const int32_t bas
+@@ -291,7 +291,7 @@ NativeWindowViews::NativeWindowViews(const int32_t bas
      params.parent = parent->GetNativeWindow();
  
    params.native_widget = new ElectronDesktopNativeWidgetAura{this, widget()};
@@ -18,7 +18,7 @@
    // Set the WM_CLASS and XDG App ID to the same value
    // for best compatibility with both X11 and Wayland.
    const auto app_id = platform_util::GetXdgAppId();
-@@ -322,7 +322,7 @@ NativeWindowViews::NativeWindowViews(const int32_t bas
+@@ -321,7 +321,7 @@ NativeWindowViews::NativeWindowViews(const int32_t bas
    std::string window_type;
    options.Get(options::kType, &window_type);
  
@@ -27,16 +27,7 @@
    // Set _GTK_THEME_VARIANT to dark if we have "dark-theme" option set.
    if (options.ValueOrDefault(options::kDarkTheme, false))
      SetGTKDarkThemeEnabled(true);
-@@ -443,7 +443,7 @@ NativeWindowViews::NativeWindowViews(const int32_t bas
-   if (window)
-     window->AddPreTargetHandler(this);
- 
--#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN)
-+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD)
-   // The initial params.bounds was applied before the frame view existed, so
-   // non-client insets weren't accounted for and bounds need to be set again.
-   if (!GetRestoredFrameBorderInsets().IsEmpty())
-@@ -518,7 +518,7 @@ void NativeWindowViews::SetGTKDarkThemeEnabled(bool us
+@@ -513,7 +513,7 @@ void NativeWindowViews::SetGTKDarkThemeEnabled(bool us
  }
  
  void NativeWindowViews::SetGTKDarkThemeEnabled(bool use_dark_theme) {
@@ -45,7 +36,7 @@
    if (x11_util::IsX11()) {
      const std::string color = use_dark_theme ? "dark" : "light";
      auto* connection = x11::Connection::Get();
-@@ -579,7 +579,7 @@ void NativeWindowViews::Show() {
+@@ -574,7 +574,7 @@ void NativeWindowViews::Show() {
  
    NotifyWindowShow();
  
@@ -54,7 +45,7 @@
    if (global_menu_bar_)
      global_menu_bar_->OnWindowMapped();
  
-@@ -595,7 +595,7 @@ void NativeWindowViews::ShowInactive() {
+@@ -590,7 +590,7 @@ void NativeWindowViews::ShowInactive() {
  
    NotifyWindowShow();
  
@@ -63,7 +54,7 @@
    if (global_menu_bar_)
      global_menu_bar_->OnWindowMapped();
  
-@@ -614,7 +614,7 @@ void NativeWindowViews::Hide() {
+@@ -609,7 +609,7 @@ void NativeWindowViews::Hide() {
  
    NotifyWindowHide();
  
@@ -72,7 +63,7 @@
    if (global_menu_bar_)
      global_menu_bar_->OnWindowUnmapped();
  #endif
-@@ -645,7 +645,7 @@ bool NativeWindowViews::IsEnabled() const {
+@@ -640,7 +640,7 @@ bool NativeWindowViews::IsEnabled() const {
  bool NativeWindowViews::IsEnabled() const {
  #if BUILDFLAG(IS_WIN)
    return ::IsWindowEnabled(GetAcceleratedWidget());
@@ -81,7 +72,7 @@
    if (x11_util::IsX11())
      return !event_disabler_.get();
    NOTIMPLEMENTED();
-@@ -870,7 +870,7 @@ void NativeWindowViews::SetBounds(const gfx::Rect& bou
+@@ -865,7 +865,7 @@ void NativeWindowViews::SetBounds(const gfx::Rect& bou
    }
  #endif
  
@@ -90,7 +81,7 @@
    // On Linux and Windows the minimum and maximum size should be updated with
    // window size when window is not resizable.
    if (!CanResize()) {
-@@ -925,7 +925,7 @@ void NativeWindowViews::SetContentSizeConstraints(
+@@ -920,7 +920,7 @@ void NativeWindowViews::SetContentSizeConstraints(
    // of this to determine whether native widget has initialized.
    if (widget() && widget()->widget_delegate())
      widget()->OnSizeConstraintsChanged();
@@ -99,7 +90,7 @@
    if (resizable_)
      old_size_constraints_ = GetSizeConstraints();
  #endif
-@@ -1140,7 +1140,7 @@ bool NativeWindowViews::IsClosable() const {
+@@ -1135,7 +1135,7 @@ bool NativeWindowViews::IsClosable() const {
      return false;
    }
    return !(info.fState & MFS_DISABLED);
@@ -108,16 +99,7 @@
    return true;
  #endif
  }
-@@ -1180,7 +1180,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() {
--#if BUILDFLAG(IS_LINUX)
-+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)
-   auto display =
-       display::Screen::Get()->GetDisplayNearestWindow(GetNativeWindow());
-   gfx::Rect window_bounds_in_screen = display.work_area();
-@@ -1284,7 +1284,7 @@ void NativeWindowViews::SetBackgroundColor(SkColor bac
+@@ -1276,7 +1276,7 @@ void NativeWindowViews::SetBackgroundColor(SkColor bac
    InvalidateRect(GetAcceleratedWidget(), nullptr, 1);
  #endif
    SkColor compositor_color = background_color;
@@ -126,7 +108,7 @@
    // Widget background needs to stay transparent for CSD shadow regions.
    LinuxFrameLayout* frame_layout = GetLinuxFrameLayout();
    const bool uses_csd =
-@@ -1406,7 +1406,7 @@ void NativeWindowViews::SetMenu(ElectronMenuModel* men
+@@ -1398,7 +1398,7 @@ void NativeWindowViews::SetMenu(ElectronMenuModel* men
  }
  
  void NativeWindowViews::SetMenu(ElectronMenuModel* menu_model) {
@@ -135,7 +117,7 @@
    // Remove global menu bar.
    if (global_menu_bar_ && menu_model == nullptr) {
      global_menu_bar_.reset();
-@@ -1462,7 +1462,7 @@ void NativeWindowViews::SetParentWindow(NativeWindow* 
+@@ -1454,7 +1454,7 @@ void NativeWindowViews::SetParentWindow(NativeWindow* 
  void NativeWindowViews::SetParentWindow(NativeWindow* parent) {
    NativeWindow::SetParentWindow(parent);
  
@@ -144,7 +126,7 @@
    if (x11_util::IsX11()) {
      auto* connection = x11::Connection::Get();
      connection->SetProperty(
-@@ -1524,7 +1524,7 @@ void NativeWindowViews::SetProgressBar(double progress
+@@ -1516,7 +1516,7 @@ void NativeWindowViews::SetProgressBar(double progress
                                         NativeWindow::ProgressState state) {
  #if BUILDFLAG(IS_WIN)
    taskbar_host_.SetProgressBar(GetAcceleratedWidget(), progress, state);
@@ -153,7 +135,7 @@
    if (unity::IsRunning()) {
      unity::SetProgressFraction(progress);
    }
-@@ -1650,7 +1650,7 @@ content::DesktopMediaID NativeWindowViews::GetDesktopM
+@@ -1642,7 +1642,7 @@ content::DesktopMediaID NativeWindowViews::GetDesktopM
  #if BUILDFLAG(IS_WIN)
    window_handle =
        reinterpret_cast<content::DesktopMediaID::Id>(accelerated_widget);
@@ -162,7 +144,7 @@
    window_handle = static_cast<uint32_t>(accelerated_widget);
  #endif
    aura::WindowTreeHost* const host =
-@@ -1780,7 +1780,7 @@ void NativeWindowViews::SetIcon(HICON window_icon, HIC
+@@ -1772,7 +1772,7 @@ void NativeWindowViews::SetIcon(HICON window_icon, HIC
    SendMessage(hwnd, WM_SETICON, ICON_BIG,
                reinterpret_cast<LPARAM>(app_icon_.get()));
  }
@@ -171,7 +153,7 @@
  void NativeWindowViews::SetIcon(const gfx::ImageSkia& icon) {
    auto* tree_host = views::DesktopWindowTreeHostLinux::GetHostForWidget(
        GetAcceleratedWidget());
-@@ -1901,7 +1901,7 @@ bool NativeWindowViews::CanMinimize() const {
+@@ -1893,7 +1893,7 @@ bool NativeWindowViews::CanMinimize() const {
  bool NativeWindowViews::CanMinimize() const {
  #if BUILDFLAG(IS_WIN)
    return minimizable_;
@@ -180,7 +162,7 @@
    return true;
  #endif
  }
-@@ -1935,7 +1935,7 @@ std::unique_ptr<views::FrameView> NativeWindowViews::C
+@@ -1927,7 +1927,7 @@ std::unique_ptr<views::FrameView> NativeWindowViews::C
  #endif
  }
  
@@ -189,7 +171,7 @@
  LinuxFrameLayout* NativeWindowViews::GetLinuxFrameLayout() {
    auto* ncv = widget()->non_client_view();
    if (!ncv)
-@@ -1955,7 +1955,7 @@ void NativeWindowViews::HandleKeyboardEvent(
+@@ -1947,7 +1947,7 @@ void NativeWindowViews::HandleKeyboardEvent(
    if (widget_destroyed_)
      return;
  
@@ -198,7 +180,7 @@
    if (event.windows_key_code == ui::VKEY_BROWSER_BACK)
      NotifyWindowExecuteAppCommand(kBrowserBackward);
    else if (event.windows_key_code == ui::VKEY_BROWSER_FORWARD)
-@@ -1974,7 +1974,7 @@ void NativeWindowViews::OnMouseEvent(ui::MouseEvent* e
+@@ -1966,7 +1966,7 @@ void NativeWindowViews::OnMouseEvent(ui::MouseEvent* e
    // Alt+Click should not toggle menu bar.
    root_view_.ResetAltState();
  
diff --git a/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents.cc b/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents.cc
index eae4187bd261..ce4f709187f7 100644
--- a/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents.cc
+++ b/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/ui/inspectable_web_contents.cc.orig	2026-04-15 14:10:25 UTC
+--- electron/shell/browser/ui/inspectable_web_contents.cc.orig	2026-06-09 06:05:33 UTC
 +++ electron/shell/browser/ui/inspectable_web_contents.cc
-@@ -590,7 +590,7 @@ void InspectableWebContents::LoadCompleted() {
+@@ -592,7 +592,7 @@ void InspectableWebContents::LoadCompleted() {
            dock_state_ = "right";
          }
        }
diff --git a/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents__view.cc b/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents__view.cc
index c8b166b3a9e4..0a7107f17596 100644
--- a/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents__view.cc
+++ b/devel/electron42/files/patch-electron_shell_browser_ui_inspectable__web__contents__view.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/ui/inspectable_web_contents_view.cc.orig	2026-05-08 13:54:01 UTC
+--- electron/shell/browser/ui/inspectable_web_contents_view.cc.orig	2026-06-09 06:05:33 UTC
 +++ electron/shell/browser/ui/inspectable_web_contents_view.cc
-@@ -215,7 +215,7 @@ void InspectableWebContentsView::SetIsDocked(bool dock
+@@ -220,7 +220,7 @@ void InspectableWebContentsView::SetIsDocked(bool dock
      params.delegate = devtools_window_delegate_;
      params.bounds = inspectable_web_contents()->dev_tools_bounds();
  
diff --git a/devel/electron42/files/patch-electron_spec_api-browser-window-spec.ts b/devel/electron42/files/patch-electron_spec_api-browser-window-spec.ts
index ead7f7c80df5..4fa9740473dd 100644
--- a/devel/electron42/files/patch-electron_spec_api-browser-window-spec.ts
+++ b/devel/electron42/files/patch-electron_spec_api-browser-window-spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/api-browser-window-spec.ts.orig	2026-06-03 19:18:10 UTC
+--- electron/spec/api-browser-window-spec.ts.orig	2026-06-09 06:05:33 UTC
 +++ electron/spec/api-browser-window-spec.ts
-@@ -89,7 +89,7 @@ describe('BrowserWindow module', () => {
+@@ -100,7 +100,7 @@ describe('BrowserWindow module', () => {
        }).not.to.throw();
      });
  
@@ -9,7 +9,7 @@
        const appPath = path.join(fixtures, 'apps', 'xwindow-icon');
        const appProcess = childProcess.spawn(process.execPath, [appPath]);
        await once(appProcess, 'exit');
-@@ -346,7 +346,7 @@ describe('BrowserWindow module', () => {
+@@ -365,7 +365,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -18,7 +18,7 @@
      afterEach(closeAllWindows);
      it('can set content protection', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -1335,7 +1335,7 @@ describe('BrowserWindow module', () => {
+@@ -1354,7 +1354,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;
-@@ -1352,7 +1352,7 @@ describe('BrowserWindow module', () => {
+@@ -1371,7 +1371,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();
-@@ -1417,7 +1417,7 @@ describe('BrowserWindow module', () => {
+@@ -1436,7 +1436,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 });
-@@ -1520,7 +1520,7 @@ describe('BrowserWindow module', () => {
+@@ -1539,7 +1539,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 });
-@@ -2039,7 +2039,7 @@ describe('BrowserWindow module', () => {
+@@ -2072,7 +2072,7 @@ describe('BrowserWindow module', () => {
          });
        });
  
@@ -63,7 +63,7 @@
          it('checks normal bounds when maximized', async () => {
            const bounds = w.getBounds();
            const maximize = once(w, 'maximize');
-@@ -2257,7 +2257,7 @@ describe('BrowserWindow module', () => {
+@@ -2290,7 +2290,7 @@ describe('BrowserWindow module', () => {
          });
        });
  
@@ -72,7 +72,7 @@
          it('checks normal bounds when minimized', async () => {
            const bounds = w.getBounds();
            const minimize = once(w, 'minimize');
-@@ -3365,7 +3365,7 @@ describe('BrowserWindow module', () => {
+@@ -3398,7 +3398,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);
-@@ -3391,7 +3391,7 @@ describe('BrowserWindow module', () => {
+@@ -3424,7 +3424,7 @@ describe('BrowserWindow module', () => {
        });
      });
  
@@ -90,7 +90,7 @@
        it('sets 1 regardless of parameter', () => {
          const w = new BrowserWindow({ show: false });
          w.setOpacity(0);
-@@ -3631,7 +3631,7 @@ describe('BrowserWindow module', () => {
+@@ -3664,7 +3664,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();
-@@ -3698,7 +3698,7 @@ describe('BrowserWindow module', () => {
+@@ -3731,7 +3731,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();
-@@ -4593,7 +4593,7 @@ describe('BrowserWindow module', () => {
+@@ -4650,7 +4650,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 {
-@@ -5109,7 +5109,7 @@ describe('BrowserWindow module', () => {
+@@ -5166,7 +5166,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 });
-@@ -5385,7 +5385,7 @@ describe('BrowserWindow module', () => {
+@@ -5442,7 +5442,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 @@
        'should bring a minimized maximized window back to maximized state',
        async () => {
          const w = new BrowserWindow({});
-@@ -5403,7 +5403,7 @@ describe('BrowserWindow module', () => {
+@@ -5460,7 +5460,7 @@ describe('BrowserWindow module', () => {
        }
      );
  
@@ -144,7 +144,7 @@
        const w = new BrowserWindow({ show: false });
        w.show();
  
-@@ -5426,7 +5426,7 @@ describe('BrowserWindow module', () => {
+@@ -5483,7 +5483,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 });
-@@ -5463,7 +5463,7 @@ describe('BrowserWindow module', () => {
+@@ -5520,7 +5520,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();
-@@ -5961,7 +5961,7 @@ describe('BrowserWindow module', () => {
+@@ -6018,7 +6018,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');
  
-@@ -6214,7 +6214,7 @@ describe('BrowserWindow module', () => {
+@@ -6271,7 +6271,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -180,7 +180,7 @@
      // Not implemented on Linux.
      afterEach(closeAllWindows);
  
-@@ -7532,7 +7532,7 @@ describe('BrowserWindow module', () => {
+@@ -7589,7 +7589,7 @@ describe('BrowserWindow module', () => {
    describe('"transparent" option', () => {
      afterEach(closeAllWindows);
  
diff --git a/devel/electron42/files/patch-electron_spec_api-menu-spec.ts b/devel/electron42/files/patch-electron_spec_api-menu-spec.ts
index 8016e4ef1ebb..5a21975ec2b2 100644
--- a/devel/electron42/files/patch-electron_spec_api-menu-spec.ts
+++ b/devel/electron42/files/patch-electron_spec_api-menu-spec.ts
@@ -1,6 +1,6 @@
---- electron/spec/api-menu-spec.ts.orig	2026-05-07 20:19:20 UTC
+--- electron/spec/api-menu-spec.ts.orig	2026-06-09 06:05:33 UTC
 +++ electron/spec/api-menu-spec.ts
-@@ -893,7 +893,7 @@ describe('Menu module', function () {
+@@ -930,7 +930,7 @@ describe('Menu module', function () {
      // https://github.com/electron/electron/issues/35724
      // Maximizing window is enough to trigger the bug
      // FIXME(dsanders11): Test always passes on CI, even pre-fix
diff --git a/devel/electron42/files/patch-electron_spec_api-web-contents-spec.ts b/devel/electron42/files/patch-electron_spec_api-web-contents-spec.ts
index b0a97a5e45b3..ea77e5266e97 100644
--- a/devel/electron42/files/patch-electron_spec_api-web-contents-spec.ts
+++ b/devel/electron42/files/patch-electron_spec_api-web-contents-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec/api-web-contents-spec.ts.orig	2026-05-19 01:17:05 UTC
+--- electron/spec/api-web-contents-spec.ts.orig	2026-06-09 06:05:33 UTC
 +++ electron/spec/api-web-contents-spec.ts
 @@ -1337,7 +1337,7 @@ describe('webContents module', () => {
      // back to OpenFolder() which does a blocking DirectoryExists() on the UI
@@ -9,7 +9,7 @@
        'reveals paths under a registered workspace folder without executing them',
        async () => {
          const w = new BrowserWindow({ show: false });
-@@ -3163,7 +3163,7 @@ describe('webContents module', () => {
+@@ -3215,7 +3215,7 @@ describe('webContents module', () => {
      });
  
      // TODO(codebytere): OOPIF printing is disabled on Linux at the moment due to crashes.
diff --git a/devel/electron42/files/patch-media_base_video__frame.cc b/devel/electron42/files/patch-media_base_video__frame.cc
index 62a97c58dca7..cf9e3be61e20 100644
--- a/devel/electron42/files/patch-media_base_video__frame.cc
+++ b/devel/electron42/files/patch-media_base_video__frame.cc
@@ -1,4 +1,4 @@
---- media/base/video_frame.cc.orig	2026-04-28 21:06:17 UTC
+--- media/base/video_frame.cc.orig	2026-06-02 17:55:02 UTC
 +++ media/base/video_frame.cc
 @@ -86,7 +86,7 @@ std::string VideoFrame::StorageTypeToString(
        return "OWNED_MEMORY";
@@ -27,7 +27,7 @@
  // static
  scoped_refptr<VideoFrame> VideoFrame::WrapExternalDmabufs(
      const VideoFrameLayout& layout,
-@@ -1421,7 +1421,7 @@ scoped_refptr<gpu::ClientSharedImage> VideoFrame::shar
+@@ -1437,7 +1437,7 @@ scoped_refptr<gpu::ClientSharedImage> VideoFrame::shar
    return wrapped_frame_ ? wrapped_frame_->shared_image() : shared_image_;
  }
  
diff --git a/devel/electron42/files/patch-media_gpu_chromeos_libyuv__image__processor__backend.cc b/devel/electron42/files/patch-media_gpu_chromeos_libyuv__image__processor__backend.cc
index c6206f335643..e4e9284a4032 100644
--- a/devel/electron42/files/patch-media_gpu_chromeos_libyuv__image__processor__backend.cc
+++ b/devel/electron42/files/patch-media_gpu_chromeos_libyuv__image__processor__backend.cc
@@ -1,4 +1,4 @@
---- media/gpu/chromeos/libyuv_image_processor_backend.cc.orig	2026-03-13 16:54:03 UTC
+--- media/gpu/chromeos/libyuv_image_processor_backend.cc.orig	2026-06-02 17:55:02 UTC
 +++ media/gpu/chromeos/libyuv_image_processor_backend.cc
 @@ -48,7 +48,7 @@ static constexpr struct {
  #define CONV(in, out, trans, result) \
@@ -9,7 +9,7 @@
      CONV(NV12, AR24, kConversion, Supported),
  #endif
      CONV(NV12, NV12, kConversion, Supported),
-@@ -409,7 +409,7 @@ int LibYUVImageProcessorBackend::DoConversion(const Fr
+@@ -422,7 +422,7 @@ int LibYUVImageProcessorBackend::DoConversion(const Fr
            fr->GetWritableVisibleData(VideoFrame::Plane::kUV)), \
        fr->stride(VideoFrame::Plane::kUV)
  
@@ -18,7 +18,7 @@
  #define ARGB_DATA(fr)                                   \
    fr->GetWritableVisibleData(VideoFrame::Plane::kARGB), \
        fr->stride(VideoFrame::Plane::kARGB)
-@@ -571,7 +571,7 @@ int LibYUVImageProcessorBackend::DoConversion(const Fr
+@@ -584,7 +584,7 @@ int LibYUVImageProcessorBackend::DoConversion(const Fr
      }
    }
  
diff --git a/devel/electron42/files/patch-third__party_electron__node_deps_uv_src_unix_pipe.c b/devel/electron42/files/patch-third__party_electron__node_deps_uv_src_unix_pipe.c
index 7305f048dbfc..1f1af9e1afc2 100644
--- a/devel/electron42/files/patch-third__party_electron__node_deps_uv_src_unix_pipe.c
+++ b/devel/electron42/files/patch-third__party_electron__node_deps_uv_src_unix_pipe.c
@@ -1,6 +1,6 @@
---- third_party/electron_node/deps/uv/src/unix/pipe.c.orig	2025-06-24 07:41:14 UTC
+--- third_party/electron_node/deps/uv/src/unix/pipe.c.orig	2026-05-20 13:16:17 UTC
 +++ third_party/electron_node/deps/uv/src/unix/pipe.c
-@@ -209,9 +209,13 @@ int uv_pipe_open(uv_pipe_t* handle, uv_file fd) {
+@@ -208,9 +208,13 @@ int uv_pipe_open(uv_pipe_t* handle, uv_file fd) {
    if (mode == -1)
      return UV__ERR(errno); /* according to docs, must be EBADF */
  
diff --git a/devel/electron42/files/patch-ui_accessibility_ax__tree.cc b/devel/electron42/files/patch-ui_accessibility_ax__tree.cc
index 09996675e053..581312ee7491 100644
--- a/devel/electron42/files/patch-ui_accessibility_ax__tree.cc
+++ b/devel/electron42/files/patch-ui_accessibility_ax__tree.cc
@@ -1,4 +1,4 @@
---- ui/accessibility/ax_tree.cc.orig	2026-04-28 21:06:17 UTC
+--- ui/accessibility/ax_tree.cc.orig	2026-06-02 17:55:02 UTC
 +++ ui/accessibility/ax_tree.cc
 @@ -699,7 +699,7 @@ struct AXTreeUpdateState {
    // (crrev.com/c/2892259).
@@ -36,7 +36,7 @@
    if (update_state.should_clear_extra_announcement_nodes) {
      ClearExtraAnnouncementNodes();
    }
-@@ -2198,7 +2198,7 @@ void AXTree::NotifyNodeAttributesWillChange(
+@@ -2204,7 +2204,7 @@ void AXTree::NotifyNodeAttributesWillChange(
                      new_data);
  }
  
@@ -45,7 +45,7 @@
  void AXTree::ClearExtraAnnouncementNodes() {
    if (!extra_announcement_nodes_) {
      return;
-@@ -2599,7 +2599,7 @@ bool AXTree::CreateNewChildVector(
+@@ -2605,7 +2605,7 @@ bool AXTree::CreateNewChildVector(
      AXTreeUpdateState* update_state) {
    DCHECK(GetTreeUpdateInProgressState());
    bool success = true;
diff --git a/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc b/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc
index 7d8ea3b3e28f..3fe606b3c5b9 100644
--- a/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc
+++ b/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__drag__drop__client__ozone.cc
@@ -1,6 +1,6 @@
---- ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.cc.orig	2025-03-24 20:50:14 UTC
+--- ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.cc.orig	2026-06-02 17:55:02 UTC
 +++ ui/views/widget/desktop_aura/desktop_drag_drop_client_ozone.cc
-@@ -203,7 +203,7 @@ DragOperation DesktopDragDropClientOzone::StartDragAnd
+@@ -218,7 +218,7 @@ DragOperation DesktopDragDropClientOzone::StartDragAnd
    return selected_operation_;
  }
  
diff --git a/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc b/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc
index 4ded11ac8e55..73e8b0e97c07 100644
--- a/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc
+++ b/devel/electron42/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc
@@ -1,4 +1,4 @@
---- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig	2026-05-18 23:17:45 UTC
+--- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig	2026-06-13 08:19:50 UTC
 +++ ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
 @@ -51,7 +51,7 @@
  #include "ui/wm/core/window_util.h"
@@ -18,7 +18,7 @@
        std::make_unique<DesktopDragDropClientOzoneLinux>(window(), drag_handler);
  #else
        std::make_unique<DesktopDragDropClientOzone>(window(), drag_handler);
-@@ -1239,7 +1239,7 @@ bool DesktopWindowTreeHostPlatform::RotateFocusForWidg
+@@ -1243,7 +1243,7 @@ bool DesktopWindowTreeHostPlatform::RotateFocusForWidg
  // DesktopWindowTreeHost:
  
  // Linux subclasses this host and adds some Linux specific bits.


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a2d6703.24229.7614b022>