Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: use StartUpdating method for PipeWire capturer #39116

Merged
merged 2 commits into from Jul 24, 2023

Commits on Jul 15, 2023

  1. fix: use StartUpdating method for PipeWire capturer

    Fixed a crash related to PipeWire capturer by adapting to Chromium's
    interface changes. Chromium expects a call to
    `NativeDesktopMediaList::StartUpdating` with an implementation of
    `DesktopMediaListObserver` for delegated capturers like PipeWire. This
    interface allows listening to user permission events and listing
    sources only after the user has made a choice on the permission dialog.
    
    The interface has been implemented by an inner class to allow listening
    to screen and window capture permissions concurrently using two
    instances of the class. A patch that was resetting the capturer on the
    first refresh has been changed to exclude PipeWire. PipeWire capturer
    object will follow the lifecycle of `NativeDesktopMediaList`, as is the
    case in Chromium.
    
    Fixes electron#37463
    aiddya committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    b9fb869 View commit details
    Browse the repository at this point in the history
  2. fix: wait for thumbnails from PipeWire when necessary

    The PipeWire stream starts after the dialog is dismissed. If the sources
    are listed immediately afterwards, the thumbnail may not have been
    generated by that time. Explicitly wait for both thumbnail generation
    and a selection on the source dialog before listing sources.
    aiddya committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    235116d View commit details
    Browse the repository at this point in the history