* use mean opinion score detection; add call quality alert bar; tests
* rename MessageBar's file to message_bar
* i18n
* use mosThreshold from calls-common; upgrade calls-common
* use callsBg for text and icon
* ask for bluetooth permissions on Android
* new "switch audio device button" for Android
* i18n strings
* split audio_device_button into platform-specific files; PR comments
* earpiece -> phone
* add comments to clarify speakerphone logic
* update snapshots
* add new compass-icons; use tablet and bluetooth icons; add tablet mode
* fix lint
* follow threads on call join
* treat custom_calls posts as the start of threads
* make thread follow logic robust to race conditions; tests
* only follow thread when CRT is enabled
* Revert "only follow thread when CRT is enabled"
This reverts commit 4e52a2619b35db3d2104f0b6ba5ad8be23f7b224.
* use calls/common rtcpeer; @calls -> @mmcalls
* gitpkg -> standalone github calls-common package
* use new mattermost/calls-common repo; add types to WebSocketMessages
* mmcalls/common -> mattermost/calls; use a version tag
* implement recording permissions and UI
* fix bug when refusing recording while in call thread from call screen
* host controls and UI for recording
* button tweak, and fixing a i18n string issue
* PR comment
* backwards compat & don't show rec controls if not enabled
* move creating/leaving currentCall into the connection; refactoring
* refactoring; two-stage connecting so existing screen stream can be saved
* better separation of concerns
* change warning to debug
* use getServerDatabase instead of getActiveServerDatabase
* fix bugs
* PR comments
* call error bar for microphone permissions; global permissions state
* i18n
* refactor permissionErrorBar component, PR comments
* add module dependency's mocks for tests
* fix error bar height
* change permissions error text
* working on 46999 redo audio handling -- will revert
* Revert "working on 46999 redo audio handling -- will revert"
This reverts commit 87bafc452c6ad6e1d7ae79ce78a0f2b461c2f150.
* only get voice track when we have mic permissions
* Android: enable mic when permissions are granted