electron/patches/chromium/disable_hidden.patch
electron-roller[bot] c3036d4557
chore: bump chromium to 117.0.5938.0 (main) (#39375)
* chore: bump chromium in DEPS to 117.0.5929.0

* chore: bump chromium in DEPS to 117.0.5931.0

* chore: bump chromium in DEPS to 117.0.5932.0

* chore: update patches

* 4728317: Prevent PrintRenderFrameHelper from printing when already printing
 | https://chromium-review.googlesource.com/c/chromium/src/+/4728317

* 4739501: Use base::SequenceBound to manage SerialPortManagerImpl |
 https://chromium-review.googlesource.com/c/chromium/src/+/4739501

* 4702051: Allow overriding source in install-sysroot.py | https://chromium-review.googlesource.com/c/chromium/src/+/4702051

* chore: update filenames.libcxx.gni

* 4727002: Rename "enable_arc2" to "enable_arc" |
https://chromium-review.googlesource.com/c/chromium/src/+/4727002

* chore: bump chromium in DEPS to 117.0.5934.0

* 4736873: Rename ColorSpaces methods on display::Display | https://chromium-review.googlesource.com/c/chromium/src/+/4736873

* 4727203: Replace bool with an enum in as suggested in DevtoolsManagerDelegate. | https://chromium-review.googlesource.com/c/chromium/src/+/4727203

* 4744479: [DevTools] Add 'generateTaggedPDF' option to DevTools Page.printToPDF | https://chromium-review.googlesource.com/c/chromium/src/+/4744479

* 4735893: Don't share WebUSB permissions with webviews | https://chromium-review.googlesource.com/c/chromium/src/+/4735893

* revert: update filenames.libcxx.gni

* chore: bump chromium in DEPS to 117.0.5936.0

* chore: update patches

* 4746465: SAA: Query for embargoed StorageAccess permissions | https://chromium-review.googlesource.com/c/chromium/src/+/4746465

* 4666325: Move buildtools/third_party/lib*/trunk source paths to third_party/lib*/src. | https://chromium-review.googlesource.com/c/chromium/src/+/4666325

* chore: bump chromium in DEPS to 117.0.5938.0

* chore: bump chromium in DEPS to 118.0.5939.0

* chore: update patches

* Send line bounds through CursorAnchorInfo on requestCursorUpdate

https://chromium-review.googlesource.com/c/chromium/src/+/4394588

* Fixup lint for Move buildtools/third_party/lib*/trunk source paths to third_party/lib*/src

* 4700305: [mac] Fix override of CHILD_PROCESS_EXE

https://chromium-review.googlesource.com/c/chromium/src/+/4700305

Needed because of 4729689: Reland "Remove redundant existence check in PathService" | https://chromium-review.googlesource.com/c/chromium/src/+/4729689

* 4753759: More consistent icon handling for menus.

https://chromium-review.googlesource.com/c/chromium/src/+/4753759

* chore: bump chromium in DEPS to 118.0.5941.0

* chore: update patches

* chore: bump chromium in DEPS to 117.0.5938.0

* test: update nan-spec-runner cflags

* build: fix isystem include path in nan-spec-runner

* fixup! 4666325: Move buildtools/third_party/lib*/trunk source paths to third_party/lib*/src. | https://chromium-review.googlesource.com/c/chromium/src/+/4666325

fix a few more instances of the old path

libc++.a and libc++abi.a are still in buildtools/

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: VerteDinde <vertedinde@electronjs.org>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2023-08-15 10:49:41 -05:00

47 lines
2.3 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Cheng Zhao <zcbenz@gmail.com>
Date: Thu, 20 Sep 2018 17:45:47 -0700
Subject: disable_hidden.patch
Electron uses this to disable background throttling for hidden windows.
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 55364bf0f6313eb57a96b46ad0a28051ab33fd62..3e0ed454b09a3d23570479a390e3dff92cbf83bc 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -800,6 +800,9 @@ void RenderWidgetHostImpl::WasHidden() {
return;
}
+ if (disable_hidden_)
+ return;
+
RejectMouseLockOrUnlockIfNecessary(
blink::mojom::PointerLockResult::kWrongDocument);
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h
index 401123216fccc830a240b0b473e0426a65e630e6..2c205dd684340ddbed4fd301d5928ce6dad559fe 100644
--- a/content/browser/renderer_host/render_widget_host_impl.h
+++ b/content/browser/renderer_host/render_widget_host_impl.h
@@ -902,6 +902,8 @@ class CONTENT_EXPORT RenderWidgetHostImpl
void UpdateBrowserControlsState(cc::BrowserControlsState constraints,
cc::BrowserControlsState current,
bool animate);
+ // Electron: Prevents the widget from getting hidden.
+ bool disable_hidden_ = false;
protected:
// |routing_id| must not be MSG_ROUTING_NONE.
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
index 628724f3cc5c970402479a5c4a0c23af0d1f906d..8fa040071ba1e70890f7dcf8193e83e147679ed7 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -617,7 +617,7 @@ void RenderWidgetHostViewAura::HideImpl() {
DCHECK(visibility_ == Visibility::HIDDEN ||
visibility_ == Visibility::OCCLUDED);
- if (!host()->is_hidden()) {
+ if (!host()->is_hidden() && !host()->disable_hidden_) {
host()->WasHidden();
aura::WindowTreeHost* host = window_->GetHost();
aura::Window* parent = window_->parent();