Closes https://github.com/electron/electron/issues/43714.
Fixes an issue where the resizing border was not being handled correctly on Linux WCO
caption buttons. This is now taken into account as a part of the NonClientHitTest.
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
* fix: restore Chromium default Content-Disposition header parsing
Co-authored-by: Milan Burda <milan.burda@gmail.com>
* Update api-web-request-spec.ts
Co-authored-by: Milan Burda <milan.burda@gmail.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Milan Burda <milan.burda@gmail.com>
fix: confirm a v8::Value is a v8::Object before casting it
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
As per the gin docs: "Wrappable<T> explicitly does not support further
subclassing of T. Subclasses of Wrappable<T> should be declared final."
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
When an electron app is launched by another app ensure that the
XDG_ACTIVATION_TOKEN env var is read and used for activation using
xdg_activation_v1 protocol.
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Orko Garai <orko@igalia.com>
* fix: systemMediaPermissionDenied: should check for screen capture perms instead of camera
Co-authored-by: George Xu <george.xu@slack-corp.com>
* Revert "fix: systemMediaPermissionDenied: should check for screen capture perms instead of camera"
This reverts commit e9cc67216558263402867056ed332f8781da3153.
Co-authored-by: George Xu <george.xu@slack-corp.com>
* should only do these checks for audio or video, but not screenshare
Co-authored-by: George Xu <george.xu@slack-corp.com>
* no service
Co-authored-by: George Xu <george.xu@slack-corp.com>
* oops
Co-authored-by: George Xu <george.xu@slack-corp.com>
* build: free up macos disk space as soon as possible (#43533)
* chore: free up macos disk space as soon as possible
* build: free up disk space on gn check too
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: George Xu <george.xu@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
added in Aug 2021 (41646d11, #29600) but never used
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* chore: avoid double-call to url.scheme() in WebContentsZoomController::SetZoomMode()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.scheme_piece() in GetAppInfoHelperForProtocol()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.scheme_piece() in Browser::GetApplicationNameForProtocol()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* refactor: add std::less<> to HandlersMap
This lets us search it using string_view keys
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* refactor: ProtocolRegistry::FindRegistered() now takes a std::string_view
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.scheme_piece() in InspectableWebContents::LoadNetworkResource()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* refactor: ProtocolRegistry::FindIntercepted() now takes a std::string_view
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.scheme_piece() in SimpleURLLoaderWrapper::GetURLLoaderFactoryForURL()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.scheme_piece() in ProxyingURLLoaderFactory::CreateLoaderAndStart()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.host_piece() in ElectronWebUIControllerFactory::GetWebUIType()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: use gurl.host_piece() in ElectronWebUIControllerFactory::CreateWebUIControllerForURL()
Co-authored-by: Charles Kerr <charles@charleskerr.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* feat: support app#login event for utility process net requests
* feat: support app#login event for utility process net requests
* chore: address review feedback
* GlobalRequestID: Avoid unwanted inlining and narrowing int conversions
Refs https://chromium-review.googlesource.com/c/chromium/src/+/5702737
* chore: fix lint
Last use of `icon_path_` was removed on May 29, 2017 (c741b584)
Last use of `has_icon_` was removed on May 30, 2017 (5048425e)
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: avoid double-calls to GetView()
There are a lot of places where we call the virtual method GetView()
twice in succession: the first to check if the view exists, and the
second to use. This PR holds the view in a temp variable instead, e.g.:
if (auto* view = foo->GetView())
view->DoSomething();
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* perf: avoid discarded GetView() call
Co-authored-by: Charles Kerr <charles@charleskerr.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
* fix: handle failing to enter/exit fullscreen on macOS
On macOS, failing to enter/exit fullscreen can fail. If this happens,
properly restore the original window state.
Co-authored-by: cptpcrd <31829097+cptpcrd@users.noreply.github.com>
* refactor: remove fail to exit fullscreen handlers
Seem to be unnecessary since the window exits fullscreen anyway.
Co-authored-by: cptpcrd <31829097+cptpcrd@users.noreply.github.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: cptpcrd <31829097+cptpcrd@users.noreply.github.com>
* chore: bump chromium in DEPS to 128.0.6583.1
* chore: bump chromium in DEPS to 128.0.6585.0
* chore: bump chromium in DEPS to 128.0.6587.0
* chore: bump chromium in DEPS to 128.0.6589.1
* chore: bump chromium in DEPS to 128.0.6591.1
* chore: bump chromium in DEPS to 128.0.6593.0
* chore: bump chromium in DEPS to 128.0.6595.0
* chore: bump chromium in DEPS to 128.0.6597.1
* chore: bump chromium in DEPS to 128.0.6598.0
* chore: bump chromium in DEPS to 128.0.6601.1
* chore: bump chromium in DEPS to 128.0.6603.1
* chore: bump chromium in DEPS to 128.0.6605.2
* chore: bump chromium in DEPS to 128.0.6606.1
* chore: bump chromium in DEPS to 128.0.6607.1
* chore: bump chromium in DEPS to 128.0.6609.0
* chore: bump chromium in DEPS to 128.0.6611.0
* chore: bump chromium in DEPS to 128.0.6613.0
* chore: bump chromium in DEPS to 128.0.6613.7
* chore: update patches
* chore: 5725076: Update EventType names | https://chromium-review.googlesource.com/c/chromium/src/+/5725076
(cherry picked from commit 639d741ba5ac50e800ca46138557c7a32d1b7752)
* chore: 5725076: Update EventType names | https://chromium-review.googlesource.com/c/chromium/src/+/5725076 for windows
(cherry picked from commit 744c17fe92911baa0c7355af905aabb9d12bae18)
* 5730656: Show an error dialog when UpdatePrintSettings() fails
https://chromium-review.googlesource.com/c/chromium/src/+/5730656
---------
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: Alice Zhao <alice@makenotion.com>
`.destroy()` is an important method in the lifecycle of a Node.js
Readable stream. It is typically called to reclaim the resources
(e.g., close file descriptor). The only situations where calling
it manually isn't necessary are when the following events are
emitted first:
- `end`: natural end of a stream
- `error`: stream terminated due to a failure
Prior to this commit the ended state was incorrectly tracked together
with a pending internal error. It led to situations where the request
could get aborted during a read and then get marked as ended (having
pending error).
With this change we disentangle pending "error" and "destroyed" cases to
always properly terminate an active Node.js Readable stream.
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
* avoid crash of operation on an invalid entry while erase set iterator.
Co-authored-by: bill.shen <shenyb32768@gmail.com>
* fix notification removal crash due to the nullptr presenter
Co-authored-by: bill.shen <shenyb32768@gmail.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: bill.shen <shenyb32768@gmail.com>
fix: active File System API permissions should reset on WebContents destruction
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>