* Switch to gender neutral terms
* Update docs/api/web-contents.md
Co-authored-by: Milan Burda <milan.burda@gmail.com>
* Update docs/api/webview-tag.md
Co-authored-by: Milan Burda <milan.burda@gmail.com>
* Update script/release/uploaders/upload.py
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
* Update docs/tutorial/in-app-purchases.md
Co-authored-by: Milan Burda <milan.burda@gmail.com>
Co-authored-by: inclusive-coding-bot <inclusive-coding-bot@github.com>
Co-authored-by: Milan Burda <milan.burda@gmail.com>
Co-authored-by: John Kleinschmidt <jkleinsc@github.com>
Rule 13 recommends using Node's URL parser for handling url inputs. At
the moment, this is not being followed in the code example for rule 5,
which falls back on checking that the url ends with a '/'. If this was
forgotten when a user copies this code it could introduce security
vulnerabilities if an attacker uses an URL in the following way:
"https://example.com.attacker.com"
Using Node's URL parser fixes this potential missuse and enables the
'/' to be omited from the code example.
Co-authored-by: Baitinq <you@example.com>
* docs: Updated list numbering
The steps to package and distribute an application using electron had incorrect numbering
* Indented text within ordered list sections
* Removed single space
* Fixed indentation
* docs: remove platform notices from tutorial titles
* Update docs/tutorial/launch-app-from-url-in-another-app.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* docs: add IPC doc
* fix: use "string" primitive
* use 'string' ipcrenderer
* use "number" primitive
* Update docs/tutorial/ipc.md
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
* Update docs/tutorial/ipc.md
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
* add code sample
Co-authored-by: Jeremy Rose <nornagon@nornagon.net>
* docs: update chromium development-related documentation
* chore: remove obsolete clang-format doc
clang-format linting and fixing is a pre-commit hook now
* docs: update debugging documentation
* docs: misc updates
* Update docs/development/debugging-on-windows.md
Co-authored-by: Micha Hanselmann <mh74182@gmail.com>
* Update docs/development/README.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/README.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/README.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/README.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/README.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/README.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/debugging-on-macos.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/testing.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/development/testing.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Micha Hanselmann <mh74182@gmail.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Cheng Zhao <zcbenz@gmail.com>
* docs: add window customization guide
* fixes
* Update docs/api/browser-window.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/api/browser-window.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/fiddles/windows/manage-windows/frameless-window/index.html
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update docs/tutorial/window-customization.md
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* fix code fence
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* fix information
* move historical section to bottom
* Update docs/tutorial/electron-versioning.md
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* docs: Update CI Badge Branch Name
The CI badges were still pointing at builds for the master branch, which
are stale since the rename to main.
* docs: Update electron/electron Branch Name
Update electron/electron branch name from master to main.
* docs: Update electron/governance Branch Name
Update electron/governance branch name from master to main.
* 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>
Images that used the inline link format do not show up on Docusaurus or
the old website infrastructure. There are only 2 guides using it so it
is faster to change the format rather than figuring out why the parsin
logic does not work.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Ref: https://github.com/electron/electronjs.org-new/issues/84
* docs: update context isolation doc
* Apply suggestions from code review
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
Co-authored-by: Cheng Zhao <github@zcbenz.com>
Co-authored-by: Mark Lee <malept@users.noreply.github.com>
* Update process-model.md
the demo have two error:
- at macos, close all window, the app will not quite, unless press cmd + q
- attach preload.js, use preload prop that is member of `webPreferences` property of `BrowserWindow` controller argument
* Update docs/tutorial/process-model.md
Co-authored-by: Erick Zhao <erick@hotmail.ca>
Co-authored-by: Cheng Zhao <github@zcbenz.com>
Co-authored-by: Erick Zhao <erick@hotmail.ca>
* build: embed binary checksums in the npm package
* Update docs/tutorial/installation.md
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* refactor: replace reduce with loop
Co-authored-by: Jeremy Rose <jeremya@chromium.org>
* Typo in launch-app-from-url-in-another-app.md
Code snippet for the info.plist example had html formatting. Removed.
* Fix paddings
Co-authored-by: Cheng Zhao <github@zcbenz.com>