XDG Desktop Portal provides restore tokens to restore a previously
selected PipeWire stream instead of prompting the user again. This
restore token is single use only and it has to be replaced when the
stream is completed/stopped.
BaseCapturerPipewire maintains two source IDs: one is initialized by
the constructor for new sources (source_id_) and another is for
capturing previously selected sources (selected_source_id_). The
restore token was always being stored under `source_id_`, even if the
capture was ongoing for `selected_source_id_`. This prevents a stream
from being restored more than once. Fix that by storing the restore
token under the selected source ID if it exists.
Check if PipeWire can be initialized before creating generic capturer.
This harmonizes the conditions with the ones used in Linux
implementations of DesktopCapturer::CreateRawScreenCapturer and
DesktopCapturer::CreateRawWindowCapturer.
* fix: delete desktop capturers when they're not needed
Delete desktop capturer objects by resetting the DesktopMediaList
objects that own them after the sources have been collected. Capturers
that are not delegated are already being reset via a patch on
NativeDesktopMediaList. That is not safe for delegated capturers as
thumbnail generation depends on user events. Deleting the
DesktopMediaList operation is safe for all capturers and releases OS
capture resources as soon as possible.
* fix: add a patch to clean up PipeWire resources
Adding a patch to workaround a Chromium issue:
https://bugs.chromium.org/p/chromium/issues/detail?id=1467060
The patch can be removed when the issue is resolved.
* chore: bump chromium in DEPS to 98.0.4726.0
* 3292117: Remove unneeded base/compiler_specific.h includes in //chrome.
3292117
* 3289198: Enables calculating line, word and sentence boundaries on the browser
3289198
* 3276176: Remove expired gdi-text-printing flag and associated code.
3276176
* 3240963: content: allow embedder to prevent locking scheme registry
3240963
* 3269899: Rename WebContentsImpl::GetFrameTree to GetPrimaryFrameTree
3269899
* chore: fixup patch indices
* 3276279: Enable -Wshadow by default for the "chromium code" config.
3276279
* 3279737: appcache: Remove WebPreference/WebSetting
3279737
* 3275564: [api] Advance API deprecation for APIs last marked in v9.6
3275564
* 3261873: Clean up WebScriptSource constructors
3261873
* 3279346: appcache: Remove ConsoleMessage appcache field
3279346
* 3264212: Move legacy file loading to legacy_test_runner
3264212
Both Persistence and UI have been removed from globals, but the issues they
seemed to be patching are no longer reproducible from what I can tell, and
so we can just delete these and re-evaluate if something surfaces.
* 3290415: x11: remove the USE_X11 define.
3290415
* chore: bump Chromium to 98.0.4728.0
* 3179530: Defer system calls in PrintingContext for OOP printing
3179530
* 3299445: Consolidate is_win conditionals in chrome/test/BUILD.gn.
3299445
* chore: update patch indices
* 3223975: Break PrintJobWorker OOP logic into separate class
3223975
* chore: bump chromium in DEPS to 98.0.4730.0
* 3279001: Remove support for font-family: -webkit-pictograph
3279001
* chore: fixup patch indices
* chore: bump chromium in DEPS to 98.0.4732.0
* chore: update patches
* chore: bump chromium in DEPS to 98.0.4734.0
* chore: bump chromium in DEPS to 98.0.4736.0
* chore: update patches
* chore: update printing patch for miracle ptr
* chore: add noexcept to fix clang error
* chore: bump chromium in DEPS to 98.0.4738.0
* chore: update patches
* chore: bump chromium in DEPS to 98.0.4740.0
* chore: bump chromium in DEPS to 98.0.4742.0
* chore: bump chromium in DEPS to 98.0.4744.0
* chore: bump chromium in DEPS to 98.0.4746.0
* chore: bump chromium in DEPS to 98.0.4748.0
* chore: bump chromium in DEPS to 98.0.4750.0
* chore: update patches
* 3293841: Remove File Handling permissions code
Ref: 3293841
* chore: update patches
3311700: Move the PpapiPluginSandboxedProcessLauncherDelegate | 3311700
* 3289260: [CodeHealth]: Remove uses of Notification Service
Ref: 3289260
* 3301600: Disable scripted print in fenced frames
Ref: 3301600
* chore: add missing thread_restrictions headers
* 3305132: Rewrite most `Foo* field_` pointer fields to `raw_ptr<Foo> field_`.
Ref: 3305132
* fix: add ppapi_sandbox header for linux
3311700: Move the PpapiPluginSandboxedProcessLauncherDelegate | 3311700
* chore: manually bump chromium in DEPS to 98.0.4757.0
* chore: update patches
* 3321044: Remove DictionaryValue::Clear()
Ref: 3321044
* chore: update printing.patch
Refs:
- 3304556: [code health] Remove notification observation from PrintJob. | 3304556
- 3305095: [code health] Remove NotificationService from PrintViewManagerBase. | 3305095
* build: add v8-embedder-state headers to GN patch
* chore: bump chromium in DEPS to 99.0.4767.0
* chore: update patches
* chore: rename CookiePartitionKeychain
...to CookiePartitionKeyCollection
* chore: update video consumers
* refactor: use newer base::Value API
* 3232598: Convert net::DnsOverHttpsServerConfig into a class | 3232598
* 3327865: Remove the default WebContentsUserData ctor. | 3327865
* 3302814: DevTools: Add getPreference binding | 3302814
* 3301474: [tq][runtime] Use build flags for JS context promise hooks | 3301474
* oops 😵💫
* 3272411: Reland "base/allocator: Enable PartitionAlloc-Everywhere on macOS" | 3272411
build: turn PartitionAlloc back off on mac for now
* fix: WCO method got renamed
* 3344749: Revert "Stop using NSRunLoop in renderer process"
3344749
* 3288746: [serial] Fix BluetoothSerialDeviceEnumerator threading issues.
3288746
* Revert "3288746: [serial] Fix BluetoothSerialDeviceEnumerator threading issues."
This reverts commit 5cc69f102e43ca72ac9ef45063711bcc7d849740.
* chore: disable serial device enumerator sequence dcheck
* fix: comment out line in DeviceService dtor
* fixup! 3279001: Remove support for font-family: -webkit-pictograph
* fixup! 3279346: appcache: Remove ConsoleMessage appcache field
* chore: update patches after rebase
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: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
Co-authored-by: Samuel Attard <samuel.r.attard@gmail.com>
Co-authored-by: VerteDinde <khammond@slack-corp.com>
Co-authored-by: clavin <clavin@electronjs.org>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: Jeremy Rose <jeremya@chromium.org>