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

Dismissing RPSystemBroadcastPickerView without selecting Broadcast Extension leaves isScreenShareEnabled() true #444

Open
mokuzuu opened this issue Jul 26, 2024 · 5 comments
Labels
bug Something isn't working

Comments

@mokuzuu
Copy link

mokuzuu commented Jul 26, 2024

Describe the bug
Dismissing RPSystemBroadcastPickerView without selecting Broadcast Extension leaves isScreenShareEnabled() true

SDK Version
2.0.12

iOS/macOS Version
iOS 17.5.1

Xcode Version
15.4
Swift 5

Steps to Reproduce

  1. Setup broadcast extention
  2. Call room.localParticipant.setScreenShare(true), now room.localParticipant.isScreenShareEnabled() returns true
  3. It shows RPSystemBroadcastPickerView, and press anywhere except Picker to dismiss it
  4. I expect room.localParticipant.isScreenShareEnabled() returns false but it returns true

Expected behavior
Dismissing RPSystemBroadcastPickerView should update isScreenShareEnabled() returns false.

Screenshots
If applicable, add screenshots to help explain your problem.

Logs
Please provide logs if you can.

@mokuzuu mokuzuu added the bug Something isn't working label Jul 26, 2024
@mokuzuu
Copy link
Author

mokuzuu commented Jul 30, 2024

@hiroshihorie

As RPSystemBroadcastPickerView doesn't seem accepting delegate, we cannot use RPBroadcastActivityControllerDelegate. What would be the best solution for this? I'm happy to take this but would need some guidance.

@jestha166
Copy link

@hiroshihorie , been facing the same issue. isScreenShareEnabled() is returned true even if we click on start broadcast of the screenshare prompt. Tried all workarounds but none seem to work.

@jestha166
Copy link

@mokuzuu , were you able to fix this issue using Darwin notification center?. Because if I make the useBroadcastExtension to be false, it shows me a prompt asking Do you want to record the screen when I set the room.localParticipant.setScreenShare(enabled: isEnabled). Please guide me to fix this issue.

@mokuzuu
Copy link
Author

mokuzuu commented Sep 2, 2024

@jestha166 Unfortunately I couldn't workaround this one as it doesn't emit darwin notification when dismissing picker.

I think this needs library change. Especially when calling setScreenShare, it shouldn't create local video track.

@hiroshihorie
Copy link
Member

Hi, i'm looking into re-designing the internals. This is on my list since it looks like it's frequently requested.

@bcherry bcherry assigned bcherry and unassigned hiroshihorie Dec 3, 2024
@bcherry bcherry removed their assignment Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants