trop[bot]
ae9f2df082
feat: add WebFrameMain detached property ( #44209 )
...
* feat: add WebFrameMain detached property
fix: throw instead of returning null senderFrame
test: detached frames
fix: ensure IPCs of pending deletion RFHs are dispatched
fix: lookup WFM by FTN ID to dispatch IPCs
feat: add frame.isDestroyed()
return null
fix: return undefined
docs: add null to all frame properties
refactor: option c, return null and emit warning
refactor: add routingId & processId to navigation events
test: null frame property
docs: clarify warning message
better wording
clarify null frame
fix: browserwindow spec
* maybe fix 🤷
* fix: use updated util #43722
* docs: add notice for frame change of behavior
* docs: clarify why frame properties may be null
* lint
* wip
* fix: content::FrameTreeNodeId lookup and converter
* refactor: avoid holey array deoptimization
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Sam Maddock <smaddock@slack-corp.com>
2024-10-31 12:07:50 +01:00
Samuel Attard
e9cb85bea6
build: add import/order eslint rule ( #44106 )
...
build: add import/order eslint rule (#44085 )
* build: add import/order eslint rule
* chore: run lint:js --fix
2024-10-02 20:52:01 -07:00
Samuel Attard
8af5c6d130
build: update some build dependencies ( #44069 )
...
* build: update some build dependencies (#43882 )
* build: update some build dependencies
* build: fix eslint issues after updating
* build: disable ts check on busted js example
* build: update internal types for stricter event handling
* restore url.parse behavior
* fix typing issues
* sigh
* build: update easy deps
* build: skip woa engines check
* build: s/colors/chalk
2024-10-01 11:09:28 -07:00
trop[bot]
ce2163da2f
fix: remove resize listener when BrowserWindow closed ( #44000 )
...
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-09-27 14:46:22 -04:00
trop[bot]
45a7a5d22c
fix: `createWindow` shouldn't load URL for `webContents` ( #43816 )
...
* fix: createWindow shouldn't load URL for webContents
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* chore: add non about blank test
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-09-20 08:47:30 -05:00
trop[bot]
b896dbb103
fix: third time screen sharing on macOS ( #43810 )
...
Because we used decrementing negative source ids for fake video id when
instantating a native macOS screen share picker, we eventually hit the
`DesktopMediaID::kFakeId = -3` in Chromium source code which displayed a
test green screen.
In this change we reserve our own fake id of `-4` and decrement the
window id integer for uniqueness instead.
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Fedor Indutny <238531+indutny@users.noreply.github.com>
2024-09-19 22:12:19 -05:00
trop[bot]
2aa2611f76
feat: add support for system picker in setDisplayMediaRequestHandler ( #43680 )
...
* tmp
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
* feat: add support for system picker in setDisplayMediaRequestHandler
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
* oops
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
* Apply suggestions from code review
Co-authored-by: Erick Zhao <erick@hotmail.ca>
Co-authored-by: Samuel Attard <sam@electronjs.org>
* stuff
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
* well...
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
* seems legit
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
* chore: update patch to handle screenCapturer
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* feat: modify API to use useSystemPicker
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* fix: gate ScreenCaptureKitPicker to macos 15 or higher
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* fix: don't use native picker with legacy media selection
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* chore: code review, boolean set & docs update
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* fix: add cancelCallback
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* docs: clarify session & desktopCapturer docs
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
* chore: update patches
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
Co-authored-by: Samuel Attard <sam@electronjs.org>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
2024-09-11 09:57:39 -07:00
trop[bot]
12ce546ded
fix: update `BrowserView#lastWindowSize` after window resize ( #43636 )
...
fix: update BrowserView#lastWindowSize after window resize (#43462 )
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Zonglong Liu <83216456+mai-121@users.noreply.github.com>
2024-09-09 17:40:27 +02:00
trop[bot]
75ce3ac6a2
fix: menu should allow focused `BaseWindow` where possible ( #43438 )
...
fix: menu should allow focused BaseWindow
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-08-22 15:51:20 -05:00
trop[bot]
e08be7d8ce
chore: fix typos in 'spec/' folder (and one in 'lib/' folder) ( #43432 )
...
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Alexander Cyon <alex.cyon@gmail.com>
2024-08-22 12:30:24 -05:00
trop[bot]
85bac873e7
fix: touch bar functionality on BaseWindow ( #43422 )
...
* fix: touch bar functionality on BaseWindow
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* test: add test for BaseWindow.setTouchBar
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-08-22 16:03:33 +02:00
Vít Černý
189675575c
feat: extend navigationHistory API ( #42014 )
...
* feat: extend navigationHistory API
* refactor: simplify index checking
* refactor: rename 'getHistory' and 'replaceHistory' methods of navigationHistory
* refactor: rename delete*() methods to remove*()
* feat: remove navigationHistory.replaceHistory()
* tests: add tests for removeEntryAtIndex and getAllEntries
2024-08-19 15:46:04 -04:00
Alice Zhao
4286234721
fix: redirect webview navigation methods ( #42981 )
2024-07-29 13:00:51 +02:00
Keeley Hammond
2fd04a78a1
fix: revert BrowserWindow unresponsive handling refactor ( #43034 )
...
* Revert "refactor: JSify BrowserWindow unresponsive handling (#37902 )"
This reverts commit 67ba30402b
.
* chore: remove BrowserWindow::SetTitleBarOverlay
---------
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-07-25 13:02:02 -07:00
Shelley Vohr
cfdcf48e1b
fix: desktopCapturer breaks BrowserWindow resizable on macOS ( #43013 )
...
* fix: desktopCapturer breaks BrowserWindow resizable on macOS
* test: oops fix showing
2024-07-25 11:17:37 +02:00
Shelley Vohr
5669a40d5c
feat: add transparency checking to `nativeTheme` ( #42862 )
...
* feat: add transparency checking to nativeTheme
Refs https://chromium-review.googlesource.com/c/chromium/src/+/4684870
* chore: deprecate previous function
* chore: fix lint
2024-07-24 14:38:22 +02:00
arno renevier
81bdba67ec
feat: Implement password delegate for NSS ( #41205 )
...
* feat: Implement password delegate for NSS (#41188 )
Introduce an app event client-certificate-request-password. It allows
the user to display a UI to prompt for the password.
An alternative would have been to implement a class similar to
CryptoModulePasswordDialogView, to provide the UI. This might have been
simpler for the user, comparing to letting them implement the UI. But it
seems like electron does not have an i18n framework, so it's not
possible to provide a locale aware UI.
* fix lint:markdown error
* address review comments
* use a trampoline handler in JS. The api exposed is now app.setClientCertRequestPasswordHandler
* use properties on the Event object instead of positional parameters
* remove ChromeNSSCryptoModuleDelegate::OnPassword in favor of args->GetNext(&password_)
* address review comments second round
- backslash escape parametrized TypeScript
- rename hostName param to hostname
- use base::ScopedAllowBaseSyncPrimitivesForTesting
- and then, rename ChromeNSSCryptoModuleDelegate to ElectronNSSCryptoModuleDelegate
* Update docs/api/app.md
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
* Update docs/api/app.md
Co-authored-by: Erick Zhao <erick@hotmail.ca>
---------
Co-authored-by: Arno Renevier <arnaud@switchboard.app>
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
2024-07-17 09:48:03 -04:00
Shelley Vohr
cb2e7f130b
fix: potentially closed webContents in BrowserView ( #42633 )
2024-07-08 12:13:53 +02:00
Alice Zhao
e9a93a8c5c
fix: setTopBrowserView focus issue with reordering ( #42653 )
...
* fix: reorder top browser view instead of adding/removing
* fix: update browserViews order
* test: add a test for setTopBrowserView
2024-07-01 11:36:04 +02:00
Alice Zhao
406f644d26
feat: duplicate navigation related APIs to `contents.navigationHistory` ( #41752 )
...
* refactor: move navigation related api to navigationHistory
* docs: add deprecation messages to old web content methods
* fix: add deprecation warnings to webcontents
* fix: add deprecation warnings and make existing naviagation apis internal
* Update docs/api/web-contents.md
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
* Update docs/api/web-contents.md
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
* Update docs/api/web-contents.md
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
* Update docs/api/web-contents.md
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
* docs: fix links
* docs: add breaking change to 31
* docs: move breaking change to 32
* chore: re-run pipeline
---------
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
2024-06-05 09:34:47 -07:00
Anny Yang
5fb117a7d7
fix: don't destroy BrowserView webContents when owning BrowserWindow hasn't been closed ( #42353 )
...
* fix: moves bv webContents close to closed event
* chore: adds unit tests
* chore: test that bv webContents are destroyed when parent bw closed
2024-06-05 09:58:38 +02:00
Shelley Vohr
9f88820be9
fix: dialogs should work with BaseWindows internally ( #42315 )
2024-05-31 12:04:22 +02:00
Shelley Vohr
d0cb298f95
fix: `webContents.navigationHistory` should be enumerable ( #42139 )
...
fix: webContents.navigationHistory should be enumerable
2024-05-14 16:47:47 -04:00
electron-roller[bot]
653d0f009e
chore: bump node to v20.13.1 (main) ( #42088 )
...
* chore: bump node in DEPS to v20.13.0
* crypto: enable NODE_EXTRA_CA_CERTS with BoringSSL
https://github.com/nodejs/node/pull/52217
* test: skip test for dynamically linked OpenSSL
https://github.com/nodejs/node/pull/52542
* lib, url: add a `windows` option to path parsing
https://github.com/nodejs/node/pull/52509
* src: use dedicated routine to compile function for builtin CJS loader
https://github.com/nodejs/node/pull/52016
* test: mark test as flaky
https://github.com/nodejs/node/pull/52671
* build,tools: add test-ubsan ci
https://github.com/nodejs/node/pull/46297
* src: preload function for Environment
https://github.com/nodejs/node/pull/51539
* chore: fixup patch indices
* deps: update c-ares to 1.28.1
https://github.com/nodejs/node/pull/52285
* chore: handle updated filenames
- https://github.com/nodejs/node/pull/51999
- https://github.com/nodejs/node/pull/51927
* chore: bump node in DEPS to v20.13.1
* events: extract addAbortListener for safe internal use
https://github.com/nodejs/node/pull/52081
* module: print location of unsettled top-level await in entry points
https://github.com/nodejs/node/pull/51999
* fs: add stacktrace to fs/promises
https://github.com/nodejs/node/pull/49849
* chore: update patches
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
2024-05-13 11:43:14 -04:00
Shelley Vohr
c765d57265
fix: BrowserView autoresizing conversion error ( #42056 )
2024-05-13 10:27:01 +02:00
Jeremy Rose
4e8c28fdf0
fix: data corruption in `protocol.handle` ( #41894 )
2024-04-22 13:40:01 -07:00
Jeremy Rose
67ba30402b
refactor: JSify BrowserWindow unresponsive handling ( #37902 )
2024-04-18 13:14:07 -07:00
Alice Zhao
00e3445f8a
feat: add `navigationHistory.getEntryAtIndex(int index)` method ( #41577 )
2024-03-21 14:59:23 -07:00
Shelley Vohr
d5912fd05a
fix: webContents.print options should be optional ( #41467 )
2024-02-29 10:19:44 -05:00
Krzysztof Halwa
a0dad83ded
feat: Allow creation of new window to be customizable. ( #41432 )
2024-02-29 10:15:01 -05:00
Henrik Gaßmann
80906c0adb
fix: properly stream `uploadData` in `protocol.handle()` ( #41052 )
...
* refactor(protocol): extract file stream factory
Increase readability by moving the file stream creation logic out of the
`uploadData` to request body conversion function.
* fix: properly flatten streams in `protocol.handle()`
Refs: electron/electron#39658
* fix: `protocol.handle()` filter null origin header
Refs: electron/electron#40754
* fix: remove obsolete TODO comment
Refs: electron/electron#38929
* fix: forward `Blob` parts in `protocol.handle()`
Refs: electron/electron#40826
* fix: explicitly error out on unknown chunk parts
2024-02-16 14:29:29 -05:00
marekharanczyk
398ca2a019
fix: make sure invalid URL loads promises are fulfilled. ( #41194 )
...
* fix: make sure invalid URL loads promisses are fulfilled.
* fixup! fix: make sure invalid URL loads promisses are fulfilled.
2024-02-05 16:36:51 +09:00
Milan Burda
dac29f9949
refactor: type-safe module imports / requires ( #41192 )
2024-02-05 16:36:28 +09:00
Shelley Vohr
6df3443617
fix: validate `printToPDF` `margins` against `pageSize` ( #41157 )
...
fix: validate margins against pageSize
2024-01-31 10:48:41 +01:00
Shelley Vohr
6786fde576
docs: `document printToPDF` `generateDocumentOutline` option ( #41156 )
...
* doc: document printToPDF generateDocumentOutline option
* doc: ready event to whenReady
2024-01-30 09:55:03 -06:00
Cheng Zhao
db2bf1a0d1
fix: apply module search paths restriction on worker and child process ( #41118 )
2024-01-26 17:29:04 +09:00
Maikel Ortega Hernández
a05bfd332d
fix: on error, reset spawnedProcess ( #41033 )
...
reset spawnedProcess instance in case of error
2024-01-24 16:45:08 -06:00
Devraj Mehta
8c71e2adc9
feat: add net module to utility process ( #40017 )
...
* 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>
2024-01-04 16:20:37 -05:00
Jeremy Rose
15c6014324
feat: replace BrowserView with WebContentsView ( #35658 )
2023-12-13 13:01:03 -08:00
Tamás Zahola
a94fb2cb5d
fix: don't reject `loadURL()` promise from `did-fail-load` - use `did-finish-load` instead ( #40661 )
2023-12-12 11:45:14 -08:00
Jeremy Rose
85bc005cd6
refactor: move JS dialog handling to JS ( #40598 )
2023-12-05 17:36:23 -08:00
David Sanders
cf5f0419f1
chore: fix some typos ( #40506 )
2023-11-12 19:51:56 -08:00
Milan Burda
0f68d845f9
refactor: AutoUpdater for Windows using async/await ( #40289 )
2023-11-07 14:55:22 -08:00
Milan Burda
30fbcfca7b
chore: remove deprecated `gpu-process-crashed` event ( #40255 )
...
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2023-10-26 14:05:40 -04:00
Milan Burda
f66d4c7ee0
fix: make sure classes in lib correctly implement Electron interfaces ( #40291 )
2023-10-25 14:02:15 -04:00
Milan Burda
beb0cbc6d0
refactor: options parsing in WebContents.prototype.printToPDF() ( #40257 )
...
* refactor: options parsing in WebContents.prototype.printToPDF()
* tweak parsePageSize
2023-10-19 15:38:30 -04:00
Milan Burda
657e88b173
chore: remove deprecated `crashed` and `renderer-process-crashed` events ( #40115 )
2023-10-18 12:05:41 +02:00
Milan Burda
2c88626b51
chore: revert deprecate as an internal module ( #40146 )
...
Revert "chore: restore deprecate as an internal module (#40124 )"
This reverts commit 737e3de3fa
.
2023-10-10 11:50:47 -04:00
Milan Burda
737e3de3fa
chore: restore deprecate as an internal module ( #40124 )
...
* Revert "refactor: don't expose deprecate as an internal module (#35311 )"
This reverts commit 8424779906
.
* check crashed event warnings
2023-10-09 08:55:16 +09:00
Milan Burda
83a928f6e3
fix: crashed events deprecation ( #40090 )
2023-10-05 19:57:14 -04:00