Commit graph

85 commits

Author SHA1 Message Date
Shelley Vohr
32d8f84cad
fix: getNormalBounds() for transparent windows on Windows (#38218) 2023-05-17 13:11:43 +02:00
Shelley Vohr
ad07712561
fix: win.isMaximized() for transparent windows on Windows (#38234) 2023-05-17 10:17:08 +02:00
Shelley Vohr
e83197669c
fix: unify BrowserWindow.isVisible() logic cross-platform (#38242) 2023-05-16 11:46:45 +02:00
Shelley Vohr
9bd9d312f8
fix: enable BrowserWindow.id access post-destruction (#38241)
fix: enable BrowserWindow id access post-destruction
2023-05-16 09:29:00 +02:00
Shelley Vohr
042663e190
fix: isMaximized after minimize/fullscreen on macOS (#38291)
fix: isMaximized after isMinimized on macOS
2023-05-16 09:26:41 +02:00
electron-roller[bot]
894e056e6b
chore: bump chromium to 115.0.5760.0 (main) (#38033)
* chore: bump chromium in DEPS to 114.0.5721.0

* chore: update patches

* chore: bump chromium in DEPS to 114.0.5723.0

* chore: update patches

* chore: bump chromium in DEPS to 114.0.5725.0

* chore: update patches

* chore: bump chromium in DEPS to 114.0.5727.0

* chore: bump chromium in DEPS to 114.0.5729.0

* chore: bump chromium in DEPS to 114.0.5731.0

* chore: update patches

* 4450570: Clean up content shell
https://chromium-review.googlesource.com/c/chromium/src/+/4450570

* 4262527: geolocation: Introduce mojom::GeopositionResult
https://chromium-review.googlesource.com/c/chromium/src/+/4262527

* 4450327: Android/Nav: Stop taking content timeout timer from old host.
https://chromium-review.googlesource.com/c/chromium/src/+/4450327

Also, see:
4451366: Reland "Prerender: Fix prerender new content timeout start timing"
https://chromium-review.googlesource.com/c/chromium/src/+/4451366

* chore: bump chromium in DEPS to 114.0.5733.2

* chore: update patches

* chore: bump CircleCI xcode version
this will hopefully get us the necessary macOS sdk 13.3 on CI.

* chore: bump chromium in DEPS to 114.0.5735.0

* chore: update patches

* test: fix geolocation test

* chore: bump chromium in DEPS to 115.0.5736.0

* chore: update patches

* chore: bump chromium in DEPS to 115.0.5738.0

* chore: update patches

* fix: remove profiles from spellcheck service

* chore: update libc++ filenames

* chore: bump chromium in DEPS to 115.0.5740.0

* chore: update patches

* chore: bump chromium in DEPS to 115.0.5742.0

* chore: update patches

* chore: bump chromium in DEPS to 115.0.5744.0

* chore: update patches

* chore: bump chromium in DEPS to 115.0.5746.0

* chore: update patches

* chore: update filenames.libcxx.gni

* chore: bump chromium in DEPS to 115.0.5748.0

* chore: update patches

* build: update libcxx filenames

* chore: bump chromium in DEPS to 115.0.5750.0

* chore: bump chromium in DEPS to 115.0.5752.2

* chore: bump chromium in DEPS to 115.0.5754.0

* chore: bump chromium in DEPS to 115.0.5756.0

* chore: bump chromium in DEPS to 115.0.5758.0

* chore: update patches

* chore: update patch after rebase

* 4500969: Delete content/dev_ui_content_resources.grd file.

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

* Use base.Value.Dict in OmahaAttributesHandler related code

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

* chore: bump chromium in DEPS to 115.0.5760.0

* chore: update patches

* chore: fixup line endings

* 4336172: Include client-drawn window decorations in aspect ratio. |
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/4336172

(cherry picked from commit 27c2f6c43e8e4a792b33fdf8cf3af880376406be)

* spec: fix race condition in alwaysOnTop test

(cherry picked from commit 2ec5213fa0998d9cf21248257e7b5a5581044ea3)

* build: use xcode 14.2 not 14.3

(cherry picked from commit b7c62351a77102e854a801c363f391b177ebf672)

* build: use macOS 12 to run tests

The new macOS 13 VMs appear to have different screen / display behavior

(cherry picked from commit 14dc1dbc24cec85111a7482b49049f6acbfbc5f1)

* Remove always-true flag --harmony-sharedarraybuffer

https://chromium-review.googlesource.com/c/v8/v8/+/4429630

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: clavin <clavin@electronjs.org>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
Co-authored-by: VerteDinde <keeleymhammond@gmail.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
2023-05-10 10:47:48 -04:00
Shelley Vohr
13e309e1fb
fix: only exit fullscreen conditionally with setKiosk (#38219)
fix: only exit fullscreen conditionally with setKiosk
2023-05-09 12:28:37 -04:00
David Sanders
a26343f3e0
fix: falsy transparent shouldn't affect webContents background (#36914) 2023-05-02 14:44:34 -07:00
Shelley Vohr
05faabe9e8
test: re-enable multi-window fullscreen test (#38119) 2023-04-26 10:13:36 +02:00
David Sanders
e84bcb39e7
fix: defaultFontFamily in webPreferences (#37863)
* fix: defaultFontFamily in webPreferences

* chore: check if default_font_family_ is empty
2023-04-13 11:30:25 +02:00
Shelley Vohr
251e567eff
fix: don't emit did-fail-load for MediaDocuments (#37824)
* fix: don't emit did-fail-load for MediaDocuments

* spec: add test
2023-04-06 10:23:34 +02:00
Calvin
b8a21dbcd7
test: migrate to helpers & disabled tests list (#37513)
* test: migrate to helpers & disabled tests list

* can't disable a test suite

* correct condition

* address review comments
2023-04-04 09:48:51 -04:00
Will Anderson
2b9dae4b06
feat: add will-frame-navigate event (#34418)
* feat: add will-navigate-in-frame event to webContents

* docs: add documentation for webview will-frame-navigate event

* feat: Eliminate isInPlace argument from will-frame-navigate event

* fix: Fire will-frame-navigate before will-navigate

* feat: send will-frame-navigate with a WebFrameMain in the event details

* docs: Update WebContents docs for new API signature

* feat: Add custom event forwarding for <webview> will-frame-navigate

* fix: wrap WebFrameMain so it can be sent as an event

* test: update webContents and <webview> tests to match new signatures

* chore: undo unnecessary change

* fix: don't switch will-navigate to use EmitNavigationEventDetails

* test: clean up will-navigate and will-frame-navigate tests for <webview>

* chore: apply lint fixes

* chore: move GetRenderFrameHost helper into anonymous namespace

* docs: auto-generate WillFrameNavigateDetails rather than defining it manually

* test: Update <webview> tests to actually pass under new spec runner

* docs: Add section explaining relationship between various nav events

* test: Add some tests to ensure navigation event order doesn't silently change

* test: Always monitor all nav events to ensure unexpected ones don't fire

* test: Add test to verify in-page navigation event order

* feat: Change to new style where extra params are exposed as event props

* fix: Remove unused EmitNavigationEventDetails

* fix: Update tests to use new async helpers

* docs: Rename and reorder sections documenting navigation events

---------

Co-authored-by: Milan Burda <milan.burda@gmail.com>
2023-03-28 10:55:41 -04:00
Jeremy Spiegel
bf1cc1aeb2
fix: don't set delegate for QLPreviewPanel (#37530)
fix: don't set delegate for QLPreviewPanel
2023-03-14 14:41:34 +01:00
Jeremy Rose
3a5ae28c95
feat: expose initiator in navigation events (#37085) 2023-02-28 11:08:22 -08:00
Jeremy Rose
a3e3efe4c4
test: use node helpers for events.once and setTimeout promise (#37374) 2023-02-23 15:53:53 -08:00
Shelley Vohr
32c60b29bb
fix: html fullscreen when window not fullscreenable (#37348) 2023-02-21 12:11:34 +01:00
Cheng Zhao
a92fd2aa05
fix: restoring X11 window should not remove previous maximize state (#37346) 2023-02-21 09:49:02 +01:00
Milan Burda
f97d68c4bf
test: convert functions to async & eliminate duplicates (#37316)
test: convert functions to async

Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-02-20 12:30:57 +01:00
Milan Burda
cf10c19c33
test: cleanup let xyz = null as unknown as T; (#37335) 2023-02-19 01:24:24 -08:00
Milan Burda
ee87438d28
test: use async helpers to simplify tests (#37314)
test: use async helpers to simplify the tests

Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-02-17 12:32:39 -06:00
Cheng Zhao
0de1012280
feat: add BrowserWindow.set/getWindowButtonPosition APIs (#37094) 2023-02-17 19:06:32 +09:00
Milan Burda
ea848bc1c5
test: use webContents.create() in type-safe way (#37281)
test: use (webContents as typeof ElectronInternal.WebContents).create()

Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-02-16 15:41:41 +01:00
Milan Burda
8d382b9c60
chore: remove deprecated capturer count APIs (#37075)
chore: remove deprecated incrementCapturerCount() / decrementCapturerCount()

Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-02-06 07:54:47 -08:00
electron-roller[bot]
d02c9f8bc6
chore: bump chromium to 111.0.5544.3 (main) (#36820)
* chore: bump chromium in DEPS to 111.0.5522.0

* chore: bump chromium in DEPS to 111.0.5524.0

* chore: bump chromium in DEPS to 111.0.5526.0

* chore: bump chromium in DEPS to 111.0.5528.0

* chore: update patches/chromium/mas_avoid_usage_of_private_macos_apis.patch

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

Fix simple code shear

* chore: update patches/chromium/unsandboxed_ppapi_processes_skip_zygote.patch

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

Fix simple code shear

* chore: update patches/chromium/hack_plugin_response_interceptor_to_point_to_electron.patch

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

Fix simple code shear; applied cleanly w/patch-fuzz

* chore: update patches/chromium/disable_unload_metrics.patch

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

Fix simple code shear; applied cleanly w/patch-fuzz

* chore: update patches/chromium/feat_add_data_parameter_to_processsingleton.patch

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

Fix simple code shear; applied cleanly w/patch-fuzz

* chore: update patches/chromium/preconnect_manager.patch

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

Fix simple code shear; applied cleanly w/patch-fuzz

* chore: update patches/v8/force_cppheapcreateparams_to_be_noncopyable.patch

https://chromium-review.googlesource.com/c/v8/v8/+/3533019

Fix simple code shear; applied cleanly w/patch-fuzz

* chore: update patches

* chore: update patches/chromium/add_maximized_parameter_to_linuxui_getwindowframeprovider.patch

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

Upstream added a new call to HeaderContext(), whose signature we have patched

* chore: bump chromium in DEPS to 111.0.5530.0

* chore: update patches

* Move ChildProcessHost* from content/common to content/browser

Xref: Move ChildProcessHost* from content/common to content/browser

* Remove RenderViewHostChanged

Xref: https://chromium-review.googlesource.com/c/chromium/src/+/4134103
[upstream removal of RenderViewHostChanged]

Xref: https://chromium-review.googlesource.com/c/chromium/src/+/4092763
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/4093234
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/4133892
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/4134103
[examples of upstream code adjusting to the change]

Upstream handles this change in roughly two approaches:

1. Move the code over to RenderFrameHostChanged(old_host, new_host)
   but test for new_host->IsInPrimaryMainFrame() before acting

2. Migrate to the PrimaryPageChanged(page) API and use
   page.GetMainDocument() to get the RenderFrameHost.

I've chosen 1. because electron_api_web_contents needed that pointer
to old_host to call RemoveInputEventListener(), but I may be missing
some context & would appreciate review on this commit.

* Make electron/shell/browser/relauncher_win.cc use <winternl.h>

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

Many internal Windows types are now available in winternl.h
so upstrem no longer defines the types themselves.

* Move ChildProcessHost* from content/common to content/browser

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

* fixup! Make electron/shell/browser/relauncher_win.cc use <winternl.h>

winternl.h does not define the field we need, so clone the struct Chromium was using into unnamed namespace

* fixup! Move ChildProcessHost* from content/common to content/browser

chore: update #includes too

* chore: bump chromium in DEPS to 111.0.5532.0

* chore: sync patches/chromium/pepper_plugin_support.patch

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

manually reync patch; no code changes

* chore: sync patches/chromium/mas_no_private_api.patch

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

the content/common/pseudonymization_salt.cc patch is no longer needed

* chore: sync patches/chromium/mas_disable_remote_accessibility.patch

patch-fuzz update; no manual changes

* chore: sync patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch

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

manually reync patch; no code changes

* chore: sync patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch

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

manually reync patch; no code changes

* chore: sync patches/v8/fix_build_deprecated_attribute_for_older_msvc_versions.patch

Xref: https://chromium-review.googlesource.com/c/v8/v8/+/4127230

patch-fuzz update; no manual changes

* chore: rebuild patches

* fixup! Remove RenderViewHostChanged

Use PrimaryPageChanged()

* chore: remove unused method TabsUpdateFunction::OnExecuteCodeFinished()

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

This private, already-unused function showed up as a FTBFS because it
took a base::ListValue parameter and ListValue was removed upstream.

* task posting v3: remove includes of runner handles and IWYU task runners

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

* chore: lint

* chore: more lint

* fixup! task posting v3: remove includes of runner handles and IWYU task runners

macOS, too

* fixup! task posting v3: remove includes of runner handles and IWYU task runners

* chore: bump chromium in DEPS to 111.0.5534.0

* chore: sync patches/chromium/allow_new_privileges_in_unsandboxed_child_processes.patch

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

patch-fuzz update; no manual changes

* chore: sync patches/chromium/logging_win32_only_create_a_console_if_logging_to_stderr.patch

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

Sync to minor upstream changes. Add const correctness.

* chore: sync electron/patches/chromium/feat_configure_launch_options_for_service_process.patch

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

patch-fuzz update; no manual changes

* chore: patches/v8/fix_build_deprecated_attribute_for_older_msvc_versions.patch

sync https://chromium-review.googlesource.com/c/v8/v8/+/4147787

patch-fuzz update; no manual changes

* chore: update patches

* chore: bump chromium in DEPS to 111.0.5536.0

* chore: sync patches/chromium/allow_new_privileges_in_unsandboxed_child_processes.patch

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

Sync with upstream code changes. Minor code golf for readability.

Note: upstream is laying groundwork for being able to work off of env vars
instead of switches. Doesn't affect us yet but worth being aware of.

> + // Environment variables could be supported in the future, but are not
> + // currently supported when launching with the zygote.

* chore: update patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch

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

patch-fuzz update; no manual changes

* chore: sync electron/patches/chromium/feat_configure_launch_options_for_service_process.patch

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

manual sync

* chore: sync electron/patches/v8/fix_build_deprecated_attribute_for_older_msvc_versions.patch

https://chromium-review.googlesource.com/c/v8/v8/+/4147788

fuzz-patch

* chore: rebuild patches

* chore: bump chromium in DEPS to 111.0.5538.0

* chore: bump chromium in DEPS to 111.0.5540.0

* chore: update patches

* Remove sdk_forward_declarations

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

* task posting v3: Remove task runner handles from codebase entirely

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

* Cleanup child_process_launcher_helper*

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

* fix: utilityprocess spec on macOS

* fix: build on windows

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

* chore: fix lint

* chore: bump chromium 111.0.5544.3

* chore: gen filenames.libcxx.gni

* Add check for Executable+Writable handles in renderer processes.

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

* fixup! Add check for Executable+Writable handles in renderer processes.

* 4143761: [110] Disable SwiftShader for WebGL on M1 Macs.

https://chromium-review.googlesource.com/c/chromium/src/+/4143761
(cherry picked from commit 2f74db3c2139424c416f92d9169aeaa8a2f9c1ec)

* chore: bump chromium to 111.0.5555.0

* 56085: Remove hmac.h include from ssl.h.

https://boringssl-review.googlesource.com/c/boringssl/+/56085

* 4167020: Remove forwarding headers

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

* chore: bump chromium to 111.0.5559.0

* 4181044: Restrict WebCursor usage to RenderWidgetHostViewAura

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

* 4189437: views: rename ink_drop_host_view to ink_drop_host

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

* chore: bump chromium to 111.0.5560.0

* 4167016: win7dep: remove non aeroglass code

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

* fixup after rebase: Remove forwarding header

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

* 4125755: Reland "Reject getDisplayMedia calls without user activation"

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

* test: add workaround

* chore: update patches

* fix: alter coreModuleRegExp to prevent arm crash

* Revert "fix: alter coreModuleRegExp to prevent arm crash"

This reverts commit 7e50630c98137831a711c5abdbc8809e60cf1d73.

* 4218354: Disable the use of preserve_most on arm64 Windows

https://chromium-review.googlesource.com/c/v8/v8/+/4218354

* chore: review changes

---------

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: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2023-02-03 12:43:42 +01:00
Milan Burda
4bc6b15f53
refactor: move spec helpers to spec/lib (#37010)
Co-authored-by: Milan Burda <miburda@microsoft.com>
2023-01-25 13:01:25 -08:00
Milan Burda
5fd7a43970
test: replace (webContents as any).destroy() with webContents.destroy() (#36653)
Co-authored-by: Milan Burda <miburda@microsoft.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2022-12-14 16:07:38 -05:00
Keeley Hammond
b71cccb0d6
ci: bake appveyor images automatically, run sync on depshash change (#35396)
* chore: update yml formatting for parser

* ci: bake appveyor images automatically, run sync on depshash change

* chore: clean up .yml files

* chore: bump to e-110.0.5415.0
2022-11-21 10:24:26 -05:00
Brad Carter
15540975ff
feat: Add BrowserWindow option to hide window in Mission Control (macOS) (#36092)
* feat: Add BrowserWindow option to ignore Mission Control (macOS)
* There are many circumstances when app developers may want to hide their
windows from mission control. E.g., full screen overlays, small helper
windows, dialogs, etc.
* This PR adds the functionality, docs, and tests.

* chore:Rename variables

* Update shell/browser/native_window_mac.h

Co-authored-by: Samuel Maddock <samuel.maddock@gmail.com>

Co-authored-by: Samuel Maddock <samuel.maddock@gmail.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2022-11-01 16:43:42 -04:00
Jeremy Rose
07530f8e37
test: fix flake in will-navigate test (#36153) 2022-10-27 09:29:19 -04:00
Shelley Vohr
e8ae0571b8
test: remove redundant color diffing dependency (#33215) 2022-10-11 13:11:58 -04:00
Shelley Vohr
faafcc7f87
refactor: eliminate DecrementCapturerCount patch (#35710) 2022-10-05 19:51:33 +02:00
marekharanczyk
532162d2b5
fix: EventEmitter is missing properties in sandbox preload script. (#35522) 2022-09-15 09:33:08 -07:00
Shelley Vohr
a3a9463024
fix: fullscreen crashing with roundedCorners: false (#35421) 2022-08-25 13:39:01 +02:00
Jeremy Rose
db7c92fd57
test: drop now-empty remote runner (#35343)
* test: drop the now-empty remote runner from CI

* move fixtures to spec-main

* remove remote runner

* fix stuff

* remove global-paths hack

* move ts-smoke to spec/

* fix test after merge

* rename spec-main to spec

* no need to ignore spec/node_modules twice

* simplify spec-runner a little

* no need to hash pj/yl twice

* undo lint change to verify-mksnapshot.py

* excessive ..

* update electron_woa_testing.yml

* don't search for test-results-remote.xml

it is never produced now
2022-08-16 15:23:13 -04:00
Renamed from spec-main/api-browser-window-spec.ts (Browse further)