* chore: bump chromium in DEPS to 123.0.6265.0
* chore: bump chromium in DEPS to 123.0.6266.0
* chore: update feat_ensure_mas_builds_of_the_same_application_can_use_safestorage.patch
Xref: 5232280
reverts the revert *and* undoes the rewrites 😵
* chore: update chromium/disable_hidden.patch
Xref: 5148491
minor manual intervention
* chore: update patches
* chore: Rename mouse lock to pointer lock
Xref: 5148491
* refactor: fix use of newly-removed QuitCurrentWhenIdleClosureDeprecated()
Xref: 4710351
Xref: https://github.com/electron/electron/pull/26022
This usage was added in #26022 as part of Wayland support and some
simple fiddles WfM with this patch on Wayland, but I'm unsure what
to be testing for & would like a second opinion on this commit.
* chore: bump chromium in DEPS to 123.0.6268.0
* chore: update patches
* 5235021: WebUI: Migrate accessibility and bluetooth internals to WebUIConfig
5235021
* address review comment for 5196547
See: 5196547
Review comment: https://github.com/electron/electron/pull/41130#discussion_r1468973786
* 5075962: Introduce URLLoaderFactoryBuilder
5075962
* chore: bump chromium in DEPS to 123.0.6270.0
* the missing semicolon strikes again
* chore: update chromium patches
* chore: update v8 patches
* 5242326: Some followup cleanup to Fuchia files in chrome | 5242326
* chore: bump chromium in DEPS to 123.0.6272.0
* chore: update patches
* chore: update patch after rebase
* 5247339: [Clipboard] Remove ClipboardContentType enum.
5247339
* Reland: "Allow content shell to enable the built-in DNS resolver"
5232354
* 5018206: [accessibility] Migrate to ScopedAccessibilityMode
5018206
* 5246669: [Default Nav Transition]Add GetBackForwardTransitionAnimationManager on WebContentsView | 5246669
* fix: move nut-js to optional spec deps (#41199)
* chore: bump chromium in DEPS to 123.0.6265.0
* chore: bump chromium in DEPS to 123.0.6266.0
* chore: update feat_ensure_mas_builds_of_the_same_application_can_use_safestorage.patch
Xref: 5232280
reverts the revert *and* undoes the rewrites 😵
* chore: update chromium/disable_hidden.patch
Xref: 5148491
minor manual intervention
* chore: update patches
* chore: Rename mouse lock to pointer lock
Xref: 5148491
* refactor: fix use of newly-removed QuitCurrentWhenIdleClosureDeprecated()
Xref: 4710351
Xref: https://github.com/electron/electron/pull/26022
This usage was added in #26022 as part of Wayland support and some
simple fiddles WfM with this patch on Wayland, but I'm unsure what
to be testing for & would like a second opinion on this commit.
* chore: bump chromium in DEPS to 123.0.6268.0
* chore: update patches
* 5235021: WebUI: Migrate accessibility and bluetooth internals to WebUIConfig
5235021
* address review comment for 5196547
See: 5196547
Review comment: https://github.com/electron/electron/pull/41130#discussion_r1468973786
* 5075962: Introduce URLLoaderFactoryBuilder
5075962
* chore: bump chromium in DEPS to 123.0.6270.0
* the missing semicolon strikes again
* chore: update chromium patches
* chore: update v8 patches
* 5242326: Some followup cleanup to Fuchia files in chrome | 5242326
* chore: bump chromium in DEPS to 123.0.6272.0
* chore: update patches
* chore: update patch after rebase
* 5247339: [Clipboard] Remove ClipboardContentType enum.
5247339
* Reland: "Allow content shell to enable the built-in DNS resolver"
5232354
* 5018206: [accessibility] Migrate to ScopedAccessibilityMode
5018206
* 5246669: [Default Nav Transition]Add GetBackForwardTransitionAnimationManager on WebContentsView | 5246669
* fix: typescript error for optional dependency
(cherry picked from commit ea17105c8c01bd1f4c1df5e72190a687d92f93cc)
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: clavin <clavin@electronjs.org>
Co-authored-by: VerteDinde <vertedinde@electronjs.org>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Sam Maddock <smaddock@slack-corp.com>
* refactor: do not use banned std::to_string() in ServiceWorkerContext::GetAllRunningWorkerInfo()
* refactor: do not use banned std::to_string() in REPORT_AND_RETURN_IF_FAILED()
* refactor: do not use banned std::to_string() in JSChunkedDataPipeGetter::OnWriteChunkComplete()
* refactor: do not use banned std::to_string() in SetCrashKey()
* chore: remove unused #include
* chore: migrate from base::StringPiece to std::string_view in keyboard_util.cc
* chore: migrate from base::StringPiece to std::string_view in error_thrower.cc
* chore: migrate from base::StringPiece to std::string_view in electron_api_web_contents.cc
* chore: migrate from base::StringPiece to std::string_view in gin_helper/dictionary.h
* chore: migrate from base::StringPiece to std::string_view in electron_api_url_loader.cc
* chore: phase out internal use of base:::StringPiece
`base::StringPiece` is being phased out upstream. Its code has been
removed upstream and it's just a typedef for `std::string_view`.
They haven't removed the typedef yet, so this PR tries to get ahead
of future breakage by migrating "internal" use (i.e. leaving alone the
places where the `base::StringPiece` name is coming from an upstream
method that we override).
Xref: https://bugs.chromium.org/p/chromium/issues/detail?id=691162
Xref: 4294483
Xref: https://docs.google.com/document/d/1d4RnD1uAE2t4iANR0nXy82ASIPGsPuw2mpO6v6T7JKs
* refactor: use base::flat_map in ElectronMenuModel
* refactor: use base::flat_map in BuildSubmenuFromModel()
* refactor: use base::flat_map in GetDialogsMap()
* refactor: use base::flat_map in DesktopCapturer
* refactor: use base::flat_map, flat_set in ElectronBrowserClient
* refactor: use base::flat_map in ProxyingURLLoaderFactory
* refactor: use base::flat_map in MapToCommonId()
* refactor: use base::flat_map for g_map_id
* refactor: use base::flat_map for ViewsDelegate::AppbarAutohideEdgeMap
* refactor: use base::flat_map for App::app_metrics_
* refactor: use base::flat_map for PowerSaveBlocker::wake_lock_types_
* refactor: use base::flat_map for NativeImage::hicons_
* refactor: use base::flat_map for MenuViews::menu_runners_
* refactor: use base::flat_map for WebViewManager::web_contents_embedder_map_
* refactor: use base::flat_map for InspectableWebContents::extensions_api_
* refactor: use base::flat_set for libnotify GetServerCapabilities()
* refactor: use base::flat_set for InspectableWebContents::loaders_
* refactor: use base::flat_set for ElectronRendererClient::environments_
refactor: use base::flat_set for ElectronRendererClient::injected_frames_
* refactor: use base::flat_set for WebWorkerObserver::environments_
* feat: add transparent option to WebContents
* feat: add transparent attribute to webview
* test: add tests for webview transparent attribute
* docs: add transparent attribute to webview docs
* fix: run tests on macOS only
* refactor: remove unneeded html tag
* fix: only apply transparent option to guests
* refactor: correct comment
* refactor: use opaque instead
Retains current webview behaviour by default.
* fix: correct variable name to guest_opaque_
* refactor: use transparent webpreference
* docs: remove unused web preference
* fix: uncomment condition for transparency test
* docs: converted to list format and linked to MDN
* fix: make webviews transparent by default again
* fix: rebase error
---------
Co-authored-by: Cheng Zhao <zcbenz@gmail.com>
* chore: initial prototype of net api from utility process
* chore: update url loader to work on both browser and utility processes
* chore: add net files to utility process bundle
* chore: re-add app ready check but only on main process
* chore: replace browser thread dcheck's with sequence checker
* refactor: move url loader from browser to common
* refactor: move net-client-request.ts from browser to common
* docs: add utility process to net api docs
* refactor: move net module app ready check to browser only
* refactor: switch import from main to common after moving to common
* test: add basic net module test for utility process
* refactor: switch browser pid with utility pid
* refactor: move electron_api_net from browser to common
* chore: add fetch to utility net module
* chore: add isOnline and online to utility net module
* refactor: move net spec helpers into helper file
* refactor: break apart net module tests
Adds two additional net module test files: `api-net-session-spec.ts` for
tests that depend on a session being available (aka depend on running on
the main process) and `api-net-custom-protocols-spec.ts` for custom
protocol tests. This enables running `api-net-spec.ts` in the utility
process.
* test: add utility process mocha runner to run net module tests
* docs: add utility process to net module classes
* refactor: update imports in lib/utility to use electron/utility
* chore: check browser context before using in main process
Since the browser context supplied to the SimpleURLLoaderWrapper can now
be null for use in the UtilityProcess, adding a null check for the main
process before use to get a more sensible error if something goes wrong.
Co-authored-by: Cheng Zhao <github@zcbenz.com>
* chore: remove test debugging
* chore: remove unnecessary header include
* docs: add utility process net module limitations
* test: run net module tests in utility process individually
* refactor: clean up prior utility process net tests
* chore: add resolveHost to utility process net module
* chore: replace resolve host dcheck with sequence checker
* test: add net module tests for net.resolveHost
* docs: remove utility process limitation for resolveHost
---------
Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: Cheng Zhao <github@zcbenz.com>
* chore: bump chromium in DEPS to 122.0.6180.0
* chore: update render_widget_host_view_base.patch
Xref: 5079532
minor manual changes to match upstream changes
* chore: update printing.patch
Xref: 5094777
Xref: 5054299
Update patch to upstream changes in print_view_manager_base.cc.
CC @codebytere for 👀
* chore: update feat_add_onclose_to_messageport.patch
Xref: 5083156
no manual changes; patch applied with fuzz 1
* chore: update build_do_not_depend_on_packed_resource_integrity.patch
Xref: 5087072
minor manual changes to match upstream changes
* chore: update port_autofill_colors_to_the_color_pipeline.patch
Xref: 4960481
no manual changes; patch applied with fuzz 2
* chore: update revert_api_dcheck-fail_when_we_reenter_v8_while_terminating.patch
Xref: 5076902
Xref: 5096253
The `bailout_value` variable, which allowed us to fail gracefully in
these macros, has been removed upstream. This raises the temperature
on https://github.com/electron/electron/issues/40741 ...
Since we don't have a bailout value, return a default-constructed
instance of whatever the return type is of the function that invokes
the macro.
* Remove performActionOnRemotePage
Xref: 5068017
It appears it is not used by anything within Chromium or outside.
* perf: in SubmenuButton ctor, move() the PressedCallback
Xref: 5066872
The copy construtor is more expensive and has been removed upstream
* chore: update constructor call for ElectronExtensionsRendererClient::dispatcher_
Xref: 5055146
* chore: handle CAPTURED_SURFACE_CONTROL in Converter<blink::PermissionType>::ToV8()
Xref: 5096614
* chore: e patches all
* chore: bump chromium to 122.0.6181.0
* chore: e patches all
* refactor: Add lookup for per-RenderFrame SpellCheckProvider
Xref: 5075094
Previously we could pass a routing ID into the spellcheck methods.
This ID arg has been replaced with a SpellCheckHost& arg.
We can get the SpellCheckHost from an accessor in SpellCheckProvider,
which was already being created on a per-render-frame basis in
RenderClientBase.
This commit adds a RenderFrame-to-SpellCheckProvider accessor
in RenderClientBase so that it can be used to get that needed
SpellCheckHost.
* chore: make lint happy
* chore: restore the will_cause_resize arg to WebContents::ExitFullscreen
Xref: 5074445
Xref: 5031312
upstream reverted this change
* chore: bump chromium in DEPS to 122.0.6182.0
* chore: update patches
* chore: fix virtual function names that were renamed upstream
Xref: 5115241
* chore: handle new blink::PermissionType::SMART_CARD in PermissionType converter
Xref: 5049989
* chore: node script/gen-libc++-filenames.js
* fixup! chore: update build_do_not_depend_on_packed_resource_integrity.patch
* chore: remove revert_api_dcheck-fail_when_we_reenter_v8_while_terminating.patch
The previous experiment of removing the DCHECK in 35093783 was a huge
failure. We either need to either:
A) use upstream as-is and fix the DCHECK failure, or
B) revert 5076902 too
C) find some other workaround
This commit is the first half of option A, removing the patch to use
upstream as-is.
* chore: bump chromium in DEPS to 122.0.6184.0
* chore: bump chromium in DEPS to 122.0.6186.0
* chore; update mas_avoid_private_macos_api_usage.patch.patch
Xref: 5085619
minor manual changes to match upstream changes
* chore: update build_do_not_depend_on_packed_resource_integrity.patch
Xref: 5120922
minor manual changes to match upstream changes
* chore: update fix_move_autopipsettingshelper_behind_branding_buildflag.patch
Xref: 5041595
no manual changes; patch applied with fuzz 1
* chore: e patches all
* chore: add refactor_update_node-platform_to_match_v8-platform_api_changes.patch
* chore: bump chromium in DEPS to 122.0.6188.0
* chore: bump chromium in DEPS to 122.0.6190.0
* chore: bump chromium in DEPS to 122.0.6192.0
* chore: bump chromium in DEPS to 122.0.6194.0
* Remove an unnecessary DCHECK which causes Lacros to crash.
5124880
* [FixIt Week] Add shared regular profile function that includes ash
5100709
* Simplify the PrintManagerHost::ScriptedPrint() call
5019703
* [local compile hints] Add tests
5024173
* chore: update patches
* fixup! chore: add refactor_update_node-platform_to_match_v8-platform_api_changes.patch
* chore: node script/gen-libc++-filenames.js
* Remove //ui/ozone/buildflags.h
5119048
* fixup! Remove //ui/ozone/buildflags.h
* fixup! Remove //ui/ozone/buildflags.h
* chore: update patches
* fixup! refactor: Add lookup for per-RenderFrame SpellCheckProvider
* fixup! Remove //ui/ozone/buildflags.h
* Add permission policy verification in PermissionControllerImpl
5059112
* fix: ensure spellcheck interface is registered for frame
* [exceptions] Unify pending and scheduled exceptions
5050065
* fix: dchecks in node.js tests
* fix: try adding termination check
* chore: document breaking iframe change
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* chore: bump chromium in DEPS to 121.0.6154.0
* chore: bump chromium in DEPS to 121.0.6155.0
* fix patches
* chore: update patches
* patch out reference to GetOcclusionTracker
* un-flag PIPOcclusionTracker
* chore: bump chromium in DEPS to 121.0.6157.0
* fix conflicts
5038807
* add PIP occlusion tracker sources to chromium_src
* 5037591: Replace feature_list's Initialize* methods with Init*.
5037591
* 4811903: Move //content/browser/renderer_host/input/synthetic_gesture_controller to //content/common/input
4811903
* 4917953: usb: Add usb-unrestricted to permission policy
4917953
* 5072395: Remove unused `creation_context` parameter from blink/public APIs
5072395
* 5052035: [X11] Change AtomCache from a singleton to owned by Connection
5052035
* fix v8/.patches
* node script/gen-libc++-filenames.js
* 5035771: Remove the SetImage method of ImageButton
5035771
* fixup! 5052035: [X11] Change AtomCache from a singleton to owned by Connection
* fixup! 5035771: Remove the SetImage method of ImageButton
* chore: bump chromium in DEPS to 121.0.6159.0
* 4505903: [Extensions] Add lastAccessed property to chrome.tabs.Tab
4505903
* update patches
* don't duplicate tabs API types
this causes weird memory bugs if the two get out of sync
* fix UAF in TrayIconCocoa
not sure why this is popping up just now ... this has been broken for ages afaict
* Revert "don't duplicate tabs API types"
This reverts commit 80dff2efaa1297e5c191b2c69648099d6665dbff.
This is failing tests with extensions API schema check failures, so
revert for now. we'll fix it later.
* revert v8 change causing node crashes
* chore: reduce diffs in revert_api_dcheck-fail_when_we_reenter_v8_while_terminating.patch
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: clavin <clavin@electronjs.org>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* chore: bump chromium in DEPS to 121.0.6116.0
* chore: update patches
* Update webIDL to support close event.
Refs 4970653
* Remove uses of implicit conversion of ScopedTypeRef
Refs https://bugs.chromium.org/p/chromium/issues/detail?id=1495439
* Add GlobalRenderFrameHostToken
Refs 5001743
* [DevTools] Console Insights: move from build flag to Feature API
Refs 5002232
* [Extensions] Use script serialization in scripting API
Refs 4968680
Refs 4998265
* [api] Remove AllCan Read/Write
5006387
* chore: update libcxx files
* chore: address nan compilation error
* spec: use nan dependency from third_party
It is easier to get fixes for spec modules depending on nan
* ci: publish nan artifact for woa
* fix: bad patch update
* chore: update nan resolution
* Revert "chore: update nan resolution"
This reverts commit 786cdb858c9fc8a038a8f3e16068ee5b4a050137.
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
* chore: bump chromium in DEPS to 120.0.6049.0
* chore: update patches
* chore: bump chromium in DEPS to 120.0.6050.0
* chore: update patches
* 4910494: Reland "[autopip] Show autopip UI for video pip"
4910494
* 4812338: Move partition_alloc into a "partition_alloc" dir.
4812338
* [Extensions Cleanup] Remove mojom ViewType::kExtensionDialog
4909897
* 4894923: Force enable raw_ptrs pointer arithmetic check.
4894923
* gin: Prevent wrappables from being constructed from author code.
4905829
* chore: update patches
* chore: bump chromium in DEPS to 120.0.6052.0
* chore: bump chromium in DEPS to 120.0.6054.0
* chore: bump chromium in DEPS to 120.0.6056.0
* chore: fix patches
* 4918545: Reland "[autopip] Add permissions embargo"
4918545
* 4881761: UI bindings for visual logging with structured metrics.
4881761
* chore: bump chromium in DEPS to 120.0.6058.0
* chore: update patches
* chore: bump chromium in DEPS to 120.0.6060.0
* chore: bump chromium in DEPS to 120.0.6061.0
* chore: bump chromium in DEPS to 120.0.6062.0
* chore: gen libc++ filenames
* chore: update patches
* 4911894: Move //c/b/ui/views/eye_dropper to //components
4911894
* chore: bump chromium in DEPS to 120.0.6064.0
* chore: bump chromium in DEPS to 120.0.6066.0
* chore: bump chromium in DEPS to 120.0.6068.0
* chore: bump chromium in DEPS to 120.0.6070.0
* chore: remove temp_prevent_unused_function_error.patch
Xref: 4931270
* chore: add TransferDragSecurityInfo()
Xref: 4928028
* mark TransferDragSecurityInfo() as NOTREACHED
A follow-up to previous commit. I think this is commit is correct (i.e.
that this function shouldn't get called) but am not positive, so I'm
including it in a standalone commit in case we need to revert.
* chore: update signature of OnPrivateNetworkAccessPermissionRequired()
Xref: 4919478
Our impl is a no-op, so updating the signature is the only change.
* chore: rebuild patches
* chore: bump chromium in DEPS to 120.0.6072.0
* chore: update patches
* chore: sync ParseMatchPattern() param order with upstream change
Xref: 4944243
* chore: update fix_crash_loading_non-standard_schemes_in_iframes.patch
Xref: 4939602
* chore: rebuild patches
* chore: bump chromium in DEPS to 120.0.6073.0
* chore: update patches
* chore: bump chromium in DEPS to 120.0.6074.0
* chore: update disable_color_correct_rendering.patch
Xref: 4908053
no manual changes; patch applied with fuzz 1
* chore: update fix_handle_no_top_level_aura_window_in_webcontentsimpl.patch
Xref: 4936315
minor manual sync to upstream code shear
* chore: rebuild patches
* chore: update ClearHttpAuthCache arguments
Xref: 4937937
adding ClearDataFilterPtr arg. Upstream added this arg, which is already
present in other NetworkContext methods. Our code uses `nullptr` there.
* chore: bump chromium in DEPS to 120.0.6076.0
* chore: update mas_disable_remote_accessibility.patch
Xref: 4865412
minor manual sync to upstream code shear
* chore: update disable_color_correct_rendering.patch
Xref: 4942936
minor manual sync to upstream code shear
* fix: move x11_util.h include to top of source file
This is a short-term fix to unblock the roll. I will follow up a better fix in a standalone PR.
* chore: rebuild patches
* chore: bump chromium in DEPS to 120.0.6077.0
* chore: update patches
* chore: bump chromium in DEPS to 120.0.6078.0
* chore: update patches
* refactor: add BrowserProcessImpl::os_crypt_async()
Xref: 4455776
This is one to keep an eye on. This commit copies the upstream impl,
which appears to be an interim step with more upstream code changes
still forthcoming.
Xref: https://bugs.chromium.org/p/chromium/issues/detail?id=1373092
* fixup! refactor: add BrowserProcessImpl::os_crypt_async()
chore: make 'gn check' happy
* chore: remove ensure_messageports_get_gced_when_not_referenced.patch
Xref: ensure_messageports_get_gced_when_not_referenced.patch
no longer needed because upstreamed
* chore: remove webrtc/pipewire_capturer_make_restore_tokens_re-usable_more_than_one_time.patch
Xref: https://webrtc-review.googlesource.com/c/src/+/322621
no longer needed because upstreamed
* chore: add //components/compose:buildflags dep
Xref: 4912601
needed by browser/ui/browser_dialogs.h
* chore: update filenames.libcxx.gni
node ./script/gen-libc++-filenames.js
* test: fix UI.InspectorView -> UI.InspectorView.instance()
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: clavin <clavin@electronjs.org>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* fix: return RGBA hex value from `SystemPreferences.getColor`
* docs: update docs to match changes of last commit
* fix: GetColor on windows now returns RGBA too
* fix: update tests for getColor RGBA on Windows
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
GetPathConstant calls base::internal::flat_tree<Key, GetKeyFromValue, KeyCompare, Container>::find(Key const&) const which is not constexpr.
GCC 12 and earlier raise a compile error on this.
* fix: disable background throttling also in the `viz::DisplayScheduler`
`viz::DisplayScheduler` is responsible for drawing and swapping frames
in the `DisplayScheduler::DrawAndSwap` which is called from the
`DisplayScheduler::AttemptDrawAndSwap` if the `DisplayScheduler::ShouldDraw`
returns true. `ShouldDraw` depends on the `DisplayScheduler` visibility
and when it is not visible then it returns false.
In order to keep producing frames, disabling `backgroundThrottling`
should also prevent changing `DisplayScheduler` visibility to false.
`DisplayScheduler` lives in the `ui::Compositor` where every
`electron::NativewWindow` has its own `Compositor`. `electron::NativewWindow`
may be host of the multiple `electron::api::WebContents` instances which may
have different `WebPreferences` settings. Therefore if at least one
of the `WebContents` requires disabling throttling then all other `WebContents`
using the same window will have it disabled in the `ui::Compositor`.
BREAKING CHANGE:
`backgroundThrottling` set to false will disable frames throttling
in the `BrowserWindow` for all `WebContents` displayed by it.
Close: [#31016](https://github.com/electron/electron/issues/31016)
* fixup! fix: disable background throttling also in the `viz::DisplayScheduler`
* fixup! fix: disable background throttling also in the `viz::DisplayScheduler`
* fixup! fix: disable background throttling also in the `viz::DisplayScheduler`
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* fix: backgroundMaterial works with frameless
* TODO: fix frameless mica/acrylic windows
* update caption color appropriately
* set background color properly
* refactor translucency method
* actualization