Граф коммитов

28552 Коммитов

Автор SHA1 Сообщение Дата
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 e9cc672165.

* 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
Charles Kerr 7cea992926
refactor: simplify KeyWeakMap impl (#43461) 2024-08-26 13:19:05 -05:00
Charles Kerr 2390706030
refactor: prefer std::ranges over begin() and end() (#43464) 2024-08-26 10:58:32 -04:00
David Sanders 56829f75c1
chore: cleanup include groupings (#43478) 2024-08-26 10:44:20 -04:00
Charles Kerr 5994b34a5d
chore: remove unused WinFrameView::kInactiveTitlebarFeatureAlpha (#43448)
added in Aug 2021 (41646d11, #29600) but never used
2024-08-23 20:59:41 -05:00