Commit Graph

4087 Commits

Author SHA1 Message Date
Yuri
de407e82b7 docs: updated tray doc with tooltip removing (#46515)
added tooltip removing doc
2025-04-09 11:50:08 -04:00
Charles Kerr
a6875c732c docs: note that titleBarOverlay.symbolColor is supported on Linux (#46492)
docs: note that titleBarOverlay.symbolColor is supported on Linux

this is supported via OpaqueFrameView
2025-04-07 11:10:54 +02:00
electron-roller[bot]
9c019b6147 chore: bump chromium to 136.0.7095.0 (main) (#46118)
* chore: bump chromium in DEPS to 136.0.7076.0

* chore: bump chromium in DEPS to 136.0.7077.0

* 6368856: Migrate absl variant.h and utility.h in content (part 2/2) | https://chromium-review.googlesource.com/c/chromium/src/+/6368856

* 6356528: Clean up LegacyRenderWidgetHostHWND code | https://chromium-review.googlesource.com/c/chromium/src/+/6356528

* chore: export patches

* 6339113: [Viewport Segments] Add CDP commands to override Viewport Segments without overriding other device properties. | https://chromium-review.googlesource.com/c/chromium/src/+/6339113

* 6352169: [DevTools][MultiInstance] Support new tab in another window on Android | https://chromium-review.googlesource.com/c/chromium/src/+/6352169

* 6368856: Migrate absl variant.h and utility.h in content (part 2/2) | https://chromium-review.googlesource.com/c/chromium/src/+/6368856

* 6360858:Clickiness: Wire response from URLLoader to DB, add e2e tests| https://chromium-review.googlesource.com/c/chromium/src/+/6360858

* chore: bump chromium in DEPS to 136.0.7079.0

* chore: export patches

* chore: bump chromium in DEPS to 136.0.7081.0

* chore: export patches

* chore: bump chromium in DEPS to 136.0.7083.0

* 6361987: Remove double-declaration with gfx::NativeView and gfx::NativeWindow | https://chromium-review.googlesource.com/c/chromium/src/+/6361987

* chore: export patches

* chore: bump chromium in DEPS to 136.0.7087.0

* chore: export patches

* fix: include node patch for missing AtomicsWaitEvent
https://chromium-review.googlesource.com/c/chromium/src/+/6385540

* build: add depot_tools python to path

* fix: cppgc init and unregistering v8 isolate

https://chromium-review.googlesource.com/c/v8/v8/+/6333562

CppGc is now initialized earlier so Node can skip reinitializing it.

Additionally, gin::IsolateHandle was attempting to destruct an already destructed
v8::Isolate upon electron::JavaScriptEnvironment destruction. By removing the call
to NodePlatform::UnregisterIsolate, this fixes the crash on app shutdown.

* fix: unregister isolate after destruction

See code comment.

* chore: bump chromium in DEPS to 136.0.7095.0

* chore: sync patches

* fix: add script_parsing::ContentScriptType parameter
https://chromium-review.googlesource.com/c/chromium/src/+/6298395

* fix: migrate content::BrowserAccessibilityState methods
https://chromium-review.googlesource.com/c/chromium/src/+/6401437
https://chromium-review.googlesource.com/c/chromium/src/+/6383275

* feat: enableHappyEyeballs option for host resolver
https://chromium-review.googlesource.com/c/chromium/src/+/6332599

* fix: add new cookie exclusion reason
https://chromium-review.googlesource.com/c/chromium/src/+/6343479

* fix: add new url loader method
https://chromium-review.googlesource.com/c/chromium/src/+/6337340

* fix: add new cppgc header file for electron_node headers
https://chromium-review.googlesource.com/c/v8/v8/+/6348644

* fix: disable CREL on Linux ARM64
https://chromium-review.googlesource.com/q/I3a62f02f564f07be63173b0773b4ecaffbe939b9

* fixup! fix: add new cppgc header file for electron_node headers https://chromium-review.googlesource.com/c/v8/v8/+/6348644

* chore: update corner smoothing patch

* fixup! chore: update corner smoothing patch

* chore: disable NAN weak tests

These two tests are incompatible with a V8 change that disallows running JS code from a weak finalizer callback.

Ref: https://chromium-review.googlesource.com/c/v8/v8/+/4733273

* test: fix task starvation in node test

A V8 change makes these contexts get collected in a task that is posted
and run asynchronously. The tests were synchronously GC'ing in an
infinite loop, preventing the task loop from running the task that would
GC these contexts.

This change should be upstreamed in some way.

Ref: https://chromium-review.googlesource.com/c/v8/v8/+/4733273

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: alice <alice@makenotion.com>
Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: clavin <clavin@electronjs.org>
2025-04-03 19:02:49 -05:00
Charles Kerr
5a6f1ede6a feat!: remove support for ProtocolResponse.session null value (#46264)
BREAKING CHANGE

This was deprecated in f7ba0d3b & is now being removed for Electron 37.
2025-04-01 08:52:12 -05:00
Shelley Vohr
9c4720766d fix: UtilityProcess.fork crash before app ready (#46380)
fix: UtilityProcess.fork crash before app ready
2025-04-01 13:42:03 +02:00
Shelley Vohr
5da75c4a97 feat: support system-context-menu on Linux (#45848)
feat: support system-context-menu on Linux
2025-04-01 11:00:39 +02:00
Calvin
09135443a0 feat: Corner Smoothing CSS rule (Reland) (#46278)
* feat: Corner Smoothing CSS rule (Reland)

Reland of #45185

* Fix patch conflicts

* fixup! Fix patch conflicts

* Update expected image

The dashed border is subtly different. The new version is correct and the old one was incorrect.
2025-03-31 11:22:23 -05:00
Samuel Attard
49aba471dc feat: add support for associating a Menu with a WebFrameMain (#45138)
* feat: add support for associating a Menu with a WebFrameMain

This allows certain OS level features to activate such as Writing Tools, Autofill.. and Services.

There appears to be a bug in macOS where the responder chain isn't traversed if the menu is not popped up using an event, as such we spoof a fake mouse event at the write coordinates in the right window and use that to open the menu.

* build: fix build on non-mac

* build: oops missed a header

* fix: safely handle optional T* by checking nullptr too

* build: fix gn check and build errors

* docs: suggested changes

* feat: default `frame` to `window.webContents.mainFrame` when possible

* fix: avoid deref nullptr view

* Revert "feat: default `frame` to `window.webContents.mainFrame` when possible"

This reverts commit 2e88836819.

* fix: lint

* Remove redundant scoped objects

This code, including the comments, matches almost exactly the behavior of this argument to the function.

* Add ScopedPumpMessagesInPrivateModes patch

* More null pointer safety

---------

Co-authored-by: clavin <clavin@electronjs.org>
2025-03-28 11:50:07 -07:00
Shelley Vohr
d2c2261c58 fix: hard crash on invalid command line switches (#46004)
* fix: hard crash on invalid command line switch

* Update docs/api/command-line.md

Co-authored-by: Niklas Wenzel <dev@nikwen.de>

* chore: feedback from review

* docs: Add breaking change note

---------

Co-authored-by: Niklas Wenzel <dev@nikwen.de>
2025-03-26 08:14:03 -05:00
Charles Kerr
f7ba0d3b4b docs: deprecate setting ProtocolResponse.session to null (#46131)
* docs: deprecate setting ProtocolResponse.session to null

* docs: mark null ProtocolResponse.session as deprecated in struct docs

* Update docs/breaking-changes.md

Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>

---------

Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
2025-03-25 10:04:21 -05:00
Calvin
abaef13c0b fix: Revert "feat: Corner Smoothing CSS rule" (#46231)
Revert "feat: Corner Smoothing CSS rule (#45185)"

This reverts commit b75e802280.
2025-03-24 20:36:49 +01:00
Calvin
b75e802280 feat: Corner Smoothing CSS rule (#45185)
* feat: Corner Smoothing

* Patch Blink to add CSS rule and Painting

* Add `system-ui` keyword

* Add `cornerSmoothingCSS` web preference

* Add tests

* Documentation

* fixup! Documentation

* fix: initialize smoothness value

* Use a 1.0 scale factor in tests

* Fix tests for CI

* Fix tests

* fixup! Merge branch 'main' into clavin/corner-smoothing

* Add code docs

* Document `system-ui` keyword values

* Address review comments

* fixup! Address review comments

* Address review comments

* Update patch to address upstream changes

The patch went from 694 lines to 505 lines, which is a 27.2% smaller!

* fixup! Update patch to address upstream changes
2025-03-24 11:46:12 -04:00
Shelley Vohr
9ec14b91e7 feat: add BrowserWindow.isSnapped() (#46079)
* feat: add BrowserWindow.isSnapped() on Windows

* docs: mark _Readonly_
2025-03-24 12:09:14 +01:00
Erik Moura
e9082ea57a docs: fix capitalization for InputEvent.modifiers (#46130) 2025-03-23 16:38:15 -05:00
Shelley Vohr
603057b198 fix: remove File.path from types (#46005) 2025-03-21 08:40:49 +01:00
Shelley Vohr
86cc9f626f fix: APNS token ids are lowercase ASCII (#46101) 2025-03-20 07:57:50 +01:00
Niklas Wenzel
bf1d377e08 docs: use optional chaining for app.dock (#46119)
docs: use optional chaining for app.dock
2025-03-19 18:34:03 -05:00
Niklas Wenzel
71f3ff6bf2 docs: fix types of app.dock (#46073) 2025-03-18 13:14:08 +01:00
Sam Maddock
afca4e271e feat: ServiceWorkerMain.scriptURL (#45863)
feat: serviceWorker.scriptURL
2025-03-14 21:00:13 -04:00
electron-roller[bot]
20414f66ca chore!: bump chromium to 136.0.7054.0 (main) (#45923)
* chore: bump chromium in DEPS to 136.0.7054.0

* chore: update allow_in-process_windows_to_have_different_web_prefs.patch

Xref: https://chromium-review.googlesource.com/c/chromium/src/+/5906158

patch applied manually due to context shear

* chore: e patches all

* refactor!: Session.clearStorageData(syncable)

Xref: https://chromium-review.googlesource.com/c/chromium/src/+/6309405

Remove syncable type from opts.quota in Session.clearStorageData(opts)
because it that category has been removed upstream.

BREAKING CHANGE: Removed ses.clearDataStorage({ quota: 'syncable' })

* docs: deprecate Session.clearDataStorage({ quota })

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2025-03-07 17:49:21 -06:00
Sam Maddock
8c11764800 feat: WebContents.focusedFrame (#45667)
feat: webContents.focusedFrame
2025-03-04 11:38:58 -05:00
reito
b8d0f18ff8 docs: add docs about shared texture mode osr (#45670)
* docs: add docs about shared texture mode osr

* docs: add docs about shared texture mode osr

* docs: fix dot

* 更新 web-contents.md

Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>

---------

Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
2025-02-27 11:10:58 -05:00
Dietrich Ayala
ff05d4a96c docs: dialog.md - typo fix s/wndow/window/ (#45831)
Update dialog.md - typo fix
2025-02-27 10:32:42 +01:00
Sam Maddock
e3f61b465d refactor: move extension APIs to session.extensions (#45597)
refactor: move extensions to session.extensions
2025-02-21 17:36:51 -06:00
Erick Zhao
a63f6143ea docs: clarify navigationhistory offsets (#45616)
* docs: clarify navigationhistory offsets

* "relative offset"
2025-02-21 17:35:17 -06:00
Shelley Vohr
340fdaf511 feat: allow setting roundedCorners on Windows (#45594)
* feat: allow setting roundedCorners on Windows

* Update docs/api/structures/base-window-options.md

Co-authored-by: Will Anderson <will@itsananderson.com>

---------

Co-authored-by: Will Anderson <will@itsananderson.com>
2025-02-20 15:39:12 -05:00
Milan Burda
22b7403cd1 chore: remove deprecated systemPreferences.isAeroGlassEnabled() (#45563) 2025-02-18 18:59:00 -06:00
electron-roller[bot]
47572286f3 chore: bump chromium to 135.0.7015.0 (main) (#45500)
* https://chromium-review.googlesource.com/c/chromium/src/+/6230977

* chore: bump chromium to 135.0.7012.0

* chore: update accelerator.patch

Support parsing Ctrl+Alt shortcuts | https://chromium-review.googlesource.com/c/chromium/src/+/6238137

* 6234236: Reapply bindings: Pass CppHeap on Isolate creation | https://chromium-review.googlesource.com/c/chromium/src/+/6234236

* 6234614: [ios blink] Move to use external begin frame source | https://chromium-review.googlesource.com/c/chromium/src/+/6234614

* chore: update chromium/feat_add_streaming-protocol_registry_to_multibuffer_data_source.patch

no manual changes; patch applied with fuzz

* chore: update chromium/build_libc_as_static_library.patch

no manual changes; patch applied with fuzz

* chore: remove chromium/cherry-pick-dd8e2822e507.patch

landed upstream

* 6188884: Grit: Remove output_all_resource_defines from list of valid attributes. | https://chromium-review.googlesource.com/c/chromium/src/+/6188884

* 6226981: [views-ax] Remove View::GetAccessibleNodeData() method | https://chromium-review.googlesource.com/c/chromum/src/+/6226981

* 6214895: [views-ax] Deprecate View::NotifyAccessibilityEvent | https://chromium-review.googlesource.com/c/chromium/src/+/6214895

* 6196494: Remove ImageView::SetImage() with ImageSkia param | https://chromium-review.googlesource.com/c/chromium/src/+/6196494

* 6236267: [cleanup] Remove unused PrinterBasicInfo fields | https://chromium-review.googlesource.com/c/chromium/src/+/6236267

* refactor: remove status, isDefault properties from PrinterInfo

Xref: https://chromium-review.googlesource.com/c/chromium/src/+/6236267

* chore: lint

* fixup: added mas bypass to new file added in https://chromium-review.googlesource.com/c/chromium/src/+/6208630 see slack for more context

* chore: node script/gen-libc++-filenames.js

* chore: e patches all

* fix: duplicate crdtp symbols

* chore: update patches

* fixup! [Media Features] Remove launched features

---------

Co-authored-by: alice <alice@makenotion.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
2025-02-18 11:51:27 -05:00
Alice Zhao
02be7c1185 feat: add excludeUrls and modify urls in WebRequestFilter for better URL filtering (#44692)
* feat: add excludeUrls to web request filter

* refactor: add deprecated field

* test: update tests

* lint: newline

* docs: improve API doc

* fix: add is filter defined property to match all urls

* refactor: remove includeUrls

* refactor: remove typescript binding

* refactor: all_url

* refactor: remove isDefined methods

* refactor: remove comment

* fix: logic

* docs: add to breaking changes
2025-02-17 12:40:47 -08:00
Robo
137a552641 fix: support for v8.setHeapSnapshotNearHeapLimit api (#45606)
* fix: support for v8.setHeapSnapshotNearHeapLimit api

* docs: add  support
2025-02-14 10:00:39 -06:00
Felix Rieseberg
9f47c9a051 feat: Restore webContents navigation history and page state (#45433)
* feat: Working navigationHistory.restore with just title/url

* feat: Restore page state, too

* chore: Docs, lint, tests

* Implement feedback

* More magic

* Make _awaitNextLoad truly private

* Implement API group feedback

* One more round of feedback
2025-02-11 15:09:38 -08:00
Milan Burda
e055ce7c39 chore: deprecate systemPreferences.isAeroGlassEnabled() (#45434) 2025-02-10 15:17:07 -05:00
Sam Maddock
e4cd162433 docs: fix powerMonitor event types (#45518)
* fix: powerMonitor event types

* fix: thermal-state-change missing Returns
2025-02-10 10:13:11 -05:00
Calvin
4085185e2d docs: transactions-updated event type (#45527)
fix: `transactions-updated` event type
2025-02-10 10:12:17 -05:00
max54nj
c0282eb9c8 docs: style fixes (#45458)
* docs: fix code field

* docs: add missing space
2025-02-05 15:10:07 -05:00
Robo
bec6ddda70 feat: route deprecated sync clipboard read through permission checks (#45377)
* feat: route deprecated clipboard commands through permission checks

* docs: address review feedback

* fix: enable checks for child windows
2025-02-05 15:13:29 +09:00
Sam Maddock
e2a7981dd3 feat: view.getVisible() (#44999)
* feat: view.getVisible()

* test: visible apis

* docs: clarify getVisible
2025-01-31 13:27:16 -05:00
Sam Maddock
26da3c5d6e feat: service worker preload scripts for improved extensions support (#44411)
* feat: preload scripts for service workers

* feat: service worker IPC

* test: service worker preload scripts and ipc
2025-01-31 09:32:45 -05:00
Niklas Wenzel
8cf2e46c1f docs: reference security guide in ipcRenderer.on docs (#45325) 2025-01-29 12:50:20 +01:00
Sam Maddock
a467d0684e feat: ServiceWorkerMain (#45232)
* feat: ServiceWorkerMain

* refactor: disconnect remote

* handle version_info_ nullptr case

* initiate finish request when possible and enumerate errors

* explicit name for test method

* oops

* fix: wait for redundant version to stop before destroying

* docs: clarify when undefined is returned

* chore: remove extra semicolons
2025-01-24 08:33:44 -05:00
Sam Maddock
996477152d feat: contextBridge.executeInMainWorld (#45229) 2025-01-23 21:12:46 -05:00
Sam Maddock
e09577b123 feat: redesign preload APIs (#45230)
* feat: redesign preload APIs

* docs: remove service-worker mentions for now

* fix lint

* remove service-worker ipc code

* add filename

* fix: web preferences preload not included

* fix: missing common init

* fix: preload bundle script error
2025-01-23 21:12:23 -05:00
Maksim Sisov
3ea623364b feat: support global shortcuts via GlobalShortcutsPortal feature with ozone/wayland (#45171)
* fix: backport patch to fix systemd unit activation in Chromium

This backports a patch from Chromium, which fixes systemd unit
activation. That is, a globalShortcuts feature that Chromium has
needs to create a systemd unit and rename it properly. Portal's
global shortcuts uses that name afterwards to map the app with
the shortcuts bound. However, there might be a race between
Chromium binding shortcuts and renaming the unit.

This is a first step to add Portal's globalShortcuts to
Electron.

* feat: Support global shortcuts via GlobalShortcutsPortal feature

Chromium has a new feature called GlobalShortcutsPortal. It
allows clients to use Portal's globalShortcuts to register and
listen to shortcuts.

This patches adds necessary bits, which allows Electron to
use that feature.

In order to make it work, one has to add
--enable-features=GlobalShortcutsPortal

Test: tested manually with a sample app.

* docs: add GlobalShortcutsPortal feature to globalShortcuts docs

Electron supports Portal's globalShortcuts API now via Chromium, and Electron
apps can use that in a Wayland session. Update the docs with the required
feature flag that must be passed to be able to use that implementation.
2025-01-22 11:59:48 +01:00
Calvin
82ea3faae5 docs: update security scoped bookmarks info (#44968) 2024-12-09 10:44:43 -08:00
Shelley Vohr
208dc568d8 fix: context-menu event with BaseWindows (#44940)
fix: context-menu event with BaseWindows
2024-12-04 13:35:28 -08:00
Felix Rieseberg
687a59b43b feat: Add shared dictionary management APIs (#44750)
* Add bare-bones GetSharedDictionaryUsageInfo

* Add GetSharedDictionaryInfo()

* Improve API, use isolation keys

* Add documentation

* Update docs/api/session.md

Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>

* Update shell/browser/api/electron_api_session.cc

Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>

* Add tests

* Implement feedback <3

* Improve tests

* chore: lint

* docs: add note about clearing cache in ses.clearData

---------

Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
Co-authored-by: alice <alice@makenotion.com>
2024-12-04 12:25:11 -05:00
Niklas Wenzel
5324c0e6c3 docs: fix grammar in app.relaunch docs (#44920) 2024-12-03 09:56:09 -08:00
Sam Maddock
2222920429 feat: WebFrameMain.collectJavaScriptCallStack() (#44204)
* feat: WebFrameMain.unresponsiveDocumentJSCallStack

* Revert "feat: WebFrameMain.unresponsiveDocumentJSCallStack"

This reverts commit e0612bc1a00a5282cba5df97da3c9c90e96ef244.

* feat: frame.collectJavaScriptCallStack()

* feat: frame.collectJavaScriptCallStack()

* Update web-frame-main.md
2024-12-03 13:32:24 +09:00
Niklas Wenzel
c6b4bde7b5 docs: clarify what session.clearData() with data type 'cache' deletes (#44852)
* docs: clarify what session.clearData() with data type 'cache' deletes

* docs: include `shadercache`, too

Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>

---------

Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
2024-12-02 13:50:35 -05:00
Niklas Wenzel
bba9ee1cb8 docs: clarify session.clearData() can delete more types than listed (#44851)
docs: warn that session.clearData() might delete more than expected
2024-12-02 13:29:25 -05:00