* docs: fix some string union types
Improve Type Union Typings in the Docs
* test: add smoke tests
* test: update `ses.clearStorageData` test case
* test: update `ses.clearStorageData` test case
---------
Co-authored-by: mhli <mhli@hillinsight.com>
* build(deps): update @electron/lint-roller
* chore: type check JS in docs
* docs: add @ts-check and @ts-expect-error to code blocks
* chore: fix type check errors in docs
* chore: add ts-type to blocks
* Allow an absolute path to be used for creating sessions
Allows an absolute path to be used for creating sessions
by adding the session.fromPath() API.
* Fixup! Clarify that an emptry string is not permitted as a parameter to fromPath()
* feat: add support for WebUSB
* fixup for gn check
* fixup gn check on Windows
* Apply review feedback
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* chore: address review feedback
* chore: removed unneeded code
* Migrate non-default ScopedObservation<> instantiations to ScopedObservationTraits<> in chrome/browser/
4016595
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* chore: bump chromium in DEPS to 109.0.5364.0
* chore: update patches
* chore: bump chromium in DEPS to 109.0.5366.0
* chore: update patches
* i3940364: Change PermissionType::WINDOW_PLACEMENT to WINDOW_MANAGEMENT
3940364
* 3866812: Change content::PluginList to only run on the UI thread.
3866812
* chore: bump chromium in DEPS to 109.0.5368.0
* [cleanup] Replace enable_basic_printing with enable_printing
3957357
* chore: update patches
* 3956318: Desktop PWAs: Retire kWebAppWindowControlsOverlay flag
3956318
* fixup! Change content::PluginList to only run on the UI thread.
(cherry picked from commit 7b5ec87d4ff5d34e7493b4fb46c40c0afeef2005)
Co-Authored-By: Robo <hop2deep@gmail.com>
* chore: bump chromium in DEPS to 109.0.5370.0
* 3956299: Quota: Cleanup QuotaPermissionContext
3956299
* chore: update patches
* 3803867: Add Mojo interface to parse XML for OOP printer capabilities
3803867
* fixup: Add Mojo interface to parse XML for OOP printer capabilities
* chore: bump chromium in DEPS to 109.0.5372.0
* chore: update patches
* chore: bump chromium in DEPS to 109.0.5374.0
* chore: bump chromium in DEPS to 109.0.5376.0
* chore: bump chromium in DEPS to 109.0.5378.0
* chore: update patches
* Quota: Cleanup kPersistent in BrowsingDataRemover
3964859
* 3955976: serial: Create DOMException with V8ThrowDOMException
3955976
* 3758405: Append trailer data to serialized messages.
3758405
* chore: revert clang roll
This patch reverts 3967491
because that roll breaks the WOA build: https://crbug.com/1377819
* chore: update patches
* chore: bump chromium in DEPS to 109.0.5380.0
* chore: update patches
* 3859750: [linux/wayland] Added plumbing for the state of tiled edges.
3859750
Also 3970920: [linux/wayland] Fixed the tiled edges for the GTK frame.
3970920
* chore: bump chromium in DEPS to 109.0.5382.0
* chore: update patches
* chore: revert Use accessibility.pkey when setting page access.
3949281
breaks our Linux builds run under Docker.
This patch should be removed once
3949284
is merged.
* 3976312: Roll clang llvmorg-16-init-8189-g97196a2d-2 : llvmorg-16-init-8697-g60809cd2-1
3976312
* 3967841: [heap] Remove AllocationSpace::MAP_SPACE enum constant
3967841
* 3956131: [cleanup] Remove flag for Wasm threads & atomics
3956131
* chore: update docs for Quota: Cleanup kPersistent in BrowsingDataRemover
3964859
* test: fixup HID test for ARM CI
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: electron-patch-conflict-fixer[bot] <83340002+electron-patch-conflict-fixer[bot]@users.noreply.github.com>
* fix: pass rfh instances through to the permission helper
* refactor: use WeakDocumentPtr instead of frame node id
* fix: handle missing initiator document
* fix: dispatch openExternal event for top level webview navs still
* chore: bump chromium in DEPS to 104.0.5096.0
* 3651284: Use the entry settings object for window.open navigation
3651284
* 3644598: Make RenderFrameHost used for notification permission decision
3644598
* 3642842: Window Placement: Prototype Fullscreen Capability Delegation - Part 2
3642842
* 3652785: [sandbox] Enable sandboxed pointers on sanitizer builds
3652785
* 3611967: webhid: Migrate HidDelegate to use BrowserContext and Origin
3611967
* 3665762: Remove RenderFrameHost::IsRenderFrameCreated from //content/.
3665762
* 3659375: Fold x509_util_ios and most of x509_util_mac into x509_util_apple
3659375
* 3656234: [CodeHealth] Remove uses of base::ListValue::Append() (Final, take 2)
3656234
* chore: update patch indices
* chore: fix lint
* 3644598: Make RenderFrameHost used for notification permission decision
3644598
* webhid: Migrate HidDelegate to use BrowserContext and Origin
This is a temporary fix for 3611967 to get the build compiling, but we need to either patch around 3611967 or move our device permissioning to BrowserContext
* chore: fix lint
* build: run electron/script/gen-libc++-filenames.js
fixes gn check
* chore: bump chromium in DEPS to 104.0.5098.0
* chore: disable flaking tests
* 3682394: Change pipes surrounding code references in comments to backticks
3682394
* 3652749: Delete GLRenderer and related classes
3652749
* chore: fixup patch indices
* 3671199: Remove ContentMainDelegate::PostFieldTrialInitialization
3671199
* 3607963: hid: Do not exclude HID device with no collections
3607963
* refactor: use ElectronBrowserContext instead of WebContents to persist devices
due to changes like 3611967,
we can no longer use WebContents to store device permissions so this commit
moves device permission storage to live in memory in ElectronBrowserContext
instead.
* 3557253: Deprecate some signature checks
3557253
* chore: bump chromium in DEPS to 104.0.5100.0
* 3680781: Add policy for Renderer App Container.
3680781
* chore: update patch indices
* 3675465: Update NetLog network service API to use mojom::DictionaryValue.
3675465
* chore: bump chromium in DEPS to 104.0.5102.0
* chore: update patches
* chore: bump chromium in DEPS to 104.0.5103.0
* chore: update patches
* chore: bump chromium in DEPS to 104.0.5104.0
* chore: update patches
* fix: add patch for DCHECK in fullscreen test
* build: fix nan build
* build: make the nan spec runner work on macOS
* chore: bump chromium in DEPS to 104.0.5106.0
* chore: update patches
* chore: bump chromium in DEPS to 104.0.5108.0
* chore: update patches
* chore: bump chromium in DEPS to 104.0.5110.0
* chore: update patches
* chore: bump chromium in DEPS to 104.0.5112.0
* chore: bump chromium in DEPS to 105.0.5113.0
* chore: bump chromium in DEPS to 105.0.5115.0
* chore: bump chromium in DEPS to 105.0.5117.0
* chore: update patches
* chore: update libcpp patch
* 3693745: Delete base::LowerCaseEqualsASCII()
Ref: 3693745
* 3669226: Remove printing PostTask usage of IO thread
Ref: 3669226
* 3687395: Remove DictionaryValue::HasKey().
Ref: 3687395
* 3691014: Prevent unsafe narrowing: ui/accessibility, part 2
Ref: 3691014
* 3560567: [MSC] Porting GenerateStreams clients to handle stream vectors.
Ref: 3560567
* 3684873: [Bluetooth][Win/Linux] Add bluetooth pair confirmation prompt
3684873
* chore: bump chromium in DEPS to 105.0.5119.0
* chore: missing includes in desktop_notification_controller
* chore: update patches
* 3685951: Reland "Make sure screen object is created once in tests."
3685951
* fixup: Reland "Make sure screen object is created once in tests."
* 3646014: [API] Deprecate LegacyOOMErrorCallback
Ref: 3646014
* chore: bump chromium in DEPS to 105.0.5121.0
* chore: update patches
* 3699085: [cleanup] update PrintBackend::EnumeratePrinters to use reference
Ref: 3699085
* chore: bump chromium in DEPS to 105.0.5123.0
* chore: update patches
* chore: bump chromium in DEPS to 105.0.5125.0
* chore: update patches
* 3630082: [sandbox] Also enable the sandbox outside of Chromium builds
Ref: 3630082
* chore: bump chromium in DEPS to 105.0.5127.0
* chore: update patches
* chore: bump chromium in DEPS to 105.0.5129.0
* chore: update patches
* 3703741: Remove WebContents::GetMainFrame.
3703741
* chore: update patches
* fixup! 3703741: Remove WebContents::GetMainFrame.
* fix lint
* more lint
* chore: document breaking change
* 3687671: [v8] Freeze flags after initialization
3687671
* fixup! 3560567: [MSC] Porting GenerateStreams clients to handle stream vectors.
* use the v8 allocator for node serdes
* chore: update patches
* remove faulty non-v8-sandbox-compatible code
* make NodeArrayBufferAllocator use the v8 allocator under the hood
* fixup! 3560567: [MSC] Porting GenerateStreams clients to handle stream vectors.
* fix build on windows
* 3691954: [Reland][Extensions Bindings] Validate arguments sent to API events
3691954
* chore: remove deprecated AccessorSignatures
https://github.com/nodejs/nan/pull/941
* Update patches/chromium/notification_provenance.patch
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* remove chore_expose_v8_initialization_isolate_callbacks.patch
* add link to nodejs/nan#941
* 52026: Do not allow md4 or md5 based signatures in X.509 certificates.
https://boringssl-review.googlesource.com/c/boringssl/+/52026
* chore: update patches
* disable nan buffer-test
* disable sandboxed pointers for now
* force sandboxed pointers off
* improve node allocation patch
* restore accidentally dropped node crypto test patch
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: Charles Kerr <charles@charleskerr.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: Samuel Attard <sattard@salesforce.com>
Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
Co-authored-by: VerteDinde <keeleymhammond@gmail.com>
Co-authored-by: VerteDinde <vertedinde@electronjs.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
Co-authored-by: Jeremy Rose <japthorp@slack-corp.com>
* feat: add support for HIDDevice.forget()
* chore: remove whitespace
* chore: use `SetGetter` to serialize the render_frame_host
Co-authored-by: Samuel Maddock <samuel.maddock@gmail.com>
* fixup chore: use `SetGetter` to serialize the render_frame_host
* fixup after rebase
* fixup for crash on navigator.serial.getPorts()
* fixup for lint
Co-authored-by: Samuel Maddock <samuel.maddock@gmail.com>
* feat: add support for WebHID
* Apply suggestions from code review
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* Address review feedback
* Address review feedback
* chore: clear granted_devices on navigation
Also added test to verify devices get cleared
* fixup testing for device clear
* make sure navigator.hid.getDevices is run on correct frame
* clear granted devices on RenderFrameHost deletion/change
* manage device permissions per RenderFrameHost
This change makes sure we don't clear device permission prematurely due to child frame navigation
* Update shell/browser/api/electron_api_web_contents.cc
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* apply review feedback from @zcbenz
* Match upstream ObjectMap
This change matches what ObjectPermissionContextBase uses to cache object permissions: https://source.chromium.org/chromium/chromium/src/+/main:components/permissions/object_permission_context_base.h;l=52;drc=8f95b5eab2797a3e26bba299f3b0df85bfc98bf5;bpv=1;bpt=0
The main reason for this was to resolve this crash on Win x64:
ok 2 WebContentsView doesn't crash when GCed during allocation
Received fatal exception EXCEPTION_ACCESS_VIOLATION
Backtrace:
gin::WrappableBase::SecondWeakCallback [0x00007FF6F2AFA005+133] (o:\gin\wrappable.cc:53)
v8::internal::GlobalHandles::InvokeSecondPassPhantomCallbacks [0x00007FF6F028F9AB+171] (o:\v8\src\handles\global-handles.cc:1400)
v8::internal::GlobalHandles::InvokeSecondPassPhantomCallbacksFromTask [0x00007FF6F028F867+391] (o:\v8\src\handles\global-handles.cc:1387)
node::PerIsolatePlatformData::RunForegroundTask [0x00007FF6F3B4D065+317] (o:\third_party\electron_node\src\node_platform.cc:415)
node::PerIsolatePlatformData::FlushForegroundTasksInternal [0x00007FF6F3B4C424+776] (o:\third_party\electron_node\src\node_platform.cc:479)
uv_run [0x00007FF6F2DDD07C+492] (o:\third_party\electron_node\deps\uv\src\win\core.c:609)
electron::NodeBindings::UvRunOnce [0x00007FF6EEE1E036+294] (o:\electron\shell\common\node_bindings.cc:631)
base::TaskAnnotator::RunTask [0x00007FF6F2318A19+457] (o:\base\task\common\task_annotator.cc:178)
base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl [0x00007FF6F2E6F553+963] (o:\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc:361)
base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork [0x00007FF6F2E6EC69+137] (o:\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc:266)
base::MessagePumpForUI::DoRunLoop [0x00007FF6F235AA58+216] (o:\base\message_loop\message_pump_win.cc:221)
base::MessagePumpWin::Run [0x00007FF6F235A01A+106] (o:\base\message_loop\message_pump_win.cc:79)
base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run [0x00007FF6F2E702DA+682] (o:\base\task\sequence_manager\thread_controller_with_message_pump_impl.cc:470)
base::RunLoop::Run [0x00007FF6F22F95BA+842] (o:\base\run_loop.cc:136)
content::BrowserMainLoop::RunMainMessageLoop [0x00007FF6F14423CC+208] (o:\content\browser\browser_main_loop.cc:990)
content::BrowserMainRunnerImpl::Run [0x00007FF6F144402F+143] (o:\content\browser\browser_main_runner_impl.cc:153)
content::BrowserMain [0x00007FF6F143F911+257] (o:\content\browser\browser_main.cc:49)
content::RunBrowserProcessMain [0x00007FF6EFFA7D18+112] (o:\content\app\content_main_runner_impl.cc:608)
content::ContentMainRunnerImpl::RunBrowser [0x00007FF6EFFA8CF4+1220] (o:\content\app\content_main_runner_impl.cc:1104)
content::ContentMainRunnerImpl::Run [0x00007FF6EFFA87C9+393] (o:\content\app\content_main_runner_impl.cc:971)
content::RunContentProcess [0x00007FF6EFFA73BD+733] (o:\content\app\content_main.cc:394)
content::ContentMain [0x00007FF6EFFA79E1+54] (o:\content\app\content_main.cc:422)
wWinMain [0x00007FF6EECA1535+889] (o:\electron\shell\app\electron_main.cc:291)
__scrt_common_main_seh [0x00007FF6F6F88482+262] (d:\A01\_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
BaseThreadInitThunk [0x00007FFEC0087034+20]
RtlUserThreadStart [0x00007FFEC1F02651+33]
✗ Electron tests failed with code 0xc0000005.
Co-authored-by: Jeremy Rose <jeremya@chromium.org>