git: ad44cbf959d1 - main - devel/electron12: update to 12.2.2

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Thu, 11 Nov 2021 04:58:10 UTC
The branch main has been updated by tagattie:

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

commit ad44cbf959d1fdd35b3fc156740ee318f08743a4
Author:     Hiroki Tagato <tagattie@FreeBSD.org>
AuthorDate: 2021-11-11 04:54:15 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2021-11-11 04:57:44 +0000

    devel/electron12: update to 12.2.2
    
    While here, mark as BROKEN on i386. Build on i386 fails with the error
    "LLVM ERROR: out of memory" while linking
    v8_context_snapshot_generator.
    
    Changelog:
    - https://github.com/electron/electron/releases/tag/v12.0.10
    - https://github.com/electron/electron/releases/tag/v12.0.11
    - https://github.com/electron/electron/releases/tag/v12.0.12
    - https://github.com/electron/electron/releases/tag/v12.0.13
    - https://github.com/electron/electron/releases/tag/v12.0.14
    - https://github.com/electron/electron/releases/tag/v12.0.15
    - https://github.com/electron/electron/releases/tag/v12.0.16
    - https://github.com/electron/electron/releases/tag/v12.0.17
    - https://github.com/electron/electron/releases/tag/v12.0.18
    - https://github.com/electron/electron/releases/tag/v12.1.0
    - https://github.com/electron/electron/releases/tag/v12.1.1
    - https://github.com/electron/electron/releases/tag/v12.1.2
    - https://github.com/electron/electron/releases/tag/v12.2.0
    - https://github.com/electron/electron/releases/tag/v12.2.1
    - https://github.com/electron/electron/releases/tag/v12.2.2
---
 devel/electron12/Makefile                          |  3 +-
 devel/electron12/Makefile.version                  |  2 +-
 devel/electron12/distinfo                          | 10 ++--
 devel/electron12/files/package.json                |  2 +-
 ...r_renderer__host_render__process__host__impl.cc |  4 +-
 .../files/patch-electron_lib_browser_rpc-server.ts |  4 +-
 .../files/patch-electron_script_lib_config.py      |  8 +--
 .../files/patch-electron_script_lib_utils.js       |  4 +-
 .../patch-electron_shell_app_electron__main.cc     |  6 +--
 ...lectron_shell_browser_api_electron__api__app.cc | 12 ++---
 ...hell_browser_api_electron__api__base__window.cc |  4 +-
 ...ell_browser_api_electron__api__web__contents.cc | 14 ++---
 ...hell_browser_api_electron__api__web__contents.h |  4 +-
 ...shell_browser_electron__browser__main__parts.cc | 18 +++----
 ...electron_shell_browser_native__window__views.cc | 60 ++++++++--------------
 ...-electron_shell_browser_native__window__views.h | 11 +---
 ...iews_inspectable__web__contents__view__views.cc |  4 +-
 ...ch-electron_shell_browser_ui_views_menu__bar.cc |  6 +--
 ...electron_shell_common_api_electron__bindings.cc |  6 +--
 .../patch-electron_shell_common_node__bindings.cc  |  6 +--
 ...h-electron_spec-main_api-browser-window-spec.ts | 12 ++---
 ...tch-electron_spec-main_api-web-contents-spec.ts |  4 +-
 .../patch-electron_spec-main_chromium-spec.ts      |  6 +--
 .../patch-electron_spec-main_version-bump-spec.ts  |  6 +--
 ..._url__request_url__request__context__builder.cc |  6 +--
 .../files/patch-ui_compositor_compositor.cc        |  4 +-
 ...__aura_desktop__window__tree__host__platform.cc |  4 +-
 devel/electron12/files/yarn.lock                   | 18 +++++--
 28 files changed, 115 insertions(+), 133 deletions(-)

diff --git a/devel/electron12/Makefile b/devel/electron12/Makefile
index af80d2a90451..84767a63fbe7 100644
--- a/devel/electron12/Makefile
+++ b/devel/electron12/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	electron
 DISTVERSIONPREFIX=	v
 DISTVERSION=	${ELECTRON_VER:S/-beta./.b/}
-PORTREVISION=	2
 CATEGORIES=	devel java
 MASTER_SITES=	https://commondatastorage.googleapis.com/chromium-browser-official/:chromium \
 		https://commondatastorage.googleapis.com/chromium-fonts/:chromium_testfonts
@@ -17,6 +16,8 @@ COMMENT=	Build cross-platform desktop apps with JavaScript, HTML, and CSS
 LICENSE=	MIT
 LICENSE_FILE=	${WRKSRC}/electron/LICENSE
 
+BROKEN_i386=	LLVM ERROR: out of memory
+
 FETCH_DEPENDS=		yarn-node14>0:www/yarn-node14
 EXTRACT_DEPENDS=	yarn-node14>0:www/yarn-node14
 PATCH_DEPENDS=		git:devel/git
diff --git a/devel/electron12/Makefile.version b/devel/electron12/Makefile.version
index 5fcb64dc06ab..474578e6cec3 100644
--- a/devel/electron12/Makefile.version
+++ b/devel/electron12/Makefile.version
@@ -1,2 +1,2 @@
-ELECTRON_VER=	12.0.9
+ELECTRON_VER=	12.2.2
 ELECTRON_VER_MAJOR=	${ELECTRON_VER:C/\..*//}
diff --git a/devel/electron12/distinfo b/devel/electron12/distinfo
index 1ac75fbe82d8..161e7e5bf446 100644
--- a/devel/electron12/distinfo
+++ b/devel/electron12/distinfo
@@ -1,12 +1,12 @@
-TIMESTAMP = 1621488488
+TIMESTAMP = 1636357851
 SHA256 (electron/chromium-89.0.4389.128.tar.xz) = 1a75ea6aeb98f2d3b6feae1fbf5692679e93d5b7631bc7c762dd873499deda5b
 SIZE (electron/chromium-89.0.4389.128.tar.xz) = 890850492
 SHA256 (electron/cd96fc55dc243f6c6f4cb63ad117cad6cd48dceb) = ec973eccd669d417fbf2d0a4dac730744a3174268ff062db5451b55c82bc3492
 SIZE (electron/cd96fc55dc243f6c6f4cb63ad117cad6cd48dceb) = 26759650
-SHA256 (electron/electron-yarn-cache-12.0.9.tar.xz) = 1ff7d74d4523d886375f9c695f47dcaa5e5754fd719a6547fbd276f440c3298c
-SIZE (electron/electron-yarn-cache-12.0.9.tar.xz) = 33907800
-SHA256 (electron/electron-electron-v12.0.9_GH0.tar.gz) = 1b4073baa3e93bb410591688b7ca6e59201ae9c8cf18f05e5a05ecfd7ffebfc8
-SIZE (electron/electron-electron-v12.0.9_GH0.tar.gz) = 9995422
+SHA256 (electron/electron-yarn-cache-12.2.2.tar.xz) = 10a5a26898b83d2a632df2669b6e7198e0edaedf5d8750ccdeab9953f7d503e5
+SIZE (electron/electron-yarn-cache-12.2.2.tar.xz) = 33923480
+SHA256 (electron/electron-electron-v12.2.2_GH0.tar.gz) = a029cb83e11dd5bcca7c9ea19ecf07ff52cb6f4898b68e23488425d81236aac2
+SIZE (electron/electron-electron-v12.2.2_GH0.tar.gz) = 10224051
 SHA256 (electron/nodejs-node-v14.16.0_GH0.tar.gz) = bcdf869b0743405515ee897b1047b5e851a717e426b4974d26537c9b10dfd53a
 SIZE (electron/nodejs-node-v14.16.0_GH0.tar.gz) = 87850748
 SHA256 (electron/nodejs-nan-2c4ee8a32a299eada3cd6e468bbd0a473bfea96d_GH0.tar.gz) = e4ff33afb043329429c9551d3cc983786553a310a7d61ee313485ba3ac9b2b15
diff --git a/devel/electron12/files/package.json b/devel/electron12/files/package.json
index d343bf4941a9..85417ffabab7 100644
--- a/devel/electron12/files/package.json
+++ b/devel/electron12/files/package.json
@@ -1,6 +1,6 @@
 {
   "name": "electron",
-  "version": "12.0.9",
+  "version": "12.2.2",
   "repository": "https://github.com/electron/electron",
   "description": "Build cross platform desktop apps with JavaScript, HTML, and CSS",
   "devDependencies": {
diff --git a/devel/electron12/files/patch-content_browser_renderer__host_render__process__host__impl.cc b/devel/electron12/files/patch-content_browser_renderer__host_render__process__host__impl.cc
index 1c89b86ff49c..611320371b43 100644
--- a/devel/electron12/files/patch-content_browser_renderer__host_render__process__host__impl.cc
+++ b/devel/electron12/files/patch-content_browser_renderer__host_render__process__host__impl.cc
@@ -1,4 +1,4 @@
---- content/browser/renderer_host/render_process_host_impl.cc.orig	2021-04-22 07:51:50 UTC
+--- content/browser/renderer_host/render_process_host_impl.cc.orig	2021-11-08 08:20:48 UTC
 +++ content/browser/renderer_host/render_process_host_impl.cc
 @@ -230,7 +230,7 @@
  #include "third_party/blink/public/mojom/android_font_lookup/android_font_lookup.mojom.h"
@@ -45,7 +45,7 @@
    int flags = renderer_prefix.empty() ? ChildProcessHost::CHILD_ALLOW_SELF
                                        : ChildProcessHost::CHILD_NORMAL;
  #elif defined(OS_MAC)
-@@ -3181,8 +3181,8 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin
+@@ -3184,8 +3184,8 @@ void RenderProcessHostImpl::PropagateBrowserCommandLin
      switches::kDisableInProcessStackTraces,
      sandbox::policy::switches::kDisableSeccompFilterSandbox,
      sandbox::policy::switches::kNoSandbox,
diff --git a/devel/electron12/files/patch-electron_lib_browser_rpc-server.ts b/devel/electron12/files/patch-electron_lib_browser_rpc-server.ts
index 2cfcffdd4460..ef22699ebc0d 100644
--- a/devel/electron12/files/patch-electron_lib_browser_rpc-server.ts
+++ b/devel/electron12/files/patch-electron_lib_browser_rpc-server.ts
@@ -1,6 +1,6 @@
---- electron/lib/browser/rpc-server.ts.orig	2021-04-20 23:32:33 UTC
+--- electron/lib/browser/rpc-server.ts.orig	2021-10-11 17:12:26 UTC
 +++ electron/lib/browser/rpc-server.ts
-@@ -43,7 +43,7 @@ const allowedClipboardMethods = (() => {
+@@ -47,7 +47,7 @@ const allowedClipboardMethods = (() => {
    switch (process.platform) {
      case 'darwin':
        return new Set(['readFindText', 'writeFindText']);
diff --git a/devel/electron12/files/patch-electron_script_lib_config.py b/devel/electron12/files/patch-electron_script_lib_config.py
index 1ebf3a917f64..61f1c7bf99fb 100644
--- a/devel/electron12/files/patch-electron_script_lib_config.py
+++ b/devel/electron12/files/patch-electron_script_lib_config.py
@@ -1,12 +1,12 @@
---- electron/script/lib/config.py.orig	2021-04-20 23:32:33 UTC
+--- electron/script/lib/config.py.orig	2021-10-11 17:12:26 UTC
 +++ electron/script/lib/config.py
-@@ -19,6 +19,9 @@ BASE_URL = os.getenv('LIBCHROMIUMCONTENT_MIRROR') or \
- PLATFORM = {
+@@ -20,6 +20,9 @@ PLATFORM = {
    'cygwin': 'win32',
+   'msys': 'win32',
    'darwin': 'darwin',
-+  'freebsd11': 'freebsd',
 +  'freebsd12': 'freebsd',
 +  'freebsd13': 'freebsd',
++  'freebsd14': 'freebsd',
    'linux': 'linux',
    'linux2': 'linux',
    'win32': 'win32',
diff --git a/devel/electron12/files/patch-electron_script_lib_utils.js b/devel/electron12/files/patch-electron_script_lib_utils.js
index 5c4247b43d79..d5deafff375c 100644
--- a/devel/electron12/files/patch-electron_script_lib_utils.js
+++ b/devel/electron12/files/patch-electron_script_lib_utils.js
@@ -1,6 +1,6 @@
---- electron/script/lib/utils.js.orig	2021-01-22 23:55:24 UTC
+--- electron/script/lib/utils.js.orig	2021-10-11 17:12:26 UTC
 +++ electron/script/lib/utils.js
-@@ -18,7 +18,7 @@ function getElectronExec () {
+@@ -21,7 +21,7 @@ function getElectronExec () {
        return `out/${OUT_DIR}/Electron.app/Contents/MacOS/Electron`;
      case 'win32':
        return `out/${OUT_DIR}/electron.exe`;
diff --git a/devel/electron12/files/patch-electron_shell_app_electron__main.cc b/devel/electron12/files/patch-electron_shell_app_electron__main.cc
index 4313998993fe..270a5a69281f 100644
--- a/devel/electron12/files/patch-electron_shell_app_electron__main.cc
+++ b/devel/electron12/files/patch-electron_shell_app_electron__main.cc
@@ -1,4 +1,4 @@
---- electron/shell/app/electron_main.cc.orig	2021-04-20 23:32:33 UTC
+--- electron/shell/app/electron_main.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/app/electron_main.cc
 @@ -32,12 +32,12 @@
  #include "shell/app/electron_main_delegate.h"
@@ -15,7 +15,7 @@
  #include <mach-o/dyld.h>
  #include <unistd.h>
  #include <cstdio>
-@@ -212,7 +212,7 @@ int APIENTRY wWinMain(HINSTANCE instance, HINSTANCE, w
+@@ -285,7 +285,7 @@ int APIENTRY wWinMain(HINSTANCE instance, HINSTANCE, w
    return content::ContentMain(params);
  }
  
@@ -24,7 +24,7 @@
  
  int main(int argc, char* argv[]) {
    FixStdioStreams();
-@@ -233,7 +233,7 @@ int main(int argc, char* argv[]) {
+@@ -306,7 +306,7 @@ int main(int argc, char* argv[]) {
    return content::ContentMain(params);
  }
  
diff --git a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__app.cc b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__app.cc
index e944e04a6256..2d4ae34c9024 100644
--- a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__app.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__app.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/api/electron_api_app.cc.orig	2021-04-20 23:32:33 UTC
+--- electron/shell/browser/api/electron_api_app.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/api/electron_api_app.cc
-@@ -655,7 +655,7 @@ void App::OnWillFinishLaunching() {
+@@ -661,7 +661,7 @@ void App::OnWillFinishLaunching() {
  }
  
  void App::OnFinishLaunching(const base::DictionaryValue& launch_info) {
@@ -9,7 +9,7 @@
    // Set the application name for audio streams shown in external
    // applications. Only affects pulseaudio currently.
    media::AudioManager::SetGlobalAppName(Browser::Get()->GetName());
-@@ -1005,7 +1005,7 @@ void App::SetPath(gin_helper::ErrorThrower thrower,
+@@ -1011,7 +1011,7 @@ void App::SetPath(gin_helper::ErrorThrower thrower,
  }
  
  void App::SetDesktopName(const std::string& desktop_name) {
@@ -18,7 +18,7 @@
    std::unique_ptr<base::Environment> env(base::Environment::Create());
    env->SetVar("CHROME_DESKTOP", desktop_name);
  #endif
-@@ -1358,7 +1358,7 @@ std::vector<gin_helper::Dictionary> App::GetAppMetrics
+@@ -1364,7 +1364,7 @@ std::vector<gin_helper::Dictionary> App::GetAppMetrics
        pid_dict.Set("name", process_metric.second->name);
      }
  
@@ -27,7 +27,7 @@
      auto memory_info = process_metric.second->GetMemoryInfo();
  
      gin_helper::Dictionary memory_dict = gin::Dictionary::CreateEmpty(isolate);
-@@ -1571,7 +1571,7 @@ gin::ObjectTemplateBuilder App::GetObjectTemplateBuild
+@@ -1577,7 +1577,7 @@ gin::ObjectTemplateBuilder App::GetObjectTemplateBuild
        .SetMethod(
            "removeAsDefaultProtocolClient",
            base::BindRepeating(&Browser::RemoveAsDefaultProtocolClient, browser))
@@ -36,7 +36,7 @@
        .SetMethod(
            "getApplicationInfoForProtocol",
            base::BindRepeating(&Browser::GetApplicationInfoForProtocol, browser))
-@@ -1628,7 +1628,7 @@ gin::ObjectTemplateBuilder App::GetObjectTemplateBuild
+@@ -1634,7 +1634,7 @@ gin::ObjectTemplateBuilder App::GetObjectTemplateBuild
        .SetMethod("getJumpListSettings", &App::GetJumpListSettings)
        .SetMethod("setJumpList", &App::SetJumpList)
  #endif
diff --git a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__base__window.cc b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__base__window.cc
index 099c7a87b3d9..d7c8b43414cd 100644
--- a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__base__window.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__base__window.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/api/electron_api_base_window.cc.orig	2021-04-22 08:15:23 UTC
+--- electron/shell/browser/api/electron_api_base_window.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/api/electron_api_base_window.cc
-@@ -1037,7 +1037,7 @@ void BaseWindow::SetIconImpl(v8::Isolate* isolate,
+@@ -1041,7 +1041,7 @@ void BaseWindow::SetIconImpl(v8::Isolate* isolate,
    static_cast<NativeWindowViews*>(window_.get())
        ->SetIcon(native_image->GetHICON(GetSystemMetrics(SM_CXSMICON)),
                  native_image->GetHICON(GetSystemMetrics(SM_CXICON)));
diff --git a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.cc b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.cc
index 2600da81a196..e26e109d753d 100644
--- a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/api/electron_api_web_contents.cc.orig	2021-05-19 20:52:49 UTC
+--- electron/shell/browser/api/electron_api_web_contents.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/api/electron_api_web_contents.cc
-@@ -145,11 +145,11 @@
+@@ -148,11 +148,11 @@
  #include "ui/base/cocoa/defaults_utils.h"
  #endif
  
@@ -14,7 +14,7 @@
  #include "ui/gfx/font_render_params.h"
  #endif
  
-@@ -388,7 +388,7 @@ base::Optional<base::TimeDelta> GetCursorBlinkInterval
+@@ -391,7 +391,7 @@ base::Optional<base::TimeDelta> GetCursorBlinkInterval
    base::TimeDelta interval;
    if (ui::TextInsertionCaretBlinkPeriod(&interval))
      return interval;
@@ -23,7 +23,7 @@
    if (auto* linux_ui = views::LinuxUI::instance())
      return linux_ui->GetCursorBlinkInterval();
  #elif defined(OS_WIN)
-@@ -801,7 +801,7 @@ void WebContents::InitWithSessionAndOptions(
+@@ -804,7 +804,7 @@ void WebContents::InitWithSessionAndOptions(
    accept_languages.pop_back();
    prefs->accept_languages = accept_languages;
  
@@ -32,7 +32,7 @@
    // Update font settings.
    static const base::NoDestructor<gfx::FontRenderParams> params(
        gfx::GetFontRenderParams(gfx::FontRenderParamsQuery(), nullptr));
-@@ -2123,7 +2123,7 @@ void WebContents::ForcefullyCrashRenderer() {
+@@ -2136,7 +2136,7 @@ void WebContents::ForcefullyCrashRenderer() {
  
    content::RenderProcessHost* rph = rwh->GetProcess();
    if (rph) {
@@ -41,7 +41,7 @@
      // A generic |CrashDumpHungChildProcess()| is not implemented for Linux.
      // Instead we send an explicit IPC to crash on the renderer's IO thread.
      rph->ForceCrash();
-@@ -2689,7 +2689,7 @@ void WebContents::CopyImageAt(int x, int y) {
+@@ -2702,7 +2702,7 @@ void WebContents::CopyImageAt(int x, int y) {
  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.
@@ -50,7 +50,7 @@
    if (owner_window())
      owner_window()->Focus(true);
  #endif
-@@ -3472,7 +3472,7 @@ gfx::ImageSkia WebContents::GetDevToolsWindowIcon() {
+@@ -3565,7 +3565,7 @@ gfx::ImageSkia WebContents::GetDevToolsWindowIcon() {
  }
  #endif
  
diff --git a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.h b/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.h
index ac6b81db2d0c..776cc52225ef 100644
--- a/devel/electron12/files/patch-electron_shell_browser_api_electron__api__web__contents.h
+++ b/devel/electron12/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	2021-05-19 20:52:49 UTC
+--- electron/shell/browser/api/electron_api_web_contents.h.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/api/electron_api_web_contents.h
-@@ -670,7 +670,7 @@ class WebContents : public gin::Wrappable<WebContents>
+@@ -694,7 +694,7 @@ class WebContents : public gin::Wrappable<WebContents>
  #if defined(TOOLKIT_VIEWS) && !defined(OS_MAC)
    gfx::ImageSkia GetDevToolsWindowIcon() override;
  #endif
diff --git a/devel/electron12/files/patch-electron_shell_browser_electron__browser__main__parts.cc b/devel/electron12/files/patch-electron_shell_browser_electron__browser__main__parts.cc
index 5298f213efea..5a1d5e8777df 100644
--- a/devel/electron12/files/patch-electron_shell_browser_electron__browser__main__parts.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_electron__browser__main__parts.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/electron_browser_main_parts.cc.orig	2021-04-20 23:32:33 UTC
+--- electron/shell/browser/electron_browser_main_parts.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/electron_browser_main_parts.cc
-@@ -57,7 +57,7 @@
+@@ -56,7 +56,7 @@
  #include "ui/wm/core/wm_state.h"
  #endif
  
@@ -9,7 +9,7 @@
  #include "base/environment.h"
  #include "base/nix/xdg_util.h"
  #include "base/threading/thread_task_runner_handle.h"
-@@ -155,7 +155,7 @@ base::string16 MediaStringProvider(media::MessageId id
+@@ -154,7 +154,7 @@ base::string16 MediaStringProvider(media::MessageId id
    }
  }
  
@@ -18,7 +18,7 @@
  void OverrideLinuxAppDataPath() {
    base::FilePath path;
    if (base::PathService::Get(DIR_APP_DATA, &path))
-@@ -183,7 +183,7 @@ void UpdateDarkThemeSetting() {
+@@ -182,7 +182,7 @@ void UpdateDarkThemeSetting() {
  
  }  // namespace
  
@@ -27,7 +27,7 @@
  class DarkThemeObserver : public ui::NativeThemeObserver {
   public:
    DarkThemeObserver() = default;
-@@ -233,7 +233,7 @@ int ElectronBrowserMainParts::GetExitCode() {
+@@ -230,7 +230,7 @@ int ElectronBrowserMainParts::GetExitCode() {
  
  int ElectronBrowserMainParts::PreEarlyInitialization() {
    field_trial_list_ = std::make_unique<base::FieldTrialList>(nullptr);
@@ -36,7 +36,7 @@
    OverrideLinuxAppDataPath();
  #endif
  
-@@ -290,7 +290,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
+@@ -287,7 +287,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
  #if defined(USE_AURA)
    display::Screen* screen = views::CreateDesktopScreen();
    display::Screen::SetScreenInstance(screen);
@@ -45,7 +45,7 @@
    views::LinuxUI::instance()->UpdateDeviceScaleFactor();
  #endif
  #endif
-@@ -307,7 +307,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
+@@ -304,7 +304,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
    // happen before the ResourceBundle is loaded
    if (locale.empty())
      l10n_util::OverrideLocaleWithCocoaLocale();
@@ -54,7 +54,7 @@
    // l10n_util::GetApplicationLocaleInternal uses g_get_language_names(),
    // which keys off of getenv("LC_ALL").
    // We must set this env first to make ui::ResourceBundle accept the custom
-@@ -330,7 +330,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
+@@ -327,7 +327,7 @@ int ElectronBrowserMainParts::PreCreateThreads() {
    ElectronBrowserClient::SetApplicationLocale(app_locale);
    fake_browser_process_->SetApplicationLocale(app_locale);
  
@@ -63,7 +63,7 @@
    // Reset to the original LC_ALL since we should not be changing it.
    if (!locale.empty()) {
      if (lc_all)
-@@ -385,7 +385,7 @@ void ElectronBrowserMainParts::ToolkitInitialized() {
+@@ -382,7 +382,7 @@ void ElectronBrowserMainParts::ToolkitInitialized() {
      ui::GtkUiDelegate::SetInstance(gtk_ui_delegate_.get());
    }
  #endif
diff --git a/devel/electron12/files/patch-electron_shell_browser_native__window__views.cc b/devel/electron12/files/patch-electron_shell_browser_native__window__views.cc
index 411ff4d112c9..d5f930a7d742 100644
--- a/devel/electron12/files/patch-electron_shell_browser_native__window__views.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_native__window__views.cc
@@ -1,4 +1,4 @@
---- electron/shell/browser/native_window_views.cc.orig	2021-05-19 20:52:49 UTC
+--- electron/shell/browser/native_window_views.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/native_window_views.cc
 @@ -44,7 +44,7 @@
  #include "ui/wm/core/shadow_types.h"
@@ -27,25 +27,16 @@
    if (parent)
      SetParentWindow(parent);
  #endif
-@@ -332,7 +332,7 @@ NativeWindowViews::NativeWindowViews(const gin_helper:
-     last_window_state_ = ui::SHOW_STATE_NORMAL;
- #endif
- 
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
-   // Listen to move events.
-   aura::Window* window = GetNativeWindow();
+@@ -337,7 +337,7 @@ NativeWindowViews::NativeWindowViews(const gin_helper:
    if (window)
-@@ -352,7 +352,7 @@ NativeWindowViews::~NativeWindowViews() {
-   SetForwardMouseMessages(false);
- #endif
+     window->AddPreTargetHandler(this);
  
 -#if defined(OS_LINUX)
 +#if defined(OS_LINUX) || defined(OS_BSD)
-   aura::Window* window = GetNativeWindow();
-   if (window)
-     window->RemovePreTargetHandler(this);
-@@ -467,7 +467,7 @@ bool NativeWindowViews::IsVisible() {
+   // On linux after the widget is initialized we might have to force set the
+   // bounds if the bounds are smaller than the current display
+   SetBounds(gfx::Rect(GetPosition(), bounds.size()), false);
+@@ -465,7 +465,7 @@ bool NativeWindowViews::IsVisible() {
  bool NativeWindowViews::IsEnabled() {
  #if defined(OS_WIN)
    return ::IsWindowEnabled(GetAcceleratedWidget());
@@ -54,7 +45,7 @@
  #if defined(USE_X11)
    if (!features::IsUsingOzonePlatform()) {
      return !event_disabler_.get();
-@@ -526,7 +526,7 @@ void NativeWindowViews::SetEnabledInternal(bool enable
+@@ -524,7 +524,7 @@ void NativeWindowViews::SetEnabledInternal(bool enable
  #endif
  }
  
@@ -63,7 +54,7 @@
  void NativeWindowViews::Maximize() {
    if (IsVisible())
      widget()->Maximize();
-@@ -642,7 +642,7 @@ bool NativeWindowViews::IsFullscreen() const {
+@@ -640,7 +640,7 @@ bool NativeWindowViews::IsFullscreen() const {
  }
  
  void NativeWindowViews::SetBounds(const gfx::Rect& bounds, bool animate) {
@@ -72,7 +63,7 @@
    // On Linux and Windows the minimum and maximum size should be updated with
    // window size when window is not resizable.
    if (!resizable_) {
-@@ -859,7 +859,7 @@ bool NativeWindowViews::IsClosable() {
+@@ -857,7 +857,7 @@ bool NativeWindowViews::IsClosable() {
      return false;
    }
    return !(info.fState & MFS_DISABLED);
@@ -81,7 +72,7 @@
    return true;
  #endif
  }
-@@ -1235,7 +1235,7 @@ void NativeWindowViews::SetProgressBar(double progress
+@@ -1233,7 +1233,7 @@ void NativeWindowViews::SetProgressBar(double progress
                                         NativeWindow::ProgressState state) {
  #if defined(OS_WIN)
    taskbar_host_.SetProgressBar(GetAcceleratedWidget(), progress, state);
@@ -90,7 +81,7 @@
    if (unity::IsRunning()) {
      unity::SetProgressFraction(progress);
    }
-@@ -1295,7 +1295,7 @@ content::DesktopMediaID NativeWindowViews::GetDesktopM
+@@ -1293,7 +1293,7 @@ content::DesktopMediaID NativeWindowViews::GetDesktopM
  #if defined(OS_WIN)
    window_handle =
        reinterpret_cast<content::DesktopMediaID::Id>(accelerated_widget);
@@ -99,7 +90,7 @@
    window_handle = static_cast<uint32_t>(accelerated_widget);
  #endif
    aura::WindowTreeHost* const host =
-@@ -1398,7 +1398,7 @@ void NativeWindowViews::SetIcon(HICON window_icon, HIC
+@@ -1396,7 +1396,7 @@ void NativeWindowViews::SetIcon(HICON window_icon, HIC
    SendMessage(hwnd, WM_SETICON, ICON_BIG,
                reinterpret_cast<LPARAM>(app_icon_.get()));
  }
@@ -108,16 +99,7 @@
  void NativeWindowViews::SetIcon(const gfx::ImageSkia& icon) {
    auto* tree_host = views::DesktopWindowTreeHostLinux::GetHostForWidget(
        GetAcceleratedWidget());
-@@ -1448,7 +1448,7 @@ void NativeWindowViews::OnWidgetBoundsChanged(views::W
- }
- 
- void NativeWindowViews::OnWidgetDestroying(views::Widget* widget) {
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
-   aura::Window* window = GetNativeWindow();
-   if (window)
-     window->RemovePreTargetHandler(this);
-@@ -1486,7 +1486,7 @@ bool NativeWindowViews::CanMaximize() const {
+@@ -1482,7 +1482,7 @@ bool NativeWindowViews::CanMaximize() const {
  bool NativeWindowViews::CanMinimize() const {
  #if defined(OS_WIN)
    return minimizable_;
@@ -126,7 +108,7 @@
    return true;
  #endif
  }
-@@ -1558,7 +1558,7 @@ void NativeWindowViews::HandleKeyboardEvent(
+@@ -1554,7 +1554,7 @@ void NativeWindowViews::HandleKeyboardEvent(
    if (widget_destroyed_)
      return;
  
@@ -135,12 +117,12 @@
    if (event.windows_key_code == ui::VKEY_BROWSER_BACK)
      NotifyWindowExecuteAppCommand(kBrowserBackward);
    else if (event.windows_key_code == ui::VKEY_BROWSER_FORWARD)
-@@ -1570,7 +1570,7 @@ void NativeWindowViews::HandleKeyboardEvent(
-   root_view_->HandleKeyEvent(event);
- }
+@@ -1573,7 +1573,7 @@ void NativeWindowViews::OnMouseEvent(ui::MouseEvent* e
+   // Alt+Click should not toggle menu bar.
+   root_view_->ResetAltState();
  
 -#if defined(OS_LINUX)
 +#if defined(OS_LINUX) || defined(OS_BSD)
- void NativeWindowViews::OnMouseEvent(ui::MouseEvent* event) {
-   if (event->type() != ui::ET_MOUSE_PRESSED)
-     return;
+   if (event->changed_button_flags() == ui::EF_BACK_MOUSE_BUTTON)
+     NotifyWindowExecuteAppCommand(kBrowserBackward);
+   else if (event->changed_button_flags() == ui::EF_FORWARD_MOUSE_BUTTON)
diff --git a/devel/electron12/files/patch-electron_shell_browser_native__window__views.h b/devel/electron12/files/patch-electron_shell_browser_native__window__views.h
index aeb0716937e4..2bf09b21434a 100644
--- a/devel/electron12/files/patch-electron_shell_browser_native__window__views.h
+++ b/devel/electron12/files/patch-electron_shell_browser_native__window__views.h
@@ -1,4 +1,4 @@
---- electron/shell/browser/native_window_views.h.orig	2021-05-19 20:52:49 UTC
+--- electron/shell/browser/native_window_views.h.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/native_window_views.h
 @@ -163,7 +163,7 @@ class NativeWindowViews : public NativeWindow,
                      LPARAM l_param,
@@ -9,12 +9,3 @@
    void SetIcon(const gfx::ImageSkia& icon);
  #endif
  
-@@ -223,7 +223,7 @@ class NativeWindowViews : public NativeWindow,
-       content::WebContents*,
-       const content::NativeWebKeyboardEvent& event) override;
- 
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_BSD)
-   // ui::EventHandler:
-   void OnMouseEvent(ui::MouseEvent* event) override;
- #endif
diff --git a/devel/electron12/files/patch-electron_shell_browser_ui_views_inspectable__web__contents__view__views.cc b/devel/electron12/files/patch-electron_shell_browser_ui_views_inspectable__web__contents__view__views.cc
index 1db9553ec9a4..33d9baa38c4e 100644
--- a/devel/electron12/files/patch-electron_shell_browser_ui_views_inspectable__web__contents__view__views.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_ui_views_inspectable__web__contents__view__views.cc
@@ -1,6 +1,6 @@
---- electron/shell/browser/ui/views/inspectable_web_contents_view_views.cc.orig	2021-04-22 08:41:03 UTC
+--- electron/shell/browser/ui/views/inspectable_web_contents_view_views.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/ui/views/inspectable_web_contents_view_views.cc
-@@ -186,7 +186,7 @@ void InspectableWebContentsViewViews::SetIsDocked(bool
+@@ -190,7 +190,7 @@ void InspectableWebContentsViewViews::SetIsDocked(bool
      params.delegate = devtools_window_delegate_;
      params.bounds = inspectable_web_contents()->GetDevToolsBounds();
  
diff --git a/devel/electron12/files/patch-electron_shell_browser_ui_views_menu__bar.cc b/devel/electron12/files/patch-electron_shell_browser_ui_views_menu__bar.cc
index b970dac8497e..b2ea7329cc42 100644
--- a/devel/electron12/files/patch-electron_shell_browser_ui_views_menu__bar.cc
+++ b/devel/electron12/files/patch-electron_shell_browser_ui_views_menu__bar.cc
@@ -1,4 +1,4 @@
---- electron/shell/browser/ui/views/menu_bar.cc.orig	2021-04-22 08:42:01 UTC
+--- electron/shell/browser/ui/views/menu_bar.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/browser/ui/views/menu_bar.cc
 @@ -17,7 +17,7 @@
  #include "ui/views/layout/box_layout.h"
@@ -9,7 +9,7 @@
  #include "ui/gtk/gtk_util.h"
  #endif
  
-@@ -291,7 +291,7 @@ void MenuBar::ButtonPressed(int id, const ui::Event& e
+@@ -293,7 +293,7 @@ void MenuBar::ButtonPressed(int id, const ui::Event& e
  void MenuBar::RefreshColorCache() {
    const ui::NativeTheme* theme = GetNativeTheme();
    if (theme) {
@@ -18,7 +18,7 @@
      background_color_ = gtk::GetBgColor("GtkMenuBar#menubar");
      enabled_color_ =
          gtk::GetFgColor("GtkMenuBar#menubar GtkMenuItem#menuitem GtkLabel");
-@@ -329,7 +329,7 @@ void MenuBar::UpdateViewColors() {
+@@ -331,7 +331,7 @@ void MenuBar::UpdateViewColors() {
    // set child colors
    if (menu_model_ == nullptr)
      return;
diff --git a/devel/electron12/files/patch-electron_shell_common_api_electron__bindings.cc b/devel/electron12/files/patch-electron_shell_common_api_electron__bindings.cc
index 9a97341995a2..9d0d8efff2e0 100644
--- a/devel/electron12/files/patch-electron_shell_common_api_electron__bindings.cc
+++ b/devel/electron12/files/patch-electron_shell_common_api_electron__bindings.cc
@@ -1,7 +1,7 @@
---- electron/shell/common/api/electron_bindings.cc.orig	2021-04-20 23:32:33 UTC
+--- electron/shell/common/api/electron_bindings.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/common/api/electron_bindings.cc
-@@ -262,7 +262,7 @@ void ElectronBindings::DidReceiveMemoryDump(
-     if (base::GetCurrentProcId() == dump.pid()) {
+@@ -267,7 +267,7 @@ void ElectronBindings::DidReceiveMemoryDump(
+     if (target_pid == dump.pid()) {
        gin_helper::Dictionary dict = gin::Dictionary::CreateEmpty(isolate);
        const auto& osdump = dump.os_dump();
 -#if defined(OS_LINUX) || defined(OS_WIN)
diff --git a/devel/electron12/files/patch-electron_shell_common_node__bindings.cc b/devel/electron12/files/patch-electron_shell_common_node__bindings.cc
index af1564b8681c..ddfd63a3d3eb 100644
--- a/devel/electron12/files/patch-electron_shell_common_node__bindings.cc
+++ b/devel/electron12/files/patch-electron_shell_common_node__bindings.cc
@@ -1,4 +1,4 @@
---- electron/shell/common/node_bindings.cc.orig	2021-04-20 23:32:33 UTC
+--- electron/shell/common/node_bindings.cc.orig	2021-10-11 17:12:26 UTC
 +++ electron/shell/common/node_bindings.cc
 @@ -35,7 +35,7 @@
  #include "shell/common/node_includes.h"
@@ -9,7 +9,7 @@
  #include "shell/common/crash_keys.h"
  #endif
  
-@@ -146,7 +146,7 @@ bool IsPackagedApp() {
+@@ -150,7 +150,7 @@ bool IsPackagedApp() {
  void V8FatalErrorCallback(const char* location, const char* message) {
    LOG(ERROR) << "Fatal error in V8: " << location << " " << message;
  
@@ -18,7 +18,7 @@
    electron::crash_keys::SetCrashKey("electron.v8-fatal.message", message);
    electron::crash_keys::SetCrashKey("electron.v8-fatal.location", location);
  #endif
-@@ -351,7 +351,7 @@ void NodeBindings::Initialize() {
+@@ -355,7 +355,7 @@ void NodeBindings::Initialize() {
    // Open node's error reporting system for browser process.
    node::g_upstream_node_mode = false;
  
diff --git a/devel/electron12/files/patch-electron_spec-main_api-browser-window-spec.ts b/devel/electron12/files/patch-electron_spec-main_api-browser-window-spec.ts
index ec4235cec755..3f7596e29bc5 100644
--- a/devel/electron12/files/patch-electron_spec-main_api-browser-window-spec.ts
+++ b/devel/electron12/files/patch-electron_spec-main_api-browser-window-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec-main/api-browser-window-spec.ts.orig	2021-05-07 09:22:40 UTC
+--- electron/spec-main/api-browser-window-spec.ts.orig	2021-10-11 17:12:26 UTC
 +++ electron/spec-main/api-browser-window-spec.ts
 @@ -57,7 +57,7 @@ describe('BrowserWindow module', () => {
        }).not.to.throw();
@@ -27,7 +27,7 @@
          it('checks normal bounds when minimized', async () => {
            const bounds = w.getBounds();
            const minimize = emittedOnce(w, 'minimize');
-@@ -1730,7 +1730,7 @@ describe('BrowserWindow module', () => {
+@@ -1737,7 +1737,7 @@ describe('BrowserWindow module', () => {
    describe('BrowserWindow.setOpacity(opacity)', () => {
      afterEach(closeAllWindows);
  
@@ -36,7 +36,7 @@
        it('make window with initial opacity', () => {
          const w = new BrowserWindow({ show: false, opacity: 0.5 });
          expect(w.getOpacity()).to.equal(0.5);
-@@ -1756,7 +1756,7 @@ describe('BrowserWindow module', () => {
+@@ -1763,7 +1763,7 @@ describe('BrowserWindow module', () => {
        });
      });
  
@@ -45,7 +45,7 @@
        it('sets 1 regardless of parameter', () => {
          const w = new BrowserWindow({ show: false });
          w.setOpacity(0);
-@@ -2613,7 +2613,7 @@ describe('BrowserWindow module', () => {
+@@ -2620,7 +2620,7 @@ describe('BrowserWindow module', () => {
          expect(test.version).to.equal(process.version);
          expect(test.versions).to.deep.equal(process.versions);
  
@@ -54,7 +54,7 @@
            expect(test.creationTime).to.be.null('creation time');
            expect(test.systemMemoryInfo).to.be.null('system memory info');
          } else {
-@@ -3206,7 +3206,7 @@ describe('BrowserWindow module', () => {
+@@ -3213,7 +3213,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
@@ -63,7 +63,7 @@
      afterEach(closeAllWindows);
      it('emits an event when window is maximized', async () => {
        const w = new BrowserWindow({ show: false });
-@@ -3784,7 +3784,7 @@ describe('BrowserWindow module', () => {
+@@ -3791,7 +3791,7 @@ describe('BrowserWindow module', () => {
      });
    });
  
diff --git a/devel/electron12/files/patch-electron_spec-main_api-web-contents-spec.ts b/devel/electron12/files/patch-electron_spec-main_api-web-contents-spec.ts
index c14c1e7fdbeb..8402a145ec37 100644
--- a/devel/electron12/files/patch-electron_spec-main_api-web-contents-spec.ts
+++ b/devel/electron12/files/patch-electron_spec-main_api-web-contents-spec.ts
@@ -1,6 +1,6 @@
---- electron/spec-main/api-web-contents-spec.ts.orig	2021-01-22 23:55:24 UTC
+--- electron/spec-main/api-web-contents-spec.ts.orig	2021-10-11 17:12:26 UTC
 +++ electron/spec-main/api-web-contents-spec.ts
-@@ -135,7 +135,7 @@ describe('webContents module', () => {
+@@ -153,7 +153,7 @@ describe('webContents module', () => {
        }).to.throw('webContents.print(): Invalid optional callback provided.');
      });
  
diff --git a/devel/electron12/files/patch-electron_spec-main_chromium-spec.ts b/devel/electron12/files/patch-electron_spec-main_chromium-spec.ts
index 042c11ba4f41..932948c003bc 100644
--- a/devel/electron12/files/patch-electron_spec-main_chromium-spec.ts
+++ b/devel/electron12/files/patch-electron_spec-main_chromium-spec.ts
@@ -1,4 +1,4 @@
---- electron/spec-main/chromium-spec.ts.orig	2021-05-19 20:52:49 UTC
+--- electron/spec-main/chromium-spec.ts.orig	2021-10-11 17:12:26 UTC
 +++ electron/spec-main/chromium-spec.ts
 @@ -397,13 +397,13 @@ describe('command line switches', () => {
      it('should not set an invalid locale', async () => testLocale('asdfkl', currentLocale));
@@ -18,7 +18,7 @@
    });
  
    describe('--remote-debugging-pipe switch', () => {
-@@ -1478,12 +1478,12 @@ describe('font fallback', () => {
+@@ -1535,12 +1535,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>
-@@ -1683,7 +1683,7 @@ describe('navigator.clipboard', () => {
+@@ -1740,7 +1740,7 @@ describe('navigator.clipboard', () => {
    });
  });
  
diff --git a/devel/electron12/files/patch-electron_spec-main_version-bump-spec.ts b/devel/electron12/files/patch-electron_spec-main_version-bump-spec.ts
index 923e38709a5c..80d3424a2297 100644
--- a/devel/electron12/files/patch-electron_spec-main_version-bump-spec.ts
+++ b/devel/electron12/files/patch-electron_spec-main_version-bump-spec.ts
@@ -1,11 +1,11 @@
---- electron/spec-main/version-bump-spec.ts.orig	2021-01-22 23:55:24 UTC
+--- electron/spec-main/version-bump-spec.ts.orig	2021-10-11 17:12:26 UTC
 +++ electron/spec-main/version-bump-spec.ts
 @@ -43,7 +43,7 @@ describe('version-bumper', () => {
  
    // On macOS Circle CI we don't have a real git environment due to running
    // gclient sync on a linux machine. These tests therefore don't run as expected.
--  ifdescribe(!(process.platform === 'linux' && process.arch === 'arm') && process.platform !== 'darwin')('nextVersion', () => {
-+  ifdescribe(!((process.platform === 'linux' || process.platform === 'freebsd') && process.arch === 'arm') && process.platform !== 'darwin')('nextVersion', () => {
+-  ifdescribe(!(process.platform === 'linux' && process.arch.indexOf('arm') === 0) && process.platform !== 'darwin')('nextVersion', () => {
++  ifdescribe(!((process.platform === 'linux' || process.platform === 'freebsd') && process.arch.indexOf('arm') === 0) && process.platform !== 'darwin')('nextVersion', () => {
      const nightlyPattern = /[0-9.]*(-nightly.(\d{4})(\d{2})(\d{2}))$/g;
      const betaPattern = /[0-9.]*(-beta[0-9.]*)/g;
  
diff --git a/devel/electron12/files/patch-net_url__request_url__request__context__builder.cc b/devel/electron12/files/patch-net_url__request_url__request__context__builder.cc
index f7703d81213f..bbbe74c16483 100644
--- a/devel/electron12/files/patch-net_url__request_url__request__context__builder.cc
+++ b/devel/electron12/files/patch-net_url__request_url__request__context__builder.cc
@@ -1,6 +1,6 @@
---- net/url_request/url_request_context_builder.cc.orig	2021-04-14 01:08:53 UTC
+--- net/url_request/url_request_context_builder.cc.orig	2021-11-08 08:20:48 UTC
 +++ net/url_request/url_request_context_builder.cc
-@@ -484,7 +484,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBu
+@@ -485,7 +485,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBu
    }
  
    if (!proxy_resolution_service_) {
@@ -9,7 +9,7 @@
      // TODO(willchan): Switch to using this code when
      // ConfiguredProxyResolutionService::CreateSystemProxyConfigService()'s
      // signature doesn't suck.
-@@ -493,7 +493,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBu
+@@ -494,7 +494,7 @@ std::unique_ptr<URLRequestContext> URLRequestContextBu
            ConfiguredProxyResolutionService::CreateSystemProxyConfigService(
                base::ThreadTaskRunnerHandle::Get().get());
      }
diff --git a/devel/electron12/files/patch-ui_compositor_compositor.cc b/devel/electron12/files/patch-ui_compositor_compositor.cc
index 9383d5e3cf6e..58de5582ebed 100644
--- a/devel/electron12/files/patch-ui_compositor_compositor.cc
+++ b/devel/electron12/files/patch-ui_compositor_compositor.cc
@@ -1,6 +1,6 @@
---- ui/compositor/compositor.cc.orig	2021-04-14 01:09:39 UTC
+--- ui/compositor/compositor.cc.orig	2021-11-08 08:20:48 UTC
 +++ ui/compositor/compositor.cc
-@@ -750,7 +750,7 @@ void Compositor::CancelThroughtputTracker(TrackerId tr
+@@ -752,7 +752,7 @@ void Compositor::CancelThroughtputTracker(TrackerId tr
  
  // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
  // of lacros-chrome is complete.
diff --git a/devel/electron12/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc b/devel/electron12/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc
index ea91ee17c0c4..2452507da303 100644
--- a/devel/electron12/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc
+++ b/devel/electron12/files/patch-ui_views_widget_desktop__aura_desktop__window__tree__host__platform.cc
@@ -1,6 +1,6 @@
---- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig	2021-04-14 01:09:40 UTC
+--- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc.orig	2021-11-08 08:20:48 UTC
 +++ ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
-@@ -818,7 +818,7 @@ void DesktopWindowTreeHostPlatform::AddAdditionalInitP
+@@ -821,7 +821,7 @@ void DesktopWindowTreeHostPlatform::AddAdditionalInitP
  // DesktopWindowTreeHost:
  
  // Linux subclasses this host and adds some Linux specific bits.
diff --git a/devel/electron12/files/yarn.lock b/devel/electron12/files/yarn.lock
index 13cd504f8065..ee806ef1291c 100644
--- a/devel/electron12/files/yarn.lock
+++ b/devel/electron12/files/yarn.lock
@@ -4900,7 +4900,7 @@ minimist@^1.2.5:
   resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
   integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
 
-minipass@^2.2.1, minipass@^2.3.5:
+minipass@^2.2.1:
   version "2.3.5"
   resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.3.5.tgz#cacebe492022497f656b0f0f51e2682a9ed2d848"
   integrity sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==
@@ -4908,6 +4908,14 @@ minipass@^2.2.1, minipass@^2.3.5:
     safe-buffer "^5.1.2"
     yallist "^3.0.0"
 
+minipass@^2.8.6:
+  version "2.9.0"
+  resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
+  integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
+  dependencies:
+    safe-buffer "^5.1.2"
+    yallist "^3.0.0"
+
 minizlib@^1.2.1:
   version "1.2.1"
   resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.2.1.tgz#dd27ea6136243c7c880684e8672bb3a45fd9b614"
@@ -7613,13 +7621,13 @@ tapable@^1.0.0, tapable@^1.1.3:
   integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
 
 tar@^4, tar@^4.4.7:
-  version "4.4.10"
-  resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.10.tgz#946b2810b9a5e0b26140cf78bea6b0b0d689eba1"
-  integrity sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA==
+  version "4.4.15"
+  resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.15.tgz#3caced4f39ebd46ddda4d6203d48493a919697f8"
+  integrity sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA==
   dependencies:
     chownr "^1.1.1"
     fs-minipass "^1.2.5"
-    minipass "^2.3.5"
+    minipass "^2.8.6"
     minizlib "^1.2.1"
     mkdirp "^0.5.0"
     safe-buffer "^5.1.2"