* chore: add deprecation warning on setting app.allowRendererProcessReuse to false
* fix: no deprecation warnings in process reuse spec
* chore: add test for new deprecate removeProperty behavior
* docs: add references to app.whenReady() in isReady
* refactor: prefer app.whenReady()
In the docs, specs, and lib, replace instances of `app.once('ready')`
(seen occasionally) and `app.on('ready')` (extremely common) with
`app.whenReady()`.
It's better to encourage users to use whenReady():
1. it handles the edge case of registering for 'ready' after it's fired
2. it avoids the minor wart of leaving an active listener alive for
an event that wll never fire again
* chore: bump chromium in DEPS to a1ea0d7aedd6b5fe58fbabfa3b05aa8ee41304ff
* update patches
* update extensions code
* Remove WebPoint
https://chromium-review.googlesource.com/c/chromium/src/+/2007474
* fix build
* chore: bump chromium in DEPS to 9351e26c2a3714f8bbb10789c71bb51b0b494c75
* update patches
* Remove error description from the DidFailLoadWithError message
https://chromium-review.googlesource.com/c/chromium/src/+/2011280
* Make SimpleNetworkHintsHandlerImpl use the right NetworkIsolationKey
https://chromium-review.googlesource.com/c/chromium/src/+/1994430
* Rename libgtkui to gtk
https://chromium-review.googlesource.com/c/chromium/src/+/2011683
* [metrics] Remove histogram Startup.WarmStartTimeFromRemoteProcessStart*.
https://chromium-review.googlesource.com/c/chromium/src/+/2003211
* fix requestSingleInstanceLock test
* chore: bump chromium in DEPS to a813567a4f17ea08292c2b26fa10d0ffd47010d9
* chore: bump chromium in DEPS to f0aca2de536ceecd6eb66e928051d11e6d11991f
* chore: bump chromium in DEPS to 865556af6d0c9d990f5b1816cb792f7c3859667b
* chore: bump chromium in DEPS to 98538fdd28c4b6692e4cc2839729bb7ac009586a
* update patches
* fix broken tests
* Update node tests for v8 changes
* Update node patches for test failures
* Update for number of tests
Co-authored-by: Jeremy Apthorp <nornagon@nornagon.net>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* feat: enable picture in picture mode for video tags
* test: add test to verify picture in picture support
* lint: fix indent
* fix: clean up after rebase
* test: update test with 16:9 test video
* fix: .paches after rebase
* Initial changes to use crashpad for windows
* Remove crashpad patch
* Report error when failed to connect pipe
* Allow crashpad to communicate with named pipe
* Add patch to make crashpad named pipe work
* Windows also needs crashReporter on main process
* Call SetUnhandledExceptionFilter in node process
Node can also use crash reporter.
* Do not treat node process as browser process
* No more need to manually start crash service
* Use base::StringPrintf for better readbility
* Print error when pipe name not available
* Make sure pipe name is updated
Note that the crashpad may be started after renderer process gets
created.
* Fix some tests
* Update node
* Exclude crashpad files on Linux and MAS
* Fix lint warning
* Remove unused checks
* kCrashpadPipeName is only available on Windows
* Fix uploadToServer tests
* Fix extra params tests
* Fix getCrashesDirectory tests
* Run crashReporter tests on CI
* Style fixes
* Update crashreporter docs
* Rename InitBreakpad to Init
* Add comment for process_type_.empty() and UTF16ToASCII to UTF16ToUTF8.
* Update build.gn include crashpad headers
* Address comment https://github.com/electron/electron/pull/18483#discussion_r290887898
* Avoid using api::WebContents
* Put kRunAsNode in atom_constants
* Remove duplicate settings on upload params
* Fix building on macOS
* Update description for crashpad_pid_check.patch
* Get a site instance related to current one instead of creation a new one
Using `GetRelatedSiteInstance` will keep the relation (same browsing instance) between the current and the new site instance.
* Some relies on preloads in opened window
The fact that, now, we always have an opener for opened windows diables note integration in opened windows, except if `nodeIntegrationInSubFrames` is enabled.
* Add a test on window.opener after cross-orgin navigation
* Make sure to unregisterProtocol in tests
* Introduc and use a NetworkSandbox for tests
* Modify tests about zoom persistence to properly simulate cross-origin navigation
* Revert "Modify tests about zoom persistence to properly simulate cross-origin navigation"
This reverts commit 0a7537f2eb7f183ddec16637e8a2e92a0d600321.
* chore: allow conditional disable of the site instance override patches at runtime
* feat: add app.allowRendererProcessReuse property to allow runtime disable of site instance overrides
spec: add tests for the new allowRendererProcessReuse property
feat: add console warnings / errors for loading non context-aware native modules
* Only error if the patch is disabled
* Warn all the time, this will ship in Electron 7
* test: add test for second-instance event parameter
* robustify getting data from child process
* fix test on windows
* fix lint
* Update api-app-spec.js
* fix package-lock.json
* feat: promisify the Cookie API
* chore: update specs to test promisified cookies
* chore: add deprecate wrapper for cookie callback API
* docs: update docs to cookie promise changes
* chore: remove redundant namespace use
* docs: improve cookie example
* docs: restore docs for cookie callback API
* chore: restore cookie callback tests
* fix: syntax of cookie promise return types
Unify the behavior between default app and packaged apps:
- create default application menu unless the app has one
- default window-all-closed handling unless the app handles the event
* fix: use Chromium's determined new site instance as candidate when navigating.
When navigating to a new address, consider using Chromium's determined site instance
for the new page as it should belong to an existing browsing instance when the
navigation was triggered by window.open().
fixes 8100.
* Revert "fix: use Chromium's determined new site instance as candidate when navigating."
This reverts commit eb95f935654a2c4d4457821297670836c10fdfd5.
* fix: delegate site instance creation back to content when sandboxed.
* fix: ensure site isolation is on
* test: adapt ut for cross-site navigation
* fix: register pending processes during a navigation.
* refactor: dont call loadURL for a window constructed from an existing webContents.
* test: add sandboxed affinity UT's.
* fix: check affinity before deciding if to force a new site instance.
* chore: adapt subsequent patch.
* refactor: constify logically const methods.
* fix: do not reuse site instances when navigation redirects cross-site.
* test: ensure localStorage accessible after x-site redirect.
* test: adapt localStorage acess denied UT for site isolation.
* fix: do not send render-view-deleted for speculative frames.
* chore: amend tests after rebase.
* test: add ut for webContents' render-view-deleted emission
* fix: introduce current-render-view-deleted for current RVH's deletions.
Revert render-view-deleted to being emitted with any RVH's deletion.
current-render-view-deleted is emitted only when the RVH being deleted
is the current one.
* refactor: style and comments fixed.
* fix: backport patch that ensures that cookie store is always created
* fix: disable cookie encryption
* fix: flush the cookie store when NetworkContext shuts down
* test: add test for cookie store persistance
* Update patches/common/chromium/ensure_cookie_store.patch
Co-Authored-By: brenca <benecene@gmail.com>
* Update patches/common/chromium/ensure_cookie_store.patch
Co-Authored-By: brenca <benecene@gmail.com>
* fix: child window with nativeWindowOpen should disable node integration
* Revert "fix: do not enable node integration in child window if not enabled (#15076)"
This reverts commit 0252d7686c.
This patch is not needed anymore since we are force disabling node integration
for child windows.