Calvin
a6133e85d1
test: disable flaky macOS panel test & refactor screen capture testing ( #41441 )
...
* Disable flaky test
* Add helper for storing test artifacts
* Refactor screen capture tests
We have a pattern for inspecting a screen capture, so this refactor codifies that pattern into a helper. This gives us shorter test code, consistency (previously, the display in test code and the display captured could theoretically be different), and better debugging/observability on failure.
2024-02-28 12:54:20 +09:00
John Kleinschmidt
267c0796dd
ci: add logging to uploading to GitHub releases ( #41453 )
2024-02-27 19:55:08 -05:00
Shelley Vohr
b468b5e6e8
build: print error and retry on symstore fail ( #41452 )
2024-02-27 15:40:42 -08:00
Shelley Vohr
d89ad1106f
chore: add engflow-reclient-configs to gitignore ( #41447 )
2024-02-27 15:39:41 -08:00
Milan Burda
3885011220
chore: remove deprecated inputFieldType
( #41239 )
...
chore: remove deprecated inputFieldType
2024-02-26 07:47:16 -05:00
Milan Burda
3394ee71f0
chore: fix import from patches.py in script/lib/git.py ( #41430 )
2024-02-26 11:36:30 +09:00
Calvin
12d7a8ff66
feat: Session#clearData
API ( #40983 )
...
* WIP: Session.clearBrowsingData API
* impl API method
* clean up
* tidy types and comments
* add docs
* add barebones test
* forgot a `#` :(
* tidy: address review comments
* use format macro for cross-platform build
* add another test
* amend docs to disambiguate
* Rename to `clearData`
2024-02-26 09:39:17 +09:00
Shelley Vohr
e95673b052
refactor: prefer using base::NoDestructor
to base::{Singleton,LazyInstance}
( #41400 )
...
refactor: prefer using base::NoDestructor to base::{Singleton,LazyInstance}
2024-02-23 10:35:20 +01:00
Robo
26131b23b8
feat: add support for configuring system network context proxies ( #41335 )
...
* feat: add support for configuring system network context proxies
* chore: add specs
* chore: fix lint
* fix: address review feedback
2024-02-22 12:08:25 -05:00
Shelley Vohr
136762b45f
build: don't modify deps/v8/tools
paths ( #41386 )
...
build: don't modify deps/v8/tools paths
2024-02-22 11:35:06 -05:00
github-actions[bot]
d73a937375
build: update appveyor image to latest version-e-123.0.6312.5 ( #41408 )
...
build: update appveyor image to latest version
Co-authored-by: jkleinsc <jkleinsc@users.noreply.github.com>
2024-02-22 11:10:52 -05:00
Samuel Attard
ddd93529d5
fix: use ScreenCaptureKit exclusively on macOS 14.4 and higher ( #41397 )
...
This fixes a nasty warning / permission dialog that pops up to end-users
when consuming legacy APIs. Chrome has flipped these flags via field trials
as have other Electron apps. It should just be the default.
2024-02-21 12:59:49 -08:00
electron-roller[bot]
e72f4f7f26
chore: bump chromium to 123.0.6312.5 (main) ( #41337 )
...
* chore: bump chromium in DEPS to 123.0.6300.2
* chore: bump chromium in DEPS to 123.0.6301.2
* chore: update patches
* chore: bump chromium in DEPS to 123.0.6302.0
* chore: bump chromium in DEPS to 123.0.6304.0
* chore: update patches
* chore: bump chromium in DEPS to 123.0.6306.2
* chore: update patches
* chore: bump chromium in DEPS to 123.0.6308.0
* chore: update patches
* Refactor //components/pdf/common constants
https://chromium-review.googlesource.com/c/chromium/src/+/5292816
* Rename URLLoaderFactoryParams::is_corb_enabled to is_orb_enabled.
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5277040
* Add placeholder of speaker-selection permission.
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5278243
* Move kPdfMimeType to //components/pdf/common/constants.h
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5293155
* chore: gen-libc++-filenames.js
* Make GetClassName non virtual
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5293075
Refs https://issues.chromium.org/issues/324596267
* chore: bump chromium in DEPS to 123.0.6310.0
* chore: update filenames.libcxx.gni
* 5282732: Compute input region using correct pixel size.
https://chromium-review.googlesource.com/c/chromium/src/+/5282732
* fixup: Make GetClassName non virtual
* chore: bump chromium in DEPS to 123.0.6312.0
* chore: update patches
* chore: bump chromium in DEPS to 123.0.6312.5
* fixup: Make GetClassName non virtual
* docs: document speaker-selection
https://chromium-review.googlesource.com/c/chromium/src/+/5278243
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-02-21 15:27:05 -05:00
Keeley Hammond
f350cce64f
docs: update breaking changes language ( #41387 )
2024-02-21 11:25:53 -08:00
Keeley Hammond
94e643ab33
build: bump NMV to 123 for Electron 30 ( #41370 )
2024-02-21 10:02:36 -08:00
electron-roller[bot]
e87746ff0f
chore: bump node to v20.11.1 (main) ( #41353 )
...
* chore: bump node in DEPS to v20.11.1
* chore: update patches
* crypto: disable PKCS#1 padding for privateDecrypt
https://github.com/nodejs-private/node-private/pull/525
---------
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: Shelley Vohr <shelley.vohr@gmail.com>
2024-02-21 12:49:20 -05:00
Keeley Hammond
136d7e7e6a
fix: check for draggable regions outside of main frame ( #41377 )
2024-02-20 19:10:43 -08:00
Charles Kerr
7cd23a4900
perf: omit unnecessary work from ElectronRenderFrameObserver::ShouldNotifyClient()
( #41347 )
...
perf: omit unnecessary work from ElectronRenderFrameObserver::ShouldNotifyClient()
- (perf) GetBlinkPreferences() returns a const&, so we can use that
reference instead of making a temporary copy
- (perf) Don't create url object unless it's needed.
- (refactor) Move is_main_world() and is_isolated_world() from the
header into an anonymous namespace in the .cc file so they can
be inlined and made constexpr
2024-02-20 13:29:11 +01:00
Keeley Hammond
995f3dc120
fix: revert to legacyMainResolve in JavaScript for asar compatibility ( #41367 )
2024-02-18 23:21:13 -08:00
Keeley Hammond
d0b4489b7d
ci: fix helperPath calls in ci configs ( #41363 )
...
* ci: fix helperPath calls in ci configs
Co-authored-by: codebytere <codebytere@electronjs.org>
* ci: fix helperPaths harder
---------
Co-authored-by: codebytere <codebytere@electronjs.org>
2024-02-17 15:04:36 -08:00
Michaela Laurencin
ca0920872d
chore: update breaking-changes.md to reflect WebContentsView revert ( #41361 )
2024-02-17 09:20:53 -08: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
Shelley Vohr
d4413a8e53
chore: remove unused anonymous namespace methods ( #41333 )
2024-02-16 10:31:34 -06:00
Calvin
0356812026
docs: update release schedule for E30 ( #41339 )
2024-02-15 12:38:07 -08:00
github-actions[bot]
6acacf061c
build: update appveyor image to latest version - e-123.0.6296.0. ( #41350 )
...
build: update appveyor image to latest version
Co-authored-by: jkleinsc <jkleinsc@users.noreply.github.com>
2024-02-15 14:56:41 -05:00
Samuel Attard
7d6a754d47
fix: skip the first two invalid updates when SCK is enabled ( #41340 )
2024-02-14 11:56:29 -08:00
electron-roller[bot]
0dad99561b
chore: bump chromium to 123.0.6296.0 (main) ( #41204 )
...
* chore: bump chromium in DEPS to 123.0.6273.0
* chore: update patches
* chore: bump chromium in DEPS to 123.0.6274.0
* chore: update patches
* chore: bump chromium in DEPS to 123.0.6276.0
* chore: update patches
* WIP: 5239586: Change View::Layout() to take a PassKey.
https://chromium-review.googlesource.com/c/chromium/src/+/5239586
* WIP: 5239586: Change View::Layout() to take a PassKey.
https://chromium-review.googlesource.com/c/chromium/src/+/5239586
* chore: bump chromium in DEPS to 123.0.6278.0
* chore: bump chromium in DEPS to 123.0.6280.0
* chore: update patches
* chore: use net::CanonicalCookie::SecureAttribute()
renamed from IsSecure()
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5245913
* refactor: handle multiple requested device ids
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5132210
* refactor: trigger View layouts async with View::InvalidateLayout()
Upstream has introduced a PassKey to restrict who can call Layout()
directly. I've opted for calling `InvalidateLayout()` which is the
approach that upstream recommends.
If for some reason this approach doesn't work for us, we could use
`DeprecatedLayoutImmediately()` as a stopgap.
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5239586
Xref: https://chromium.googlesource.com/chromium/src/+/main/ui/views/view.h#809
Xref: https://chromium.googlesource.com/chromium/src/+/main/docs/ui/learn/bestpractices/layout.md?pli=1#don_t-invoke-layout_directly
* chore: bump chromium in DEPS to 123.0.6282.0
* chore: bump chromium in DEPS to 123.0.6284.0
* chore: update patches
* refactor: remove use of blink::MainThreadIsolate() pt 1/3
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5249640
* refactor: remove use of blink::MainThreadIsolate() pt 2/3
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5249640
* refactor: remove use of blink::MainThreadIsolate() pt 3/3
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5249640
* chore: update enum name to ui::AXMode::kPDFPrinting
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5270301
* chore: rebuild filenames.libcxx.gni
* chore: sync with upstream rename of PortProvider.TaskForHandle()
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5259103
* chore: bump chromium in DEPS to 123.0.6286.0
* chore: bump chromium in DEPS to 123.0.6288.0
* WebPreferences: Initialize in declaration.
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5277099
* chore: update webview_fullscreen.patch
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5053508
Simple update to fix patch shear
* chore: update feat_configure_launch_options_for_service_process.patch
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5254861
Simple update to fix patch shear
* chore: add IWC::Delegate::RecordResize() stub to fix FTBFS
https://chromium-review.googlesource.com/c/chromium/src/+/5268963
* chore: add FormControlType::kButtonPopover to the FormControlType converter
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5230929
* chore: e patches all
* chore: node script/gen-libc++-filenames.js
* chore: bump chromium in DEPS to 123.0.6290.0
* chore: bump chromium in DEPS to 123.0.6291.0
* chore: bump chromium in DEPS to 123.0.6292.0
* chore: bump chromium in DEPS to 123.0.6294.0
* chore: update fix_aspect_ratio_with_max_size.patch
Xref: fix_aspect_ratio_with_max_size.patch
note: simple absl::optional -> std::optional conversion
* chore: update feat_filter_out_non-shareable_windows_in_the_current_application_in.patch
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5272337
* chore: update add_maximized_parameter_to_linuxui_getwindowframeprovider.patch
No manual changes; just adjusting line patch offsets
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5258688
* chore: update feat_configure_launch_options_for_service_process.patch
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5281322
* chore: update fix_select_The_first_menu_item_when_opened_via_keyboard.patch
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5279376
note: simple absl::optional -> std::optional conversion
* chore: update feat_allow_code_cache_in_custom_schemes.patch
Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5268792
* chore: script/export_all_patches.py
* chore: bump chromium in DEPS to 123.0.6296.0
* chore: update patches
* fixup! chore: update feat_allow_code_cache_in_custom_schemes.patch
* fix: restore MessagePort close event
* spec: fix CORB testing
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5231506
* fix: use sync layout when content view changes
* fixup! chore: update feat_configure_launch_options_for_service_process.patch
* Add remote-cocoa support for context menus.
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5259806
* Rename //net/base/mac directory to //net/base/apple (1/n)
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5211389
* fixup! Add remote-cocoa support for context menus.
* [Clipboard] Don't add meta charset tag for async write() method on Mac.
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5187335
---------
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: Charles Kerr <charles@charleskerr.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
2024-02-14 12:33:32 -05:00
David Sanders
7e241eef7c
ci: update GitHub actions workflow dependencies ( #41321 )
2024-02-14 11:13:03 +01:00
Mikhail Leliakin
79147e4dd8
fix: Ignore -webkit-app-region: drag;
when window is in full screen mode. ( #41307 )
...
Co-authored-by: Mikhail Leliakin <lelyakin.aus@gmail.com>
2024-02-14 11:12:41 +01:00
Samuel Attard
32920af4b7
fix: add capability to use ScreenCaptureKit for thumbnail generation ( #41328 )
...
This aligns us with Chromiums flags / capabilities in regards to using SCK for
everything. Currently on 14.4 Electron apps will pop warnings for usage of
deprecated APIs. With this change and a few "enable-features" toggles.
`--enable-features="ScreenCaptureKitMac,ScreenCaptureKitStreamPickerSonoma,ThumbnailCapturerMac:capture_mode/sc_screenshot_manager"`
As Chromium enables these by default Electron will inherit those changes, apps wishing to skip ahead can apply these flags early.
2024-02-13 20:46:51 -08:00
Shelley Vohr
0218af9af0
fix: work around unarchivedObjectOfClass
requiring secureCoding
( #41319 )
2024-02-13 19:08:03 -08:00
Charles Kerr
6a616ab70c
feat: allow custom refs for patch import & export ( #41306 )
...
* feat: allow custom refs for patch import & export
feat: add Patch-Dir metainfo, a sibling to Patch-Filename
* chore: copyediting
* refactor: minor copyediting
2024-02-12 10:05:53 -06:00
Shelley Vohr
5f785f213e
revert: add BrowserWindow.isOccluded()
...
This reverts commit 768ece6b54
.
2024-02-12 09:35:34 +01:00
Shelley Vohr
4ded4d16a8
fix: destroy NodeService
message pipe last ( #41277 )
...
refactor: destroy NodeService message pipe last
2024-02-09 22:44:35 +01:00
Shelley Vohr
c894645ac6
fix: crash on macOS non-programmatic close ( #41264 )
2024-02-09 22:44:24 +01:00
Charles Kerr
9655ae7d6a
fix: GetCursorScreenpoint()
sometimes wrongly returns (0,0)
( #41275 )
2024-02-09 09:44:46 -06:00
Charles Kerr
cee51785e1
refactor: inline simple getters, pt . 2 ( #41254 )
...
* refactor: inline AutofillPopup::line_count()
refactor: inline AutofillPopup::value_at()
refactor: inline AutofillPopup::label_at()
* refactor: inline NativeWindow::aspect_ratio()
refactor: inline NativeWindow::aspect_ratio_extra_size()
* refactor: inline BrowserProcessImpl::linux_storage_backend()
* refactor: inline ElectronMenuModel::sharing_item()
* refactor: inline Browser::badge_count()
* refactor: inline WebContents::is_guest()
refactor: inline InspectableWebContents::is_guest()
* refactor: inline InspectableWebContents::dev_tool_bounds()
* refactor: inline WebContents::type()
2024-02-09 10:29:14 +01:00
Charles Kerr
b253d52faf
build: export matching patches ( #41174 )
...
* build: make patches/config.json an array of objects
This file was previously an object of patch_dir keys to repo values;
Now is an array of objects containing `patch_dir` and `repo` properties.
This makes other per-target properties (e.g. `grep`) possible.
* build: include Note metadata when exporting patches
* build: support keyword filtering in export_patches()
* build: add optional `--grep` arg to git-export-patches script
* build: update export_all_patches to understand new config file
* fixup! build: update export_all_patches to understand new config file
chore: make lint happy
* fixup! build: make patches/config.json an array of objects
chore: fix oops
* refactor: remove support for the old file format
There is more code using config.json than I thought, so the
effort-to-reward of supporting the old format is not worth it.
* build: update apply_all_patches to understand new config file
* build: update lint.js to understand new config file
* build: update patches-mtime-cache.py to understand new config file
* fixup! build: update apply_all_patches to understand new config file
fix: oops
* fixup! build: update apply_all_patches to understand new config file
fix minor syntax wart
* fixup! build: support keyword filtering in export_patches()
refactor: use idiomatic python
* refactor: warn if config.json has an invalid repo
2024-02-08 13:47:59 -05:00
github-actions[bot]
4d060afc98
build: update appveyor image to latest version ( #41206 )
...
Co-authored-by: jkleinsc <jkleinsc@users.noreply.github.com>
2024-02-08 15:01:05 +01:00
Shelley Vohr
8eb580e79a
docs: note EXIF data unsupported in nativeImage
( #41261 )
...
* docs: note EXIF data unsupported in nativeImage
* Update docs/api/native-image.md
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
---------
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2024-02-08 14:59:46 +01:00
Bogdan Cerovac
42087e306c
fix: add language to html in quick-start.md ( #41225 )
...
Add language to html in quick-start.md
We must define language in HTML for different reasons (accessibility++)
2024-02-08 10:27:50 +09:00
Milan Burda
2ea569e0d2
docs: fix docs/api/base-window.md ( #41240 )
...
* docs: fix docs/api/base-window.md
* Update docs/api/base-window.md
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
---------
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2024-02-08 10:13:48 +09:00
Felix Rieseberg
4367c5ad9e
docs: Properly document runAsNode utility process option ( #41255 )
...
* docs: Properly document runAsNode utility process option
* Update docs/api/utility-process.md
Co-authored-by: Charles Kerr <charles@charleskerr.com>
---------
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2024-02-06 15:54:36 -08:00
Cheng Zhao
92c5ff30a7
build: add flag for setting vendor version ( #41247 )
2024-02-06 14:23:17 -08:00
Charles Kerr
5686f88bd2
refactor: KeyWeakMap cleanup ( #41242 )
...
* refactor: make KeyWeakMap::KeyObject private
* perf: avoid redundant map lookup
* refactor: remove unused KeyWeakMap::Has()
* refactor: make KeyWeakMap dtor nonvirtual
no inheritance used, so no need for virtual dtor?
* chore: fix KeyWeakMap code comment
* refactor: use if statement in KeyWeakMap::Get()
* refactor: use better variable names in KeyWeakMap::Values()
2024-02-06 09:18:05 -06:00
Shelley Vohr
768ece6b54
feat: add BrowserWindow.isOccluded()
( #38982 )
...
feat: add BrowserWindow.isOccluded()
2024-02-06 11:30:35 +01:00
Charles Kerr
08236f7a9e
refactor: remove deprecated BrowserContext::ResourceContext ( #41221 )
...
* refactor: remove ResourceContext* arg from GetNSSCertDatabaseForResourceContext()
* refactor: remove ResourceContext* arg from CertificateManagerModel::GetCertDBOnIOThread()
* refactor: remove BrowserContext* arg from CertificateManagerModel::Create()
* refactor: remove unused forward declarations
* refactor: rename method to GetNSSCertDatabase()
* fixup! refactor: remove BrowserContext* arg from CertificateManagerModel::Create()
chore: remove unneeded line
2024-02-05 18:12:34 -06:00
Shelley Vohr
5dfa9e3317
fix: original-fs
import replacement ( #41209 )
...
fix: original-fs import replacement
2024-02-05 09:51:04 +01:00
wujinli
fb888a6989
fix: crash problem with message_port close event ( #41201 )
...
When worker_thread shutdown, it will destory context and close
message_port. In this case, it should not dispatch close event.
Because it forbid script running during NotifyContextDestroyed in
ContextLifecycleNotifier.
Now chromium has implemented close_event and will not crash,
so we remove the patch with #22532 and add one test.
2024-02-05 16:38:30 +09: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