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

Startup Actions #18

Open
GeorgesStavracas opened this issue Jun 18, 2023 · 1 comment
Open

Startup Actions #18

GeorgesStavracas opened this issue Jun 18, 2023 · 1 comment

Comments

@GeorgesStavracas
Copy link
Member

GeorgesStavracas commented Jun 18, 2023

Sometimes we might need to query users for action on startup. Some cases and reasons:

  • A file was deleted or moved, and we need to ask for it again
  • After a Windows update, sound device ids can change. The devices need to be reselected
  • GPU scheduling might have been enabled, which will impact OBS Studio performance

I'm sure there are more cases like these. We need to immediately ask users how they want to react, because not doing so means they'll be surprised when their stream doesn't work as expected.

@WizardCM
Copy link
Member

Initial notes. I'll write a longer comment later too.

We want to be direct to the user (get their attention) but not overwhelm them with dialogs.

Depending on the user's setup, at this time they could run into the following dialogs all in one second:

  1. Service integration stopped working; this can happen if they haven't launched OBS in a couple of months, resulting in the session tokens expiring
  2. An OBS update is available
  3. Missing Files (as you mentioned)
  4. First-time-run Auto-Config wizard (this can re-appear if Qt's DockState data gets corrupted)
  5. "What's New" dialog for a known issue or an upcoming/current update
  6. macOS only: a previously enabled permission (eg screen capture) was lost and the OS re-requests permission from the user

Ideally we don't show 6 dialogs together or in a row. Most users just want to get back to recording/streaming with as little noise from the app as possible. Currently, all of the above dialogs are not tied to any kind of central queue or priority list, and can therefore bombard the user unintentionally.

A similar issue can occur when a user tries to start a stream:

  1. User previously requested a confirmation dialog when starting streams. Start stream?
  2. You have no sources, continue?
  3. YouTube Stream Manager (pick which video ID to stream to, set stream title, etc)
  4. Invalid stream key/Encode couldn't start

These 4 dialogs would occur one after the other as we hit each error. As there's no queue/priority system, this introduces challenges.

Generally, multiple dialogs one-after-another are a UX no-no, and we should avoid it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Backlog
Development

No branches or pull requests

2 participants