* make joinCall async; adding loading spinner to join/start button
* always close channelInfo
* i18n
* change how we compute active text
* use isPreferred for leave & join call button
* add joiningChannelId to calls state to track when joining a call
* host remove command, host removed feedback
* add view profile control
* i18n; dismissBottomSheet later
* PR comments
* remove confusing setPreviousCall(null)
* our own separator, bit more space for Android
* no need for previousCall due to changes on server
* move host removed alert to an error
* channel_id is not send via the msg.broadcast
* channel_id is still sent via the msg.broadcast
* add host controls screen; add control for make host
* licensing & host logic
* refactor participant card; dynamic profile sizing; PR comments
* render participant name and profile changes in ParticipantsList
* package-lock update after rebase onto main
* use config's HostControlsAllowed
* Add participants bottom sheet to call screen
* i18n
* fix ruby-version
* use tag instead of host_badge
* extract Participant, use FlatList
* fix for android
* android participants list close button
* mobile support for live captions
* add the 'Live captions turned on' ephemeral notice
* PR comments
* message should be translatable
* run i18n-extract
* call_recording_state -> call_job_state; ccAvailable is now dynamic
* backwards compatibility with pre calls v0.26.0
* correct mobile version in deprecation comments
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* captions on videos from posts and searches
* add the patch for react-native-video which fixes subtitle downloading
* improve spacing
* fix patch file
* upgrade compass-icons; use cc icon
* revert patch overwrite
* fix patch
* use useMemo
* fix hitslops on pressables
* use new Caption format; refactor for clarity
* simplify tracks creation and use
* when active, do not show overlay if this is a calls-started notification
* add calls notification type; keep message test for backwards compat
* process calls notifications properly
* revert NOTIFICATION_TYPE.CALLS; use sub_type for backwards compatibility
* add ticket and comment for future refactoring of isCallsStartedMessage
* refactor; tried to clarify more_messages; new design
* adjust more_messages text spacing
* small fix for height with incoming call on current channel
* move calls-specific code in the calls product behind a hook
* show servername for notifications from other servers
* if >1 active servers, always show server name, otherwise don't
* add height of notification bar in measurements
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* refactor; tried to clarify more_messages; new design
* adjust more_messages text spacing
* small fix for height with incoming call on current channel
* move calls-specific code in the calls product behind a hook
* join call banner
* same style of voice-on indicator; avatar & emoji sizing spacing polish
* refactor all calls bars; new calls bars UI designs
* i18n changes
* fix for warning bar's close icon color
* refactor banners to normalize UI; new 'noone is talking' design
* fix for avatar in current call bar
* change design for incoming call on calls screen
* remove commented out code
* Add foreground service for Android; add voip UIBackgroundMode for iOS
* remove iOS change for this PR
* create foreground notification channel once at startup
* 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
* Only call app entry on websocket reconnect
* Handle notification on its own entry and run app entry on websocket initialization
* Fix notification entry issues
* Fix login entry and add retry on entry failure
* feedback review
* Put back handleEntryAfterLoadNavigation before the batching
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>