When custom browser dock is in focuse, "Alt+Space" combination freezes BroadcastChannel communication on it #413

Open
opened 2023-05-29 16:02:08 -05:00 by kravchenkoandrey · 5 comments
kravchenkoandrey commented 2023-05-29 16:02:08 -05:00 (Migrated from github.com)

Operating System Info

Windows 10

Other OS

No response

OBS Studio Version

29.0.2

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/dZfbyqtAbyc0JJki

OBS Studio Crash Log URL

No response

Expected Behavior

I have a custom browser dock that communicates with some browser sources using JS BroadcastChannel object.
I expect communication to continue all time, regardless of whether any program menus are open.

Current Behavior

When dock is in focuse, "alt+space" key combination will open a dropdown menu (what's expected) and also make the dock to stop receiving and sending messages through BroadcastChannel object.

Steps to Reproduce

  1. Add a timer browser source to any scene (https://kravchenkoandrey.github.io/obs_tournament_web_overlay/timer)

  2. Add a custom browser dock with a dashboard (https://kravchenkoandrey.github.io/obs_tournament_web_overlay/tournamentDashboard)

  3. Set any time to the top text input (1) and click "play/pause" button
    image

  4. Timer in the browser source will start updating every second, until you click to any place on the dock and press "alt+space" combination

Anything else we should know?

The issue does not reproduce in the chrome browser. Therefore I think that this is OBS problem.

### Operating System Info Windows 10 ### Other OS _No response_ ### OBS Studio Version 29.0.2 ### OBS Studio Version (Other) _No response_ ### OBS Studio Log URL https://obsproject.com/logs/dZfbyqtAbyc0JJki ### OBS Studio Crash Log URL _No response_ ### Expected Behavior I have a custom browser dock that communicates with some browser sources using JS BroadcastChannel object. I expect communication to continue all time, regardless of whether any program menus are open. ### Current Behavior When dock is in focuse, "alt+space" key combination will open a dropdown menu (what's expected) and also make the dock to stop receiving and sending messages through BroadcastChannel object. ### Steps to Reproduce 1. Add a timer browser source to any scene (https://kravchenkoandrey.github.io/obs_tournament_web_overlay/timer) 2. Add a custom browser dock with a dashboard (https://kravchenkoandrey.github.io/obs_tournament_web_overlay/tournamentDashboard) 3. Set any time to the top text input (1) and click "play/pause" button ![image](https://github.com/obsproject/obs-studio/assets/13902711/a4f69e79-7693-4d06-9da1-a1158358051c) 4. Timer in the browser source will start updating every second, until you click to any place on the dock and press "alt+space" combination ### Anything else we should know? The issue does not reproduce in the chrome browser. Therefore I think that this is OBS problem.
Warchamp7 commented 2023-05-29 17:13:02 -05:00 (Migrated from github.com)

Noting here on Windows that Space is not even required for this issue. Simply hitting Alt after clicking Play/Pause causes this freeze. Updates resume as soon as another input is made. This can include clicking the dock, another part of OBS, swapping focus to an entirely different app, or even hitting Alt a second time.

Also interestingly of note, ALL OBS windows stop reacting to hover state changes during this freeze, including Windows title decorations. I suspect something in the Qt event or input processing.

Noting here on Windows that `Space` is not even required for this issue. Simply hitting Alt after clicking Play/Pause causes this freeze. Updates resume as soon as another input is made. This can include clicking the dock, another part of OBS, swapping focus to an entirely different app, or even hitting Alt a second time. Also interestingly of note, ALL OBS windows stop reacting to hover state changes during this freeze, including Windows title decorations. I suspect something in the Qt event or input processing.
lindenkron commented 2024-06-26 02:01:28 -05:00 (Migrated from github.com)

This is still occurring as of 30.2.0 beta4.

  1. Add custom browser dock (google.com)
  2. Add browser source (twitch.tv, something that plays/moves)
  3. Click inside of your custom browser dock
  4. Press 'Alt'.

The Twitch.tv browser source rendering will now freeze. Audio still plays.

This is still occurring as of 30.2.0 beta4. 1. Add custom browser dock (google.com) 2. Add browser source (twitch.tv, something that plays/moves) 3. Click inside of your custom browser dock 4. Press 'Alt'. The Twitch.tv browser source rendering will now freeze. Audio still plays.
RytoEX commented 2024-06-26 11:22:19 -05:00 (Migrated from github.com)

This is still occurring as of 30.2.0 beta4.

1. Add custom browser dock (google.com)

2. Add browser source (twitch.tv, something that plays/moves)

3. Click inside of your custom browser dock

4. Press 'Alt'.

The Twitch.tv browser source rendering will now freeze. Audio still plays.

Do you need to press (and release) Alt or press (and hold) Alt? Does this also happen in cefclient?

> This is still occurring as of 30.2.0 beta4. > > 1. Add custom browser dock (google.com) > > 2. Add browser source (twitch.tv, something that plays/moves) > > 3. Click inside of your custom browser dock > > 4. Press 'Alt'. > > > The Twitch.tv browser source rendering will now freeze. Audio still plays. Do you need to press (and release) `Alt` or press (and hold) `Alt`? Does this also happen in cefclient?
lindenkron commented 2024-06-27 01:00:51 -05:00 (Migrated from github.com)

This is still occurring as of 30.2.0 beta4.

1. Add custom browser dock (google.com)

2. Add browser source (twitch.tv, something that plays/moves)

3. Click inside of your custom browser dock

4. Press 'Alt'.

The Twitch.tv browser source rendering will now freeze. Audio still plays.

Do you need to press (and release) Alt or press (and hold) Alt? Does this also happen in cefclient?

Unsure what you mean by "does it happen in cefclient?".

It's a single alt press. Then it freezes. Next alt press, it unfreezes.

I've tested latest v29, v28 v27 - and the latest v30.2 beta and latest v30.1

All same behaviour.

> > This is still occurring as of 30.2.0 beta4. > > ``` > > 1. Add custom browser dock (google.com) > > > > 2. Add browser source (twitch.tv, something that plays/moves) > > > > 3. Click inside of your custom browser dock > > > > 4. Press 'Alt'. > > ``` > > > > > > > > > > > > > > > > > > > > > > > > The Twitch.tv browser source rendering will now freeze. Audio still plays. > > Do you need to press (and release) `Alt` or press (and hold) `Alt`? Does this also happen in cefclient? Unsure what you mean by "does it happen in cefclient?". It's a single alt press. Then it freezes. Next alt press, it unfreezes. I've tested latest v29, v28 v27 - and the latest v30.2 beta and latest v30.1 All same behaviour.
RytoEX commented 2024-06-27 11:19:01 -05:00 (Migrated from github.com)

Unsure what you mean by "does it happen in cefclient?".

cefclient is the CEF client implementation example. I'm asking if it also experiences the same issue as a point of verifying if this occurs in CEF itself or if it's due to something in our implementation.

> Unsure what you mean by "does it happen in cefclient?". cefclient is the CEF client implementation example. I'm asking if it also experiences the same issue as a point of verifying if this occurs in CEF itself or if it's due to something in our implementation.
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
gh-obsproject/obs-browser#413
No description provided.