bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/audio/audio-controls
prlanzarin 89e814d570 fix(audio): centralize device change code, add rollbacks, surface errors
There's no rollback procedure in case a device switch fails right now,
nor does the code entrypoints that call the switching procedures wait
for resolution or failure before marking the new device as chosen. That
may cause inconsistent states in a couple of ways:
  - No rollback: switch fails, audio is still on but no actual
    microphone input is being transmitted
  - Not waiting for resolutions: inconsistent chosen devices on failures
Device switching errors are also not surfaced to the end user

This commit:
  - Adds device rollback and proper resolution/failure response
    awaits to try and make the state a bit more consistent.
  - Centralizes the input device switching code to be reused between
    different bridges
  - Centralizes device ID state management in audio-manager to try and
    mantain them a bit more consistent across the board
  - Surface device switching failures to the end user
  - Guarantee device IDs are set to the session storage on all
    appropriate scenarios
2022-08-24 13:28:27 +00:00
..
input-stream-live-selector fix(audio): centralize device change code, add rollbacks, surface errors 2022-08-24 13:28:27 +00:00
component.jsx improve ghost buttons border 2022-06-16 16:59:01 -03:00
container.jsx [2.5] fix: popover menus in RTL mode 2022-05-13 10:42:19 -03:00
styles.js improve ghost buttons border 2022-06-16 16:59:01 -03:00