* feat: Working navigationHistory.restore with just title/url
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* feat: Restore page state, too
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* chore: Docs, lint, tests
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* Implement feedback
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* More magic
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* Make _awaitNextLoad truly private
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* Implement API group feedback
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
* One more round of feedback
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
---------
Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Felix Rieseberg <fr@makenotion.com>
feat: service worker preload scripts for improved extensions support (#44411)
* feat: preload scripts for service workers
* feat: service worker IPC
* test: service worker preload scripts and ipc
* feat: add query-session-end event for Windows
* fix: remove debug line
* feat: notify with reason on session-end
* docs: add comments and return params
* docs: add same docs to the BrowserWindow
* fix: add shutdown reason if lParam == 0
* docs: remove 'force' word
* docs: revert multithreading.md change
* docs: add reasons documentation, reason variable renamed to reasons
* docs: improve 'shutdown' reason wording
* docs: reword with 'can be'
* fix: pass reasons by reference
* fix: use newer approach which expose reasons value directly on Event object
* docs: add escaping
* style: linter fixes
* fix: project now should compile
* fix: EmitWithoutEvent method added, EmitWithEvent moved to private again
* docs: typo fix
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
* docs: dedicated WindowSessionEndEvent type created
* docs: better wording for session-end event description
Co-authored-by: Will Anderson <will@itsananderson.com>
---------
Co-authored-by: Sam Maddock <samuel.maddock@gmail.com>
Co-authored-by: Will Anderson <will@itsananderson.com>
This allows apps to measure their CPU usage over any given period
without worrying about other calls affecting the output,
as they would with `percentCPUUsage`.
* chore: bump chromium in DEPS to 124.0.6315.0
* chore: update patches
* 5279678: Stream AIDA responses
5279678
* 5276439: Remove non_network_url_loader_factory_remotes_
5276439
* 5310165: Add DevTools API to show search results
5310165
* chore: bump chromium in DEPS to 124.0.6317.0
* chore: update patches
* Remove Setup.Install.CumulativeDiskUsage2 and supporting code
5314269
* browser: Make cmd line non-const in process singleton callback
5311256
* chore: bump chromium in DEPS to 124.0.6319.0
* chore: bump chromium in DEPS to 124.0.6321.0
* chore: bump chromium in DEPS to 124.0.6323.0
* 5318335: Roll src/third_party/boringssl/src 23824fa0f..4fe29ebc7
5318335
* 5318051: [CBE Watermarking] Hoist `watermark_view` to a member variable.
5318051
* chore: fixup patch indices
* 4946553: Delegate HID permission to Chrome App in webview
4946553
* 5310001: DevTools UI binding for reporting client events to AIDA
5310001
* [libc++] Refactor the predicate taking variant of `__cxx_atomic_wait`
* chore: fix browser_view patch harder
* 5293937: Reland "[gUM] Use preferred device if more than one is eligible"
5293937
* fix: filter {video|audio} devices by eligible device id
* 5267921: enable speak content under the pointer on PWA and WV2
5267921
* 5310195: heap: Remove Blink's GCTaskRunner
5310195
---------
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: Shelley Vohr <shelley.vohr@gmail.com>
* fix: disable background throttling also in the `viz::DisplayScheduler`
`viz::DisplayScheduler` is responsible for drawing and swapping frames
in the `DisplayScheduler::DrawAndSwap` which is called from the
`DisplayScheduler::AttemptDrawAndSwap` if the `DisplayScheduler::ShouldDraw`
returns true. `ShouldDraw` depends on the `DisplayScheduler` visibility
and when it is not visible then it returns false.
In order to keep producing frames, disabling `backgroundThrottling`
should also prevent changing `DisplayScheduler` visibility to false.
`DisplayScheduler` lives in the `ui::Compositor` where every
`electron::NativewWindow` has its own `Compositor`. `electron::NativewWindow`
may be host of the multiple `electron::api::WebContents` instances which may
have different `WebPreferences` settings. Therefore if at least one
of the `WebContents` requires disabling throttling then all other `WebContents`
using the same window will have it disabled in the `ui::Compositor`.
BREAKING CHANGE:
`backgroundThrottling` set to false will disable frames throttling
in the `BrowserWindow` for all `WebContents` displayed by it.
Close: [#31016](https://github.com/electron/electron/issues/31016)
* fixup! fix: disable background throttling also in the `viz::DisplayScheduler`
* fixup! fix: disable background throttling also in the `viz::DisplayScheduler`
* fixup! fix: disable background throttling also in the `viz::DisplayScheduler`
---------
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
* chore: bump chromium in DEPS to 117.0.5846.0
* chore: update patches
* 4628901: Bump the macOS deployment target to 10.15
4628901
* 4593350: [Private Network Access] Trigger Permission Prompt
4593350
* 4631011: Remove unlaunched "InstallReplacementAndroidApp" Platform App APIs
4631011
* chore: disable API deprecation warnings in NSKeyedArchiver
* chore: update libcxx filenames
* chore: bump chromium in DEPS to 117.0.5848.2
* chore: update feat_add_set_theme_source_to_allow_apps_to.patch
Xref: 4629743
No manual changes; patch succeeded with fuzz
* chore: update process_singleton.patch
Xref: 4605398
Trivial manual patch adjustments to account for code shear.
* chore: remove electron::BrowserContext::GetMediaDeviceIDSalt()
Xref: 4608130
upstream tldr:
- content::BrowserContext::GetMediaDeviceIDSalt()
- content::ContentBrowserClient::ArePersistentMediaDeviceIDsAllowed()
+ content::ContentBrowserClient::GetMediaDeviceIDSalt()
This commit leaves ElectronBrowserContext::GetMediaDeviceIDSalt() in
place (now non-virtual, non-override). It is now called by the new
function ElectronBrowserClient::GetMediaDeviceIDSalt().
As a followup, we might want to consider using the new upstream
media_device_salt::MediaDeviceSaltService and removing our
electron::MediaDeviceIDSalt code. CC @MarshallOfSound for 2nd
opinion since he has done the most work on MediaDeviceIDSalt and
may have more context.
* chore: fix iwyu breakage
Xref: 4629624
electron_browser_main_parts.cc uses ui::ColorProviderManager but didn't
include it. Things worked anyway because we got it indirectly from
content/public/browser/web_contents.h until 4629624.
* chore: remove call to base::mac::IsAtLeastOS10_14
upstream has bumped minimum version to 10.15 so this call is moot?
* chore: remove obsolete API_AVAILABLE calls in IAP
upstream has bumped minimum version to 10.15 so this call is moot?
* chore: remove obsolete API_AVAILABLE calls in electron_application_delegate
upstream has bumped minimum version to 10.15 so this call is moot?
* chore: remove broken-before-macOS-10.15 patch in mas_avoid_usage_of_private_macos_apis.patch
Upstream has bumped minimum to macOS 10.15
* chore: remove @available(macOS 10.14) check
Upstream minimum requirement for macOS is now 10.15
* chore: update patches
* chore: bump chromium in DEPS to 117.0.5850.0
* chore: update patches
* chore: bump chromium in DEPS to 117.0.5852.0
* chore: update patches
* Move two params from NetworkContextParams to NetworkContextFilePaths.
4615930
* WebUSB: Add exclusionFilters to USBRequestDeviceOptions
4614682
* Convert /chrome/browser/ui to use ARC
4615920
* fixup! Bump the macOS deployment target to 10.15
* fixup! Bump the macOS deployment target to 10.15
* chore: update libcxx files
* win: Remove 10Glass from Windows10Glass function and var names
4641314
* chore: revert 392e5f43 from chromium
* Add an ExecutionContext to ScriptState
4609446
* fixup! Add an ExecutionContext to ScriptState
* chore: fix header
* Revert "chore: revert 392e5f43 from chromium"
This reverts commit b7f782943e4ce83cae8cd35780d8d3618cf0772c.
* fix: return correct min/max sizes in WinFrameView
* fixup! Revert chore: revert 392e5f43 from chromium
* fixup! Add an ExecutionContext to ScriptState
* Revert "fixup! Revert chore: revert 392e5f43 from chromium"
This reverts commit 7e2c7281abfc4f309255339fdba073d90a9ae3eb.
* Revert "fix: return correct min/max sizes in WinFrameView"
This reverts commit 3f418b1ab5155686730e087ae6cabe4a21b4bb61.
* Revert "Revert "chore: revert 392e5f43 from chromium""
This reverts commit 56296d8b7c434147e032e3c3b08c0e371b6c27ba.
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
Co-authored-by: Cheng Zhao <zcbenz@gmail.com>