Commit Graph

1252 Commits

Author SHA1 Message Date
Kyle Cutler
d5de8883a2 feat: add focusOnNavigation flag to WebPreferences (#49425)
* feat: add focusOnNavigation webPreference

* WebContentsView tests

* fix

* fix
2026-01-23 14:29:34 -05:00
Charles Kerr
8c5c6a6088 refactor: use gin::Wrappable for electron::api::DataPipeHolder (#49495)
* refactor: make `DataPipeHolder` inherit from `gin::Wrappable`

* test: add a test to ensure GC clears the data pipe holder

* chore: e patches all

* chore: e patches all (trivial only)

* refactor: make AllDataPipeHolders a base::flat_map of WeakPersistent
2026-01-23 20:29:01 +09:00
Charles Kerr
d76608b945 refactor: use gin::Wrappable in electron::api::PowerSaveBlocker (#49381)
* refactor: PowerSaveBlocker subclasses gin::Wrappable

* chore: update chore_add_electron_objects_to_wrappablepointertag.patch

* chore: e patches all
2026-01-22 17:31:38 -06:00
electron-roller[bot]
d689f76ff9 chore: bump chromium to 146.0.7645.0 (main) (#49453)
* chore: bump chromium in DEPS to 146.0.7643.0

* chore: bump chromium in DEPS to 146.0.7645.0

* chore: update patches

* 7402162: Refactor app shims to call ContentMain

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7402162

* 7454282: Add master key management for HTTP Cache Encryption

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7454282

* 7490440: Reland "Delete unused base::Contains()"

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7490440

* chore: update patches

* 7414864: Pass CSSParserLocalContext down to CSSMathExpressionNodeParser

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7414864

* 7460969: Move child_process_id.h to common

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7460969

* 7474608: [api] Remove deprecated v8::PropertyCallbackInfo<T>::This()

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

* 7461067: [Viz] Rename kPreferGpuMemoryBuffer

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7461067

* 7487174: Remove GLHelper

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7487174

* 7457538: Set timeout from multi source page context fetcher

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7457538

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2026-01-22 17:01:09 -05:00
reito
e3142865b2 fix: offscreen rendering with correct screen info. (#48730)
fix: osr use correct screen info.
2026-01-22 14:58:54 -05:00
electron-roller[bot]
486a9a61d2 chore: bump chromium to 146.0.7635.0 (main) (#49408)
* chore: bump chromium in DEPS to 146.0.7635.0

* chore: update patch hunk headers

* 7078551: [wasm] Refactor caching API

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

* 7141498: [api] Remove unused context parameter from FixedArray::Get

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

* 7454865: Add timeouts to content API for CopyFromSurface

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

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2026-01-19 15:37:02 +01:00
Shelley Vohr
5bd2938f6a fix: try clearing InspectableWebContents delegate earlier (#49406)
fix: try clearing InspectableWebContents delegate earlier
2026-01-16 21:36:34 +01:00
electron-roller[bot]
5d80264944 chore: bump chromium to 145.0.7628.0 (main) (#49331)
* chore: bump chromium in DEPS to 145.0.7620.0

* chore: bump chromium in DEPS to 145.0.7622.0

* chore: bump chromium in DEPS to 145.0.7624.0

* chore: bump chromium in DEPS to 145.0.7626.0

* chore: bump chromium in DEPS to 145.0.7628.0

* 7362759: Migrate various base::Contains() to contains() in ui | https://chromium-review.googlesource.com/c/chromium/src/+/7362759

* chore: update patches

* 7411324: url: Mark deprecated functions as UNSAFE_BUFFER_USAGE

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

* 7366867: Store property info in CSSParserLocalContext for random()

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

* 7277406: Exclude PiP from getDisplayMedia picker thumbnails

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

* 7253489: activity_reporter: Create stub module owned by browser_process

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

* 7404514: Create device parental controls delegate

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

* 7269504: Update histograms to use the updated MediaStreamRequestResult enum

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

* fixup! 7253489: activity_reporter: Create stub module owned by browser_process

* 7368549: Reland "Use native rollup"

https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/7368549

* 4803165: Enable suppressing input event dispatch while paint-holding.

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

* chore: make device_parental_controls lazy

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2026-01-14 15:34:24 +01:00
Charles Kerr
cf2e283332 fix: clang-tidy warnings, pt. 1 (#49083)
* fix: google-readability-casting warning about the uint32_t cast

* fix: modernize-use-equals-default warnings

* fix: readability-redundant-member-init warning

* fix: modernize-make-unique warnings

* fix: modernize-use-emplace

warning: use emplace_back instead of push_back

* refactor: address code review feedback
2026-01-09 22:57:38 -08:00
electron-roller[bot]
a1f0ef80d4 chore: bump chromium to 145.0.7616.0 (main) (#49279)
* chore: bump chromium in DEPS to 145.0.7605.0

* chore: bump chromium in DEPS to 145.0.7606.0

* chore: bump chromium in DEPS to 145.0.7608.0

* chore: update patches

* chore: bump chromium in DEPS to 145.0.7610.0

* chore: update patches

* [InputVizard] Fix missing touch cancel in InputTransferHandlerAndroid
using InputEventSource

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7302368

* chore: bump chromium in DEPS to 145.0.7611.0

* chore: update patches

* chore: bump chromium in DEPS to 145.0.7614.0

* chore: bump chromium in DEPS to 145.0.7615.0

* chore: update patches

* chore: bump chromium in DEPS to 145.0.7616.0

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
2026-01-05 13:34:36 -05:00
Calvin
46922de638 fix: drag regions in child windows (#49231)
* fix: drag regions in child windows

* Update comments
2026-01-05 10:34:01 -05:00
electron-roller[bot]
809ab09b6f chore: bump chromium to 145.0.7596.0 (main) (#49224)
* chore: bump chromium in DEPS to 145.0.7588.0

* fix(patch-conflict): update scroll_bounce_flag for split overscroll methods

Chromium split IsElasticOverscrollEnabled() into two methods:
IsElasticOverscrollEnabledOnRoot() and IsElasticOverscrollSupported().
Updated patch to apply the scroll-bounce command-line switch to both
methods.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7233733

* fix(patch-conflict): update exclusive_access patch context

Upstream refactored the profile variable declaration. Updated patch to
match new surrounding context with brace-style if statement.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7239252

* fix(patch-conflict): update screen capture kit non-shareable filter

Upstream refactored PiP window exclusion to use GetWindowsToExclude()
helper function. Updated patch to combine non-shareable window filtering
with the new helper's output.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7274596

* fix(patch-conflict): update corner smoothing CSS property id position

Upstream added new internal overscroll CSS properties. Updated patch to
add kElectronCornerSmoothing after the new entries.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7234051

* fix(patch-conflict): update permission patches for new permission types

Upstream added new permission types: LOCAL_NETWORK, LOOPBACK_NETWORK,
and GEOLOCATION_APPROXIMATE. Updated Electron permission patches to
include these new types and renumber Electron-specific permissions.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7231952

* fix(patch-conflict): update memory query fallback for new function signature

Upstream added AmountOfTotalPhysicalMemory() with PCHECK. Updated patch
to maintain fallback logic with correct ByteSize return type.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7254886

* chore: update patch hunk headers

* fix(patch): update reclient-configs patch to use new file mode

The fix_add_python_remote_wrapper patch was using 'copy from' mode
which caused inconsistent behavior between local and CI git versions.
Changed to 'new file' mode for consistent patch application.

* fix(patch-conflict): remove duplicate GEOLOCATION_APPROXIMATE case

Upstream moved GEOLOCATION_APPROXIMATE earlier in the switch statement
in GetPermissionString(). The 3-way merge kept both the old and new
positions, causing a duplicate case error.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/6397637

* chore: update libcxx filenames for new headers

* chore: bump chromium in DEPS to 145.0.7590.0

* chore: update patch hunk headers

* fix(patch): update memory fallback return type to ByteSize

Upstream changed the return type from ByteCount to ByteSize.

* fix: suppress nodiscard warning in node_file.cc

libc++ added [[nodiscard]] to std::filesystem::copy_options operator|=
which causes build failures with -Werror.

* 7229082: update CopyFromSurface to use CopyFromSurfaceResult

Upstream changed CopyFromSurface callback to return
base::expected<viz::CopyOutputBitmapWithMetadata, std::string>
instead of SkBitmap, enabling better error handling.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7229082

* 7254070: add ip_address_space param to OnLocalNetworkAccessPermissionRequired

Upstream added IPAddressSpace parameter to check address space for
proper permission handling in Local Network Access.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7254070

* 7136679: add spelling_markers param to RequestCheckingOfText

Upstream added spelling_markers parameter to report misspelling
ranges from Blink to Spellcheck to IME.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7136679

* 7240487: remove second param from RegisterWebSafeIsolatedScheme

Upstream removed the schemes_okay_to_appear_as_origin_headers_ parameter.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7240487

* 7254577: use explicit WebElement constructor

WebElement default constructor now requires explicit construction
rather than brace initialization.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7254577

* 7256335: remove override from CreateGlobalFeaturesForTesting

Upstream removed BrowserProcess::CreateGlobalFeaturesForTesting virtual
method so the override specifier is no longer valid.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7256335

* chore: add missing SingleThreadTaskRunner include

A transitive include of SingleThreadTaskRunner was removed upstream,
requiring an explicit include.

Ref: Unable to locate specific CL (transitive include change)

* 7260483: add LOCAL_NETWORK, LOOPBACK_NETWORK permission type cases

Upstream added new permission types for Local Network Access split
permissions.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7260483

* chore: update patch hunk headers

* 7264893: update postMessage tests for file: origin serialization change

Chromium now serializes file: origins as 'null' in MessageEvent per spec.
This is a security improvement aligning with the HTML spec behavior.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7264893

* fix: add paths to custom scheme URLs in protocol tests

Custom scheme URLs without paths (e.g. test-scheme://foo) cause a
DCHECK crash in ASAN builds when CorsURLLoader tries to log the
request via GenerateRequestLine -> PathForRequest, which asserts
that the path is non-empty.

Adding trailing slashes ensures URLs have valid paths.

* chore: bump chromium in DEPS to 145.0.7592.0

* chore: update patches (trivial only)

* chore: bump chromium in DEPS to 145.0.7594.0

* chore: bump chromium in DEPS to 145.0.7596.0

* chore: update accelerator.patch

no manual changes; patch applied with fuzz 2 (offset 1 line)

* chore: update patches (trivial only)

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

---------

Co-authored-by: Alice Zhao <alicelovescake@anthropic.com>
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2025-12-25 17:15:53 -06:00
electron-roller[bot]
95e87e46ab chore: bump chromium to 144.0.7547.0 (main) (#49058)
* chore: bump chromium in DEPS to 144.0.7543.0

* Pass PipScreenCaptureCoordinatorProxy to ScreenCaptureKitDeviceMac

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

* chore: update patches

* chore: update filenames.libcxx.gni

* 7142359: Spanification of process_singleton_posix.cc

https: //chromium-review.googlesource.com/c/chromium/src/+/7142359
Co-Authored-By: Charles Kerr <70381+ckerr@users.noreply.github.com>

* Move logging::LoggingSettings to base/logging/logging_settings.h

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

* chore: bump chromium in DEPS to 144.0.7545.0

* 7159368: update PluginService API for sync GetPlugins

Upstream removed async PluginService APIs:
- GetPluginsAsync() removed, use synchronous GetPlugins()
- RegisterInternalPlugin() now takes single argument (remove add_at_beginning)
- RefreshPlugins() removed entirely

Updated ElectronPluginInfoHostImpl to use synchronous plugin loading and
simplified ElectronBrowserMainParts internal plugin registration.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7159368
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7159328
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7159056
(cherry picked from commit 88cdf50b0a)

* 7159184: add missing base/files/file_path.h include

Add explicit include for base/files/file_path.h in electron_browser_context.h.
After removal of superfluous Mojo includes from content headers, base::FilePath
is no longer transitively included via content/public/browser/browser_context.h.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7159184
(cherry picked from commit 6ca8ea03ec)

* 7126479: add ShouldForceRefreshTextCheckService parameter to SpellCheckClient

Upstream added a force-refresh parameter to WebTextCheckClient::RequestCheckingOfText
to bypass spell check cache. Add the new ShouldForceRefreshTextCheckService
parameter to SpellCheckClient's override (currently unused in Electron).

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7126479
(cherry picked from commit 879c0401c4)

* 7083663: remove fingerprinting_protection_ruleset_service override

Upstream deleted external references to Fingerprinting Protection Filter (FPF)
component. Remove the fingerprinting_protection_ruleset_service() override
from BrowserProcessImpl as the method no longer exists in the base class.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7083663
(cherry picked from commit 8350d152f9)

* 7155287: implement WebContentsView::GetSize and Resize

Upstream delegated WebContents::GetSize() and Resize() to WebContentsView,
making them pure virtual. Add const qualifier to GetSize() and implement
the Resize() override in OffScreenWebContentsView (no-op for offscreen).

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7155287
(cherry picked from commit 084eaa568e)

* 7184238: add OnUnconfirmedTapConvertedToTap override

Upstream added OnUnconfirmedTapConvertedToTap as a pure virtual method
to RenderWidgetHostViewBase to inform root view when child frame converts
an unconfirmed tap. Add empty override for offscreen rendering.

Ref: https://chromium-review.googlesource.com/c/chromium/src/+/7184238
(cherry picked from commit ef03400d9a)

* 7143586: add widget parameter to OnCommandsChanged

GlobalAcceleratorListener::OnCommandsChanged gained a gfx::AcceleratedWidget
parameter for window association in the GlobalShortcutListenerLinux
implementation. Pass gfx::kNullAcceleratedWidget for Electron's usage.

Ref: : Pass parent handle to GlobalAcceleratorListenerLinux::BindShortcuts | https://chromium-review.googlesource.com/c/chromium/src/+/7143586
(cherry picked from commit 38306e2bfc)
Co-Authored-By: Samuel Attard <MarshallOfSound@users.noreply.github.com>

* chore: update patches

Co-Authored-By: Samuel Attard <MarshallOfSound@users.noreply.github.com>

* chore: bump chromium in DEPS to 144.0.7547.0

* chore: update patches

* 7189232: Add support for UnownedUserData in GlobalFeatures

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

* Refactor: Use std::u16string for extension load error messages

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

* fixup Add support for UnownedUserData in GlobalFeatures

* 7165650: Remove ResourceContext

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

* fixup BUILD.gn for lint

* 7202164: Reland "Reland "Remove GenericScopedHandle:IsValid""

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

* advance deprecation of v8::ReturnValue<void>::Set(Local<S>).

7168624: [runtime][api] Relax requirements for setter/definer/deleter callbacks | https://chromium-review.googlesource.com/c/v8/v8/+/7168624

* fixup advance deprecation of v8::ReturnValue<void>::Set(Local<S>)

* chore: skip setting LPAC ACLs

* Revert "chore: skip setting LPAC ACLs"

This reverts commit e187aec488.

* chore: revert Convert to UNSAFE_TODO in sandbox

revert https://chromium-review.googlesource.com/c/chromium/src/+/7131661 to see if it fixes the Windows sandbox issue.

* Revert "chore: revert Convert to UNSAFE_TODO in sandbox"

This reverts commit 57afbfefe5.

* chore: Revert "Enable network sandbox by default on Windows"

see if this fixes the Windows sandbox issue

* Enable network sandbox by default on Windows

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

* Revert "chore: Revert "Enable network sandbox by default on Windows""

This reverts commit 530ab6af82.

* fixup! Enable network sandbox by default on Windows | https://chromium-review.googlesource.com/c/chromium/src/+/7204292

* fixup!: Correct flag name, add kLocalNetworkAccessChecks to all platforms

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Charles Kerr <70381+ckerr@users.noreply.github.com>
Co-authored-by: Samuel Attard <sattard@anthropic.com>
Co-authored-by: Samuel Attard <MarshallOfSound@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <kleinschmidtorama@gmail.com>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
2025-12-04 16:40:04 -08:00
Shelley Vohr
555f507c17 fix: ensure menu-did-close is emitted for application menus (#49075)
fix: ensure menu-did-close is emitted for application menus
2025-11-26 09:44:20 -06:00
Shelley Vohr
13e84e6868 fix: abort more descriptively for beforeunload (#48960) 2025-11-18 12:16:08 -05:00
Charles Kerr
16f1ec9001 refactor: use std::map::extract() in api::WebRequest (#48929)
refactor: use std::map::extract() in api::WebRequest

Small readability refactor to api::WebRequest::blocked_requests_:
use extract() when we want to pull a BlockedRequest from the map
and then process it.
2025-11-13 16:50:13 -05:00
Nilay Arya
32ae696ee0 feat: add --disable-geolocation command-line flag for macOS (#45934)
* feat(macos): add --disable-geolocation-mac command-line flag

* internally deny geolocation requests if flag set

e

* wrap PermissionRequestHandler instead

* wrap custom handler and deny regardless of response

* Update docs/api/command-line-switches.md

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

* resolving conflicts during rebase

* tests added

* tests added: minor changes

* move IsGeolocationDisabledViaCommandLine inside ElectronPermissionManager as a static member

* test: inject fixturesPath via --boot-eval

* Update shell/browser/electron_permission_manager.cc

Co-authored-by: Robo <hop2deep@gmail.com>

* chore: Fixup after merge

* fixup after merge

---------

Co-authored-by: Will Anderson <will@itsananderson.com>
Co-authored-by: Robo <hop2deep@gmail.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2025-11-13 10:39:03 -05:00
electron-roller[bot]
10b07deb97 chore: bump chromium to 144.0.7522.0 (main) (#48892)
* chore: bump chromium in DEPS to 144.0.7522.0

* 7131867: Remove GenericScopedHandle::IsValid in favor of is_valid

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

* 7078879: [video pip] Remove old controls

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

* chore: fixup patch indices

* 7128138: Add a pref to enable Secure DNS 'automatic mode with DoH fallback'.

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

* chore: fixup indices

* fix: pip patch

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
2025-11-13 09:49:51 +01:00
Charles Kerr
3c5513015a refactor: make api::WebRequest inherit from gin::Wrappable (#48762)
* refactor: make api::WebRequest inherit from gin::Wrappable

refactor: remove unused v8::Isolate* arg from WebRequest ctor

refactor: make electron::api::Session::web_request_ a cppgc::Member<api::WebRequest>

refactor: allocate api::WebRequest on cpp heap

refactor: modify Create(), Find(), and FindOrCreate() to return a WebRequest*

* refactor: ProxyingURLLoaderFactory takes a concrete api::WebRequest instead of a WebRequestAPI

Experimental commit to ensure `ProxyingURLLoaderFactory::web_request_api_`
won't be a dangling pointer.

* chore: fix doc shear

* refactor: use cppgc::WeakPersistent<> in ProxyingURLLoaderFactory

* refactor: make ProxyingURLLoaderFactory::web_request_ const

* refactor: make ProxyingWebSocket::web_request_ a cppgc::WeakPersistent<>

* add a gin::WeakCellFactory to api::WebRequest

* refactor: use a gin::WeakCell for the bound WebRequest argument in HandleOnBeforeRequestResponseEvent()

* chore: update patches
2025-11-12 12:53:00 -06:00
Charles Kerr
b659563724 refactor: use gin_helper's gin::Wrappable-to-v8::Local converter (#48885)
* refactor: Session::NetLog() returns a NetLog*

Use gin_helper's gin::Wrappable-to-v8::Local converter instead
of rewriting it.

* refactor: FromPath(base::FilePath&, gin::Arguments*) returns a Session*

refactor: FromPartition(std::string&, gin::Arguments*) returns a Session*

Use gin_helper's gin::Wrappable-to-v8::Local converter instead
of rewriting it.
2025-11-11 15:33:25 +09:00
Shelley Vohr
4951b96235 feat: support WebSocket authentication handling (#48512)
* feat: support WebSocket authentication handling

* test: add a test

* refactor: route through login instead
2025-11-10 21:30:44 +01:00
Charles Kerr
519187db1d refactor: decouple api::WebRequest from api::BrowserContext (#48848)
* refactor: rename api::Session::CreateFrom() to api::Session::FromOrCreate()

This is both clearer and more consistent with other classes

* refactor: add Session::FromOrCreate(content::BrowserContext*)

* refactor: reimplement api::WebRequest::FromOrCreate() using api::Session::FromOrCreate()

* refactor: use base::PassKey to ensure WebRequest is only instantiated by Session

* refactor: remove WebRequest::From()

no longer needed; Session already guarantees uniqueness

* refactor: remove unused isolate arg from WebRequest ctor

* refactor: do not attach WebRequest to BrowserContext

no longer needed now that access goes through Session
2025-11-09 08:07:25 -06:00
Shelley Vohr
ab0ff5dffc refactor: remove spellcheck::kWinDelaySpellcheckServiceInit patch (#48843)
refactor: remove spellcheck::kWinDelaySpellcheckServiceInit patch
2025-11-08 10:26:06 -06:00
electron-roller[bot]
595920a308 chore: bump chromium to 144.0.7512.1 (main) (#48768)
* chore: bump chromium in DEPS to 144.0.7507.0

* chore: bump chromium in DEPS to 144.0.7508.0

* chore: update patches

* 7101838: [pathbuilder] Enforce immutable SkPath APIs globally

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

* chore: update filenames.libcxx.gni

* [pathbuilder] Enforce immutable SkPath APIs globally

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

* Reduce service_worker_info.h includes in headers

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

* chore: bump chromium in DEPS to 144.0.7510.0

* chore: update patches

* Use internal popup menus for tabs in actor-controlled states

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

* [api] Delete deprecated fields on v8::Isolate

https://chromium-review.googlesource.com/c/v8/v8/+/7081397
xref: 98d243aea0

* Fixup Reduce service_worker_info.h includes in headers

* Promote deprecation of v8::Context and v8::Object API methods

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

* fixup Promote deprecation of v8::Context and v8::Object API methods

* chore: bump chromium in DEPS to 144.0.7512.1

* chore: update patches

* fixup [pathbuilder] Enforce immutable SkPath APIs global

* chore: update filenames.hunspell.gni

* fix deprecation of v8::Context and v8::Object API methods for nan

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

* [PDF] Implement PdfHelpBubbleHandlerFactory

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

also: [PDF Ink Signatures] Hook up IPH
https://chromium-review.googlesource.com/c/chromium/src/+/7056207

* Remove base/hash/md5.h

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

* fixup for lint

* Remove deprecated interceptor callback types and AccessControl enum

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

* fixup for lint

* fixup [PDF] Implement PdfHelpBubbleHandlerFactory

* use base::SHA1HashString instead of std::hash

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2025-11-07 10:13:45 -05:00
Charles Kerr
f6ffb55c72 refactor: remove electron::WebRequestAPI interface (#48792)
* refactor: remove electron::WebRequestAPI interface

Remove the |electron::WebRequestAPI| interface class.
Use handles to the concrete class |electron::api::WebRequest| instead.

Prerequisite for https://github.com/electron/electron/pull/48762.

Two classes (electron::ProxyingURLLoaderFactory and electron::ProxyingWebSocket)
hold a handle to a WebRequest via |raw_ptr<electron::WebRequestAPI>|.
|electron::WebRequestAPI| is a pure virtual interface whose concrete impl is
|electron::api::WebRequest|.

This is a problem when migrating |electron::api::WebRequest| to cppgc:
we need to change those |raw_ptr<>|s to |cppgc::WeakPersistent<>| but
can't instantiate |cppgc::WeakPersistent<electron::WebRequestAPI>| as-is.
We also can't change it to inherit from |cppgc::GarbageCollectedMixin|,
since that causes problems when |electron::api::WebRequest| inherits from
both |electron::WebRequestAPI| and |cppgc::GarbageCollected|.

* refactor: use name web_request, not web_request_api

* refactor: make ProxyingURLLoaderFactory::web_request() private

* chore: make linter happy by fixing whitespace
2025-11-06 17:05:50 +09:00
Shelley Vohr
1f78d2258c refactor: remove base::AdaptCallbackForRepeating patch (#48774)
refactor: remove base::AdaptCallbackForRepeating patch
2025-11-05 11:00:51 -08:00
electron-roller[bot]
ba135e2f7f chore: bump chromium to 144.0.7506.0 (main) (#48744)
* chore: bump chromium in DEPS to 144.0.7504.0

* chore: bump chromium in DEPS to 144.0.7506.0

* chore: update patches

* Revert "build: explicitly disable reclient"

This reverts commit e08c6adb08.

No longer needed after https://crrev.com/c/7099239

* 7097498: Remove MSG_ROUTING_* constants from ipc_message.h

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

* 7090671: [//gpu] Remove unneeded GpuInfo methods

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

* 7103701: Remove IPC::PlatformFileForTransit.

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

(This should have been removed with https://github.com/electron/electron/pull/17406).

* chore: update filenames.libcxx.gni

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2025-11-03 21:26:16 -08:00
Shelley Vohr
b389377c63 feat: add app.isHardwareAccelerationEnabled() (#47614)
* feat: add app.isHardwareAccelerationEnabled()

* chore: address review feedback
2025-10-27 14:03:08 -05:00
electron-roller[bot]
6d8196fba3 chore: bump chromium to 143.0.7489.0 (main) (#48642)
* chore: bump chromium in DEPS to 143.0.7489.0

* chore: update add_didinstallconditionalfeatures.patch

no manual changes; patch applied with fuzz

* chore: update allow_in-process_windows_to_have_different_web_prefs.patch

patch reapplied manually due to context shear

Remove BackForwardTransitions flag | https://chromium-review.googlesource.com/c/chromium/src/+/7022596

* chore: update process_singleton.patch

patch reapplied manually due to context shear

Use an empty prefix for socket temporary directory. | https://chromium-review.googlesource.com/c/chromium/src/+/7062192

* chore: update add_electron_deps_to_license_credits_file.patch

no manual changes; patch applied with fuzz

* chore: update expose_ripemd160.patch

Apply modernize-use-nullptr fixes in all .cc files | https://boringssl-review.googlesource.com/c/boringssl/+/83067

* chore: update feat_expose_several_extra_cipher_functions.patch

Apply modernize-use-nullptr fixes in all .cc files | https://boringssl-review.googlesource.com/c/boringssl/+/83067

* Pass Bus::Options by value with std::move. | https://chromium-review.googlesource.com/c/chromium/src/+/7056670

* chore: update patches

* Remove some includes of base/callback_list.h | https://chromium-review.googlesource.com/c/chromium/src/+/7055621

* chore: run gen-libc++-filenames.js

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2025-10-23 16:28:51 -04:00
electron-roller[bot]
9235dc0159 chore: bump chromium to 143.0.7485.0 (main) (#48618)
* chore: bump chromium in DEPS to 143.0.7485.0

* chore: update allow_disabling_blink_scheduler_throttling_per_renderview.patch

Move SetSupportsDraggableRegions mojom IPC from chrome/ and extensions/ to blink/ | https://chromium-review.googlesource.com/c/chromium/src/+/7043264

Patch applied manually due to context shear

* Move SetSupportsDraggableRegions mojom IPC from chrome/ and extensions/ to blink/ | https://chromium-review.googlesource.com/c/chromium/src/+/7043264

* chore: e patches all

* chore: check for file existence before setting utime

* chore: stop disabling kWinDelaySpellcheckServiceInit

[cleanup] Remove feature WinDelaySpellcheckServiceInit | https://chromium-review.googlesource.com/c/chromium/src/+/7012087

This flag has been removed upstream. We've used it since c2d7164 (#38248)
to fix a crash originally described in 97b353a (#34993):

> Delaying spell check initialization is causing specs for
> 'custom dictionary word list API' to fail in Electron.

Since we haven't touched this in a few years, and since there's a
clear success criteria (a passing/failing spec), and since the patch
to restore this flag would be pretty large (~750 lines), I'm going
to try just removing the flag from our source to see if the spec
passes or fails.

* Revert "chore: stop disabling kWinDelaySpellcheckServiceInit"

This reverts commit e688880396.

Unfortunately, the crash persists.

* Revert [cleanup] Remove feature WinDelaySpellcheckServiceInit | https://chromium-review.googlesource.com/c/chromium/src/+/7012087

We currently need this feature

* fixup! chore: check for file existence before setting utime

* fixup! Move SetSupportsDraggableRegions mojom IPC from chrome/ and extensions/ to blink/ | https://chromium-review.googlesource.com/c/chromium/src/+/7043264

Address Robo's code review @ 64c7fd21ed

* fixup! fixup! chore: check for file existence before setting utime

fix: oops typo

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2025-10-23 08:30:29 -05:00
Tau Gärtli
7ec0ebc50a feat: Add getAccentColor on Linux (#48027)
* feat: Implement `getAccentColor` on Linux

* doc: Update OS support for accent color APIs
2025-10-21 14:26:30 -04:00
Shelley Vohr
e766d378e1 feat: enable more granular a11y feature management (#48042)
* feat: enable more granular a11y feature management

* Update docs/api/app.md

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>

---------

Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2025-10-21 10:56:14 -04:00
Shelley Vohr
0a19176917 feat: enable resetting accent color (#48274) 2025-10-21 10:49:08 -04:00
Shelley Vohr
6562d6ed0b fix: systemPreferences.getAccentColor inverted color (#48511)
fix: systemPreferences.getAccentColor inverted color
2025-10-21 10:46:46 -04:00
electron-roller[bot]
00a3031357 chore: bump chromium to 143.0.7483.0 (main) (#48590)
* chore: bump chromium in DEPS to 143.0.7482.0

* chore: bump chromium in DEPS to 143.0.7483.0

* [CodeHealth] Remove RenderWidgetHostImpl::is_hidden() | https://chromium-review.googlesource.com/c/chromium/src/+/7050059

* chore: update mas_avoid_private_macos_api_usage.patch.patch

[graphite] Refactor backpressure fences on Mac to avoid GLContext | https://chromium-review.googlesource.com/c/chromium/src/+/7047167

* chore: update disable_compositor_recycling.patch

no manual changes; patch applied with fuzz

[CodeHealth] Remove RenderWidgetHostImpl::is_hidden() | https://chromium-review.googlesource.com/c/chromium/src/+/7050059

* chore: update allow_disabling_blink_scheduler_throttling_per_renderview.patch

[CodeHealth] Remove RenderWidgetHostImpl::is_hidden() | https://chromium-review.googlesource.com/c/chromium/src/+/7050059

* chore: update feat_allow_code_cache_in_custom_schemes.patch

[url] Change Add*Scheme*(...) functions to accept std::string_view | https://chromium-review.googlesource.com/c/chromium/src/+/7046471

* chore: e patches all

* [memory] Replace bool success with MemoryDumpRequestOutcome enum. | https://chromium-review.googlesource.com/c/chromium/src/+/7029767

* [CodeHealth] Remove RenderWidgetHostImpl::is_hidden() | https://chromium-review.googlesource.com/c/chromium/src/+/7050059

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2025-10-21 08:11:09 -05:00
electron-roller[bot]
1cc2fce905 chore: bump chromium to 143.0.7477.0 (main) (#48584)
* chore: bump chromium in DEPS to 143.0.7477.0

* 7049117: [CodeCache] Adjust PersistentCache for CodeCache feature

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7049117

* chore: update patches

* chore: add missing includes of ui/gfx/image/image_skia.h

* 7028738: Rename several ipc_* files used by param_traits*

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7028738

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2025-10-19 21:46:34 +02:00
electron-roller[bot]
471a14432f chore: bump chromium to 143.0.7469.0 (main) (#48548)
* chore: bump chromium in DEPS to 143.0.7469.0

* 7021651: [//gpu] Fold handle creation into D3DImageBackingFactory

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7021651

* 7013047: Fix various C++23 build errors in //chrome

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7013047

* 7010850: [//ui] Port screen_mac.mm's calls to DisplayColorSpaces

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7010850

* 7007933: Remove superfluous mojom includes in //content/public headers

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7007933

* 7023196: Trim os_crypt/sync visibility list

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7023196

* 7008912: Remove GURL::*_piece() method

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7008912

* 7003989: Add wrapper struct for CopyFromSurface output

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7003989

* 7017889: [MemoryPressureListener] Remove type aliases

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7017889

* 7027780: Delete viz::ResourceSizes

Refs https://chromium-review.googlesource.com/c/chromium/src/+/7027780
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6989572

* 6495189: [api] Delete old String::Write* APIs

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

* chore: update patches

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

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2025-10-15 14:10:10 -07:00
CezaryKulakowski
357e42d907 fix: fixed white flash on call to BrowserWindow.show (#47151) 2025-10-14 15:58:27 +02:00
electron-roller[bot]
d920c82fc4 chore: bump chromium to 143.0.7451.0 (main) (#48362)
* chore: bump chromium in DEPS to 142.0.7429.0

* chore: bump chromium in DEPS to 142.0.7430.0

* 6954508: Reland Migrate WrappableWithNamedPropertyInterceptor to gin::Wrappable | https://chromium-review.googlesource.com/c/chromium/src/+/6954508

* https://chromium-review.googlesource.com/c/chromium/src/+/6955633

* 5584820: Fix font face resolution when renderer is blocked | https://chromium-review.googlesource.com/c/chromium/src/+/5584820

* chore: export patches

* chore: remove patch that keeley says is ok to remove in comments

* chore: bump chromium in DEPS to 142.0.7432.0

* chore: export patches

* chore: bump chromium in DEPS to 142.0.7434.0

* 6973697: Use type tags for data stored in V8 internal fields | https://chromium-review.googlesource.com/c/chromium/src/+/6973697

* 6976272: Revert Reland mac: click through content area in main window | https://chromium-review.googlesource.com/c/chromium/src/+/6976272

* chore: export patches

* 6938086: Rename native_widget_types.h -> native_ui_types.h | https://chromium-review.googlesource.com/c/chromium/src/+/6938086

* 6951252: Correct PersistentCache backed code cache context grouping

* chore: bump chromium in DEPS to 142.0.7436.0

* 6981628: Reland Use unordered_map in AcceleratorMap | https://chromium-review.googlesource.com/c/chromium/src/+/6981628

* chore: export patches

* chore: resolve patch conflict with main

* chore: merge conflict with main

* chore: bump chromium in DEPS to 142.0.7438.0

* chore: bump chromium in DEPS to 142.0.7440.0

* chore: bump chromium in DEPS to 142.0.7442.0

* chore: bump chromium in DEPS to 142.0.7444.0

* chore: bump chromium in DEPS to 143.0.7445.0

* chore: bump chromium in DEPS to 143.0.7447.0

* chore: bump chromium in DEPS to 143.0.7449.0

* chore: bump chromium in DEPS to 143.0.7451.0

* 7001364: Migrate GURL accessors to Get* variants in //content | https://chromium-review.googlesource.com/c/chromium/src/+/7001364

* 6986521: Implicit second value 'any' instead of 'span-all' for fallback query | https://chromium-review.googlesource.com/c/chromium/src/+/6986521

* chore: update chromium patches

* chore: update chromium patches

* chore: update patches

* fix: parse macOS SDK version across line break
https://chromium-review.googlesource.com/c/chromium/src/+/6980166

* fix: replace v8::Object::SetPrototype() usage
https://chromium-review.googlesource.com/c/v8/v8/+/6983465
https://github.com/nodejs/node/pull/55453

* fix: regenerate filenames.libcxx.gni
https://chromium-review.googlesource.com/c/chromium/src/+/6980307

* fix: replace additional usages of SetPrototype
https://chromium-review.googlesource.com/c/v8/v8/+/6983465

* build: use macos 15 minimum
https://chromium-review.googlesource.com/c/chromium/src/+/6980166

* ci: ignore missing dir for strip_universal_deep

* fix: js2c compilation failure

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

See patch description explaining MacOS 26 SDK headers incompatibility.

* fixup! chore: export patches

* feat: add new memory-eviction exit reason
https://chromium-review.googlesource.com/c/chromium/src/+/6991933

* fix: set JSON reader parsing options
https://chromium-review.googlesource.com/c/chromium/src/+/6992114

* fix: provide DeviceEmulationCacheBehavior param
https://chromium-review.googlesource.com/c/chromium/src/+/6965238

* fix: views::NonClientFrameView -> views::FrameView
https://chromium-review.googlesource.com/c/chromium/src/+/7005027
https://chromium-review.googlesource.com/c/chromium/src/+/6966937

* fix: check new forced colors enum value
https://chromium-review.googlesource.com/c/chromium/src/+/6944403

* fix: migrate NetworkConditions -> MatchedNetworkConditions
https://chromium-review.googlesource.com/c/chromium/src/+/6827307

* fix: migrate GURL string methods to Get*()
https://chromium-review.googlesource.com/c/chromium/src/+/7007010

* fix: disable C++ modules in electron_lib builds
https://chromium-review.googlesource.com/c/chromium/src/+/6950738

* fix: partially revert is_headless_mode removal
https://chromium-review.googlesource.com/c/chromium/src/+/6955633

This patch should likely be reworked. For now, this partially reverts the
removal of a required class property to restore behavior.

* Revert "build: use macos 15 minimum"

This reverts commit 2fc12d6acc.

Initially this change was made to test if it fixes libcxx
compilation issues. As that's now resolved by disabling libcxx
modules, this can be reverted.

* fix: disable C++ modules in libnode builds

* fixup! fix: replace v8::Object::SetPrototype() usage https://chromium-review.googlesource.com/c/v8/v8/+/6983465 https://github.com/nodejs/node/pull/55453

* fixup! fix: replace v8::Object::SetPrototype() usage https://chromium-review.googlesource.com/c/v8/v8/+/6983465 https://github.com/nodejs/node/pull/55453

* build: switch to macos-15 runner

build/mac/find_sdk.py now requires macOS 15 SDK as a minimum version. The
macos 15 runners default to an Xcode using the 15 SDK and removes older
versions.

* fixup! fix: check new forced colors enum value https://chromium-review.googlesource.com/c/chromium/src/+/6944403

* fixup! fix: migrate GURL string methods to Get*() https://chromium-review.googlesource.com/c/chromium/src/+/7007010

* fix: use std::u16string for Extension::Create() error parameter
https://chromium-review.googlesource.com/c/chromium/src/+/6975452

* fix: add missing image_skia include
https://chromium-review.googlesource.com/c/chromium/src/+/6986762

* fixup! fix: add missing image_skia include https://chromium-review.googlesource.com/c/chromium/src/+/6986762

* fix: remove outdated V8 flag
https://chromium-review.googlesource.com/c/v8/v8/+/6948286

* fix: disable protocol handler DCHECK

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

Ignore the extension custom protocol handler registry DCHECK until
we invest in supporting it. Replacing this DCHECK seems harmless
and will unblock the roll.

* fix: replace deprecated usage of SetPrototype
https://chromium-review.googlesource.com/c/v8/v8/+/6983465

* fixup! fix: migrate NetworkConditions -> MatchedNetworkConditions https://chromium-review.googlesource.com/c/chromium/src/+/6827307

* fixup! fix: migrate GURL string methods to Get*() https://chromium-review.googlesource.com/c/chromium/src/+/7007010

* chore: remove patch already included in roll

* chore: remove extraneous formatting added to patch

* chore: remove fix_harden_blink_scriptstate_maybefrom.patch
https://chromium-review.googlesource.com/c/chromium/src/+/6973697

No longer needed since the above CL landed.

* 6973697: Use type tags for data stored in V8 internal fields

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

* chore: update patches

* fixup! chore: export patches

* chore: restore electron embedder data tag patch

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Alice Zhao <alicelovescake@anthropic.com>
Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
2025-10-13 12:21:54 -04:00
Zuohui Yang
16b5776b01 fix: launch crash when null device is disabled on Windows (#47870)
fix: fix launch crash when null device is disabled on Windows

add node flag node::ProcessInitializationFlags::kNoStdioInitialization

Co-authored-by: yangzuohui <yangzuohui@bytedance.com>
Co-authored-by: yangliu <yangliu.leo@bytedance.com>
2025-10-11 18:00:04 -04:00
reito
9e46efb8f7 feat: offscreen rendering support rgbaf16 hdr output format. (#48265)
* feat: offscreen rendering support rgbaf16

* docs: update doc

* docs: update doc.
2025-10-09 10:33:34 +02:00
Charles Kerr
a1ca9a8d55 refactor: DRY in App::SetAppLogPath() (#48452) 2025-10-05 12:32:28 -05:00
Charles Kerr
01cab978f7 refactor: remove gin_helper::Arguments (#48374)
* refactor: make api::Clipboard::GetClipboardBuffer() private

* refactor: move GetClipboadBuffer() into anonymous namespace

* refactor: use gin::Arguments in StopRecording()

* refactor: use gin::Arguments in ImageView::New()

* refactor: use gin::Arguments in AppendSwitch()

* refactor: use gin::Arguments WebContentsView::New()

* refactor: make gin::Arguments arg const in WrappableBase::InitWithArgs()

This makes explicit that we are using it for wrapper + isolate, not the args values

* refactor: remove gin_helper::Arguments arg from ExposeAPI()

refactor: remove gin_helper::Arguments arg from ExposeAPIInWorld()

* refactor: remove gin_helper::Arguments arg from ElectronBindings::GetSystemMemoryInfo()

* refactor: remove gin_helper::Arguments arg from preload_utils::GetBinding()

* refactor: use gin::Arguments in OpenExternal()

* refactor: use gin::Arguments in ExecuteInWorld()

* refactor: use gin::Arguments in ExecuteJavaScript()

* refactor: use gin::Arguments in InvokeNew()

* refactor: use gin::Arguments in ExecuteJavaScriptInIsolatedWorld()

* refactor: remove unused GetNextArgument() marshaller for gin_helper::Arguments

* refactor: remove unused #include gin_helper/arguments.h

* chore: remove unused gin_helper::Arguments

* fixup! refactor: use gin::Arguments in ExecuteJavaScriptInIsolatedWorld()

Xref: https://github.com/electron/electron/pull/48447
2025-10-03 14:10:29 -05:00
Charles Kerr
26a473db98 refactor: make api::Menu inherit from gin::Wrappable (#48351)
* refactor: make api::Menu inherit from gin::Wrappable*

* refactor: make api::Menu::kWrapperInfo const

* refactor: use three-arg version of GetConstructor in Menu

refactor: undo branch changes to two-arg version of GetConstructor

* fixup! refactor: make api::Menu inherit from gin::Wrappable*

fix: return type of Menu::New

* fixup! refactor: make api::Menu inherit from gin::Wrappable*

make MenuMac's constructor public so that cppgc can use it

* refactor: Pinnable -> SelfKeepAlive
2025-09-24 19:42:22 -05:00
Charles Kerr
6661457cdf refactor: prefer upstream gin::Arguments::ThrowTypeError() over gin_helper (#48368)
* refactor: use gin::Arguments::ThrowTypeError() in AutoUpdater::SetFeedURL()

* refactor: use gin::Arguments::ThrowTypeError() in Browser::Focus()

* refactor: use gin::Arguments::ThrowTypeError() in SystemPreferences::SetUserDefault()

* refactor: use gin::Arguments::ThrowTypeError() in UtilityProcessWrapper::Create()

* refactor: use gin::Arguments::ThrowTypeError() in UtilityProcessWrapper::PostMessage()

* refactor: use gin::Arguments::ThrowTypeError() in ElectronBundleMover::ShouldContinueMove()

* refactor: use gin::Arguments::ThrowTypeError() in OnClientCertificateSelected()

* refactor: use gin::Arguments::ThrowTypeError() in Session::ClearData()

* refactor: use gin::Arguments::ThrowTypeError() in ElectronBrowserContext::DisplayMediaDeviceChosen()

* refactor: use gin::Arguments::ThrowTypeError() in WebContents::ReplaceMisspelling()

* refactor: use gin::Arguments::ThrowTypeError() in WebContents::Print()

* chore: iwyu shell/common/gin_helper/error_thrower.h
2025-09-24 19:10:05 -05:00
Charles Kerr
235fdc41f6 refactor: use gin::Arguments in BaseWindow (#48355)
* refactor: make api::Clipboard::GetClipboardBuffer() private

* refactor: move GetClipboadBuffer() into anonymous namespace

* refactor: use gin::Arguments in BaseWindow::MoveAbove()

refactor: use gin::Arguments in BaseWindow::SetAlwaysOnTop()

refactor: use gin::Arguments in BaseWindow::SetIgnoreMouseEvent()

* refactor: use gin::Arguments in BaseWindow::SetProgresBar()

* refactor: use gin::Arguments in BaseWindow::SetVisibleOnAllWorkspaces()

* refactor: use gin::Arguments in BaseWindow::SetVibrancy()

* refactor: use gin::Arguments in BaseWindow::SetAspectRatio()

* refactor: use gin::Arguments in BaseWindow::PreviewFile()

* refactor: use gin::Arguments in BaseWindow::SetThumbarButtons()

* refactor: use gin::Arguments in BaseWindow::SetBounds()

* refactor: use gin::Arguments in BaseWindow::SetContentBounds()

* refactor: use gin::Arguments in BaseWindow::SetSize()

* refactor: use gin::Arguments in BaseWindow::SetContentSize()

* refactor: use gin::Arguments in BaseWindow::SetSheetOffset()

* refactor: use gin::Arguments in BaseWindow::SetPosition()

* refactor: use gin::Arguments in BaseWindow::AddTabbedWindow()

* refactor: use gin::Arguments in BaseWindow::SetParentWindow()

* refactor: use gin::Arguments in BaseWindow::BaseWindow()

* refactor: use gin::Arguments in BaseWindow::SetAccentColor()

* refactor: use gin::Arguments in BaseWindow::SetTitleBarOverlay()
2025-09-24 09:39:16 -04:00
electron-roller[bot]
1fda08b8c8 chore: bump chromium to 142.0.7417.0 (main) (#48275)
* chore: bump chromium in DEPS to 142.0.7401.0

* 6911185: Reland "Send touch moves async immediately after scroll starts."

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

* 6906887: mac: click through content area in main window

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

* 6916667: Expose helper to eliminate duplicate recipes.

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

* 6909842: Switch LegacyRenderWidgetHostHWND from atlcrack.h to msg_util.h.

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

* 6884056: Remove the SecKeychain implementation for the Keychain interface

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

* 6904906: Remove `WTF::` in renderer/core/[p-x].*/

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

* 6556585: [persistent_cache]: PersistentCache for CodeCache

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

* 6904864: Layout: Support abort on the text placeholder layout

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

* chore: fixup patch indices

* chore: bump chromium in DEPS to 142.0.7402.0

* fixup! 6556585: [persistent_cache]: PersistentCache for CodeCache

* chore: fixup patch indices

* 6905244: [api] Remove deprecated `GetIsolate`

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

* 6897694: Remove NativeTheme::UserHasContrastPreference().

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

* 6897477: Remove GetPlatformHighContrastColorScheme() and enum.

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

* 6918198: Reland "Rename display::Screen::GetScreen() to display::Screen::Get()"

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

* 6907147: [LNA] add use counter for websocket mixed-content issues

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

* 6914538: Replace WTF::String with blink::String

https://chromium-review.googlesource.com/c/website/+/6914538

* 6892538: [video pip] Allow touchscreen users to toggle live caption

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

* chore: fix patch

* chore: bump chromium in DEPS to 142.0.7403.0

* build: remove ninja logs

* chore: fixup patch indices

* 6920670: [PDF] Change pdf_extension_util to return dictionaries

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

* 6917864: Devirtualize and inline various NativeTheme getters.

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

* 6920873: [PDF] Simplify PDFDocumentHelperClient::OnSaveURL()

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

* build: don't kill blink/web_tests

* 6923655: Roll libc++ from 954086abf121 to b87b2bb112f8 (4 revisions)

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

* 6905242: Reland "[CSP] Clarify report-only console messages."

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

* fixup! 6897694: Remove NativeTheme::UserHasContrastPreference().

* chore: bump chromium in DEPS to 142.0.7405.0

* 6910012: [LNA] Enable LNA enforcement by default

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

* 6929444: Combine GetInstanceForXXX() implementations.

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

* 6927873: Rename native_widget_types.h -> native_ui_types.h

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

* 6853978: Init perfetto really early in WebView

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

* 6874886: Use only one picker observer to avoid getting duplicate notifications

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

* chore: fixup patch indices

* fix: Protocol complex inline dtor

* chore: bump chromium in DEPS to 142.0.7407.0

* chore: bump chromium in DEPS to 142.0.7409.0

* chore: bump chromium in DEPS to 142.0.7411.0

* chore: bump chromium in DEPS to 142.0.7413.0

* fixup! 6905242: Reland "[CSP] Clarify report-only console messages."

* 6927233: Remove NativeTheme "use dark colors" bit.

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

* chore: fixup patch indices

* 6899206: [PermissionOptions] Multi-state permission subscriptions & setting changes

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

* chore: bump chromium in DEPS to 142.0.7415.0

* 6936895: [headless] Remove headless flag from views::Widget class

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

We should probably followup on this to see if there is a way to do this without reverting this CL.

* 6937023: Reland "Use new DBus type system in dbus_xdg::Request"

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

* chore: update patches

* 6944749: Add GN visibility list to //components/os_crypt/sync

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

* Further replace sub_capture_target_version with CaptureVersion

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

* fixup for lint

* chore: update filenames.libcxx.gni

* chore: bump chromium in DEPS to 142.0.7417.0

* 6944136: Reorder NativeTheme headers/.cc files.

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6944136

* 6939701: [DSSC][4] Make FSVCI objects aware of their capture-version-source

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6939701

* 6944404: Remove extraneous callback call

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6944404

* 6936124: [FPF-CI]: Introduce blink::NoiseToken for fingerprinting protection

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6936124

* chore: update patches

* fixup! 6927233: Remove NativeTheme "use dark colors" bit.

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6927233

* fixup! 6917864: Devirtualize and inline various NativeTheme getters.

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6917864

* 6937588: Add initial OsSettingsProvider object, supplying caret blink interval.

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6937588

* fixup! 6905242: Reland "[CSP] Clarify report-only console messages."

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6905242

* 6907515: Replace SingletonHwndObserver with a CallbackList on SingletonHwnd.

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6907515

* 6910482: [Save to Drive] Implement retry functionality

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6910482

* fixup! 6927233: Remove NativeTheme "use dark colors" bit.

Refs https://chromium-review.googlesource.com/c/chromium/src/+/6927233

* Revert "build: remove ninja logs"

This reverts commit 72874740fd.

* test: fix flakey test picked from PR 48205

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
Co-authored-by: Alice Zhao <alicelovescake@anthropic.com>
2025-09-22 20:16:27 -07:00
Robo
048d620701 fix: remove unneeded handlescope from JS callbacks (#48318)
fix: remove handlescope from JS callbacks
2025-09-16 06:56:38 +09:00
Charles Kerr
15cdae1cf0 refactor: make api::NetLog inherit from gin::Wrappable (#48308)
* refactor: remove unused v8::Isolate* arg from NetLog ctor

* refactor: allocate api::NetLog on cpp heap

* refactor: make electron::api::Session::net_log_ a cppgc::Member<api::NetLog>

* refactor: remove unnecessary EscapableHandleScope

* chore: code style consistency
2025-09-16 06:29:46 +09:00
Charles Kerr
a468ed7f10 refactor: narrow or remove gin arguments (#48300)
* refactor: narrow App:SetJumpList() arg from gin::Arguments* to v8::Isolate*

* refactor: narrow WebContents::AddWorkSpace() arg from gin::Arguments* to v8::Isolate*

* refactor: narrow ShowMessageBox() arg from gin::Arguments* to v8::Isolate*

* refactor: narrow ShowOpenDialog() arg from gin::Arguments* to v8::Isolate*

* refactor: remove unused gin::Arguments* arg from OverrideGlobalPropertyFromIsolatedWorld()

* refactor: narrow WebContents::StartDrag() arg from gin::Arguments* to v8::Isolate*

* refactor: narrow NetLog::StopLogging() arg from gin::Arguments* to v8::Isolate*

* refactor: narrow Protocol::IsProtocolHandled() arg from gin::Arguments* to v8::Isolate*
2025-09-13 08:19:07 +09:00