Charles Kerr
b6bf277b6f
refactor: reduce code duplication in gin_helper::Promise ( #43716 )
...
* refactor: move scope scaffolding into SettletScope
idea stolen from SpellCheckScope
* refactor: move impl of PromiseBase::RejectPromise() to the cc file
* chore: remove unused #include
2024-09-16 23:08:40 -05:00
Charles Kerr
05dfd14913
refactor: add EmitWarning(v8::Isolate*)
helper ( #43722 )
...
* refactor: add EmitWarning(Isolate*, ...) warning
* chore: remove EmitWarning(node::Environment*, ...)
* chore: add code comments
* fixup! refactor: add EmitWarning(Isolate*, ...) warning
* chore: remove unused node #includes
2024-09-16 15:53:04 -05:00
John Kleinschmidt
7d4f202c1c
ci: move Archaeologist to GHA ( #43701 )
...
* chore: move Archaeologist to GHA
* chore: test archaelogist changes
* Revert "chore: test archaelogist changes"
This reverts commit a575d6ef3a6495a71c03e9e2d15ec9bb329c5033.
* chore: properly name steps in archaeologist-dig
2024-09-16 15:58:51 -04:00
Niklas Wenzel
f84ffc8fc8
fix: prevent loading spinner when launching utility process on Windows ( #43657 )
...
fix: prevent spinning cursor when launching utility process on Windows
2024-09-16 14:20:42 -04:00
Niklas Wenzel
8f0dffea9e
docs: document View.removeChildView edge case ( #43673 )
2024-09-16 11:32:03 +02:00
Charles Kerr
1c3a5ba5d1
refactor: remove use of deprecated API BuildServiceInstanceFor() ( #43690 )
...
* refactor: update BadgeManagerFactory
* refactor: update NetworkContextServiceFactory
* refactor: update ElectronExtensionSystemFactory
* refactor: update UsbChooserContextFactory
* refactor: update UsbHidChooserContextFactory
* refactor: update SerialChooserContextFactory
* refactor: update FileSystemAccessPermissionContextFactory
2024-09-12 15:44:14 -05:00
Piotr Płaczek
29c2744e57
feat: hide menu bar on windows fullscreen ( #43402 )
...
* feat: hide menu bar on windows fullscreen
* test: state prior to html fullscreen transition
* refactor: restore `#ifdef` for readability
Reference: https://github.com/electron/electron/pull/43402#discussion_r1729356262
* docs: menu bar behavior changed
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-09-12 20:13:04 +02:00
Charles Kerr
3dd7e46291
refactor: avoid minor code repetition in native_image.cc ( #43689 )
...
chore: delegate handle creation in NativeImage::Resize()
chore: delegate handle creation in NativeImage::Crop()
chore: delegate handle creation in NativeImage::CreateEmpty()
2024-09-12 10:56:15 -05:00
Charles Kerr
45bae950d5
chore: remove unused base/ includes ( #43688 )
2024-09-12 16:05:37 +02:00
Shelley Vohr
3c8321a987
fix: EyeDropper working in devtools ( #43685 )
2024-09-12 15:40:56 +02:00
Shelley Vohr
74b54278bf
fix: native View
wrapper crash missing when adding child view ( #43638 )
...
fix: native View wrapper crash missing when adding child view
2024-09-12 10:01:05 +02:00
Shelley Vohr
dea6a4e5fb
fix: ensure SetPluginCanSave
updated in PDFs ( #43667 )
...
fix: ensure SetPluginCanSave updated in PDFs
2024-09-11 09:25:05 -04:00
Shelley Vohr
90fbf30491
build: compile Node.js with C++20 support ( #43555 )
...
* build: compile with C++20 support
* build: update build-image-sha for gcc 10
2024-09-11 09:01:46 -04:00
dependabot[bot]
5580349c3a
build(deps-dev): bump webpack from 5.76.0 to 5.94.0 in the npm_and_yarn group across 1 directory ( #43659 )
...
build(deps-dev): bump webpack
Bumps the npm_and_yarn group with 1 update in the / directory: [webpack](https://github.com/webpack/webpack ).
Updates `webpack` from 5.76.0 to 5.94.0
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.76.0...v5.94.0 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: direct:development
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 09:56:03 +02:00
Keeley Hammond
309d5dade3
feat: add support for system picker in setDisplayMediaRequestHandler ( #43581 )
...
* tmp
* feat: add support for system picker in setDisplayMediaRequestHandler
* oops
* Apply suggestions from code review
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* stuff
* well...
* seems legit
* chore: update patch to handle screenCapturer
* feat: modify API to use useSystemPicker
* fix: gate ScreenCaptureKitPicker to macos 15 or higher
* fix: don't use native picker with legacy media selection
* chore: code review, boolean set & docs update
* fix: add cancelCallback
* docs: clarify session & desktopCapturer docs
---------
Co-authored-by: Samuel Attard <marshallofsound@electronjs.org>
Co-authored-by: Samuel Attard <sam@electronjs.org>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
2024-09-10 16:05:57 -07:00
Charles Kerr
a3df950281
fix: -Wunsafe-buffer-usage warning in V8Serializer::Serialize() ( #43642 )
2024-09-10 15:05:05 -05:00
Milan Burda
0cc60500ed
fix: restore Chromium default Content-Disposition
header parsing ( #43611 )
...
* fix: restore Chromium default Content-Disposition header parsing
* Update api-web-request-spec.ts
2024-09-10 15:32:30 +02:00
Charles Kerr
f1019c2c4a
fix: -Wunsafe-buffer-usage warnings in asar file IO ( #43624 )
...
* fix: -Wunsafe-buffer-usage warnings in ScopedTemporaryFile::InitFromFile()
* fix: -Wunsafe-buffer-usage warnings in Archive::Init()
2024-09-09 16:34:42 -04:00
Charles Kerr
5718ea4e1e
fix: out-of-scope Local handle in node::CallbackScope ( #43622 )
...
refactor: use an EscapableHandleScope
2024-09-09 12:14:40 -05:00
Charles Kerr
2844e346b9
refactor: use std::optional in MicrotasksScope ( #43621 )
...
avoid an unnecessary heap allocation/free
2024-09-09 12:51:42 -04:00
Zorro Liu
e2fe8f50e2
fix: update BrowserView#lastWindowSize
after window resize ( #43463 )
...
fix: update BrowserView#lastWindowSize after window resize (#43462 )
2024-09-09 14:22:30 +02:00
Charles Kerr
8c5e7bbf6b
fix: UvHandle move semantics ( #43615 )
...
reassign the uv_handle_t of the source
2024-09-09 14:13:39 +02:00
dependabot[bot]
0d4d752c1b
build(deps): bump the npm_and_yarn group across 2 directories with 3 updates ( #43511 )
...
* build(deps): bump the npm_and_yarn group across 2 directories with 3 updates
Bumps the npm_and_yarn group with 1 update in the / directory: [braces](https://github.com/micromatch/braces ).
Bumps the npm_and_yarn group with 3 updates in the /spec directory: [braces](https://github.com/micromatch/braces ), [pdfjs-dist](https://github.com/mozilla/pdf.js ) and [ws](https://github.com/websockets/ws ).
Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md )
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3 )
Updates `braces` from 3.0.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md )
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3 )
Updates `pdfjs-dist` from 2.16.105 to 4.2.67
- [Release notes](https://github.com/mozilla/pdf.js/releases )
- [Commits](https://github.com/mozilla/pdf.js/compare/v2.16.105...v4.2.67 )
Updates `ws` from 7.5.9 to 7.5.10
- [Release notes](https://github.com/websockets/ws/releases )
- [Commits](https://github.com/websockets/ws/compare/7.5.9...7.5.10 )
---
updated-dependencies:
- dependency-name: braces
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: braces
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: pdfjs-dist
dependency-type: direct:development
dependency-group: npm_and_yarn
- dependency-name: ws
dependency-type: direct:development
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com>
* chore: update api-web-contents-spec to us newer version of pdfjs-dist
* test: create fixture to read PDF files for verification
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-09-09 11:49:43 +02:00
Charles Kerr
0568686340
perf: avoid redundant Promise.GetContext calls ( #43609 )
...
refactor: avoid redundant Promise.GetContext calls
Several Promise methods call `GetContext()` multiple times. From looking
at the assembly in obj/electron/electron_lib/promise.o, these redundant
calls are actually being made -- they aren't optmized out.
This PR keeps the return value in a local variable to avoid extra calls.
2024-09-07 23:39:42 -05:00
Charles Kerr
44a4328ea8
refactor: take a uint8_t
span in ValidateIntegrityOrDie()
( #43592 )
...
refactor: take a uint8_t span in ValidateIntegrityOrDie()
Doing some groundwork for fixing unsafe base::File() APIs:
- Change ValidateIntegrityOrDie() to take a span<const uint8_t> arg.
We'll need this to migrate asar's base::File API calls away from the
ones tagged `UNSAFE_BUFFER_USAGE` because the safe counterparts use
span<uint8_t> too.
- Simplify ValidateIntegrityOrDie()'s implementation by using
crypto::SHA256Hash() instead of reinventing the wheel.
2024-09-06 20:22:44 -05:00
Charles Kerr
18b1b33adc
refactor: NativeWindow::Create()
returns a unique_ptr ( #43576 )
...
refactor: NativeWindow::Create() returns a unique_ptr
2024-09-06 12:59:32 -04:00
Charles Kerr
fe0d4274e2
fix: confirm a v8::Value
is a v8::Object
before casting it ( #43575 )
...
fix: confirm a v8::Value is a v8::Object before casting it
2024-09-06 11:20:04 -05:00
Charles Kerr
cc5aa65cb4
fix: delete UvTaskRunner's timers only after they're closed ( #43561 )
...
* fix: free UvTaskRunner timers only after they are closed
* refactor: UvTaskRunner now holds UvHandles
2024-09-06 07:16:56 -05:00
Shelley Vohr
25f4691e78
fix: ensure version of xdg-dialog-portal
with defaultPath
support ( #43570 )
...
fix: ensure version of xdg-dialog-portal with defaultPath support
Closes https://github.com/electron/electron/issues/43310
2024-09-06 11:12:16 +02:00
Charles Kerr
3fde574db1
fix: -Wunsafe-buffer-usage warnings in url-loader ( #43564 )
...
Use v8::ArrayBufferView::CopyContents() instead of doing the pointer
math + memcpy() ourselves. This not only solves the buffer warnings,
but may also avoid some additional overhead:
> Copy the contents of the ArrayBufferView's buffer to an
> embedder defined memory without additional overhead that
> calling ArrayBufferView::Buffer might incur.
2024-09-05 20:22:03 -05:00
Shelley Vohr
eff862b083
build: use proper targets for building ( #43550 )
2024-09-05 17:03:07 -04:00
Kilian Valkhof
32d5f9e3ef
docs: explain ipcRenderer behavior in context-bridge.md ( #43455 )
...
* docs: explain ipcRenderer behavior in context-bridge.md
* Update context-bridge.md
* Update context-bridge.md
* Update docs/api/context-bridge.md
Co-authored-by: Erik Moura <erikian@erikian.dev>
* Update context-bridge.md
* Update context-bridge.md
* Update context-bridge.md
* Update docs/api/context-bridge.md
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* Update docs/api/context-bridge.md
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
---------
Co-authored-by: Erik Moura <erikian@erikian.dev>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2024-09-05 16:48:22 -04:00
Orko Garai
69df09dc90
fix: Launch apps with XDG_ACTIVATION_TOKEN in ozone/wayland ( #43480 )
...
* fix: Launch apps with XDG_ACTIVATION_TOKEN in ozone/wayland
Ensure apps are launched with the activation token received from
xdg_activation_v1 protocol.
* add focus_launched_process option
2024-09-05 13:07:10 -05:00
dependabot[bot]
6aae1264dd
build(deps): bump slackapi/slack-github-action from 1.26.0 to 1.27.0 ( #43530 )
...
Bumps [slackapi/slack-github-action](https://github.com/slackapi/slack-github-action ) from 1.26.0 to 1.27.0.
- [Release notes](https://github.com/slackapi/slack-github-action/releases )
- [Commits](70cd7be8e4...37ebaef184
)
---
updated-dependencies:
- dependency-name: slackapi/slack-github-action
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 11:26:17 -05:00
dependabot[bot]
4b5a831979
build(deps): bump actions/upload-artifact from 4.3.6 to 4.4.0 ( #43528 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 4.3.6 to 4.4.0.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](834a144ee9...50769540e7
)
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 12:04:52 +02:00
David Sanders
2c3840af76
ci: remove blocked/need-info label on user comment ( #43562 )
2024-09-05 10:12:02 +02:00
John Kleinschmidt
73d480d401
build: fix telemetry error when using autoninja ( #43563 )
2024-09-05 10:08:27 +02:00
Charles Kerr
2d868ecb8d
perf: use v8::Local<v8::Object> as the key in ObjectCache ( #43519 )
...
* perf: use v8::Object* as direct keys instead of using hash + a linked list
* refactor: use v8::Local<v8::Object> as the key
2024-09-04 22:53:06 -05:00
Charles Kerr
0467790aee
chore: migrate to v8::Object::SetPrototypeV2() ( #43535 )
...
chore: migrate to v8::Object::SetPrototypeV2().
Xref: https://chromium-review.googlesource.com/c/v8/v8/+/5600627
[api] Mark v8::Object::GetPrototype() for deprecation
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-09-04 20:30:54 -05:00
Charles Kerr
8ae5aacc8c
refactor: declare gin::Wrapper subclasses as final ( #43527 )
...
As per the gin docs: "Wrappable<T> explicitly does not support further
subclassing of T. Subclasses of Wrappable<T> should be declared final."
2024-09-04 18:40:02 -05:00
Keeley Hammond
94f2722fa3
build: don't run symbol generation on PS ( #43554 )
...
fix: don't run symbol generation on PS
2024-09-04 17:18:57 +01:00
Charles Kerr
054cbcd6eb
fix: don't use deprecate-soon class v8::String::Value ( #43518 )
...
* fix: remove use of deprecated v8::String::Value
Upstream marked v8::String::Value as `V8_DEPRECATE_SOON` last month,
so let's stop using it.
The replacement code mostly does the same as v8::String::Value();
but since our test only cares about the length and not the contents,
we get a small perf win of not needing to allocate a char array and
not needing to call Local::String::Write().
Upstream V8_DEPRECATE_SOON:
Xref: https://chromium-review.googlesource.com/c/v8/v8/+/5667299kkk
v8::String::Value() implementation:
20226b740b/src/api/api.cc (10883)
History on why we used it:
80c1a9739d
f49ed30f72
* Update shell/common/gin_converters/file_path_converter.h
Co-authored-by: Robo <hop2deep@gmail.com>
* fixup! Update shell/common/gin_converters/file_path_converter.h
do not return success for all non-Null non-Strings
---------
Co-authored-by: Robo <hop2deep@gmail.com>
2024-09-04 08:56:14 -05:00
dependabot[bot]
4c83016cf3
build(deps): bump github/codeql-action from 3.26.3 to 3.26.6 ( #43529 )
...
Bumps [github/codeql-action](https://github.com/github/codeql-action ) from 3.26.3 to 3.26.6.
- [Release notes](https://github.com/github/codeql-action/releases )
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md )
- [Commits](883d8588e5...4dd16135b6
)
---
updated-dependencies:
- dependency-name: github/codeql-action
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 09:35:09 -04:00
Orko Garai
53dcda1fe9
fix: Use XDG_ACTIVATION_TOKEN in wayland when launched by other app ( #43481 )
...
When an electron app is launched by another app ensure that the
XDG_ACTIVATION_TOKEN env var is read and used for activation using
xdg_activation_v1 protocol.
2024-09-04 12:54:00 +02:00
George Xu
635d421123
fix: systemMediaPermissionDenied should not check camera perms when the request is asking for screen share ( #43517 )
...
* fix: systemMediaPermissionDenied: should check for screen capture perms instead of camera
* Revert "fix: systemMediaPermissionDenied: should check for screen capture perms instead of camera"
This reverts commit e9cc67216558263402867056ed332f8781da3153.
* should only do these checks for audio or video, but not screenshare
* no service
* oops
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2024-09-04 09:56:26 +01:00
Charles Kerr
b42c0ae00d
fix: -Wunsafe-buffer-usage warnings in IsUrlArg() ( #43477 )
...
* fix: -Wunsafe-buffer-usage warnings in IsUrlArg()
* chore: improve code comments for CheckCommandLineArguments()
* chore: reduce diffs from main
* refactor: CheckCommandLineArguments takes a StringVector arg
Fixes another buffer warning!
2024-09-03 21:51:39 -04:00
John Kleinschmidt
90ba2df4fa
build: free up macos disk space as soon as possible ( #43533 )
...
* chore: free up macos disk space as soon as possible
* build: free up disk space on gn check too
2024-09-03 21:32:05 -04:00
John Kleinschmidt
c41a28d7c8
chore: speed up cache only reclient for fork PRs ( #43497 )
2024-08-29 13:51:06 -04:00
Robo
41b8fdca5c
fix: devtools dock state with WCO on linux ( #43490 )
2024-08-29 09:17:00 +09:00
electron-roller[bot]
38512efd25
chore: bump node to v20.17.0 (main) ( #43428 )
...
* chore: bump node in DEPS to v20.17.0
* module: disallow CJS <-> ESM edges in a cycle from require(esm)
https://github.com/nodejs/node/pull/52264
* src: expose LookupAndCompile with parameters
https://github.com/nodejs/node/pull/53886
* src: fix -Wshadow warning
https://github.com/nodejs/node/pull/53885
* lib: convert WeakMaps in cjs loader with symbol properties
https://github.com/nodejs/node/pull/52095
* src: reduce unnecessary serialization of CLI options in C++
https://github.com/nodejs/node/pull/52451
* build: ensure v8_pointer_compression_sandbox is enabled on 64bit
https://github.com/nodejs/node/pull/53884
* lib: improve error message when index not found on cjs
https://github.com/nodejs/node/pull/53859
* src,lib: expose getCategoryEnabledBuffer to use on node.http
https://github.com/nodejs/node/pull/53602
* deps: update c-ares to v1.32.2
https://github.com/nodejs/node/pull/53865
* chore: fixup patch indices
* deps: update V8 to 12.2
https://github.com/nodejs/node/pull/51362
* stream: Expose DuplexPair API
https://github.com/nodejs/node/pull/34111
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2024-08-26 15:09:33 -04:00