Commit graph

70 commits

Author SHA1 Message Date
Daniel Espino García
5a610f1620
Fix post priority bottom sheet (#7350)
* Fix post priority bottom sheet

* Remove unneeded tablet handling
2023-05-16 19:13:06 +02:00
Daniel Espino García
162cdfb21d
Handle currentUser not available throught the app and refetch it (#7333)
* Handle currentUser not available throught the app and refetch it

* Address feedback
2023-05-05 15:40:59 -04:00
Christopher Poile
c90ace706c
MM-49970 - Calls: Call quality status banner (#7304)
* 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
2023-05-04 15:28:15 -04:00
Christopher Poile
f8f6839945
MM-51228 - Calls: UX redesign & theming support (#7283)
* UX redesign

* fix call bar profile on Android

* update @mattermost/calls; use common color utils

* collapseIcon and time colour fixes (not correct yet on Onyx or Quartz)

* fix time and collapseIcon colors; fix unavailable wrapper

* center users, scroll when full; statusBar bg and styling

* better spacing; better screenshare; no reaction bar when no reactions

* remove margins from bottom; speaker/react buttonOn colour is now callsBg

* update calls-common; update raised hand button colors

* i18n

* cleaning up style sheets

* fix package-lock

* fix vertical alignment of phone icon

* add a noBorder prop to UserAvatarsStack

* typography, icon sizing, spacing changes

* add rounded header; UI improvements; refactor observables

* updating phone icon, join call margins

* join call text; color theming

* remove unneeded container

* phone-outline -> phone

* split CallsChannelState into boolean components

* use sidebar bg to generate calls bg

* fix hand icon, button texts
2023-05-04 14:17:17 -04:00
Daniel Espino García
86658edc30
Refactor errors around the app (#7306)
* Refactor errors around the app

* Fix recursive function

* Fix tests
2023-05-03 13:08:55 +02:00
Christopher Poile
1ce69f20fb
use CallState and CallChannelState from @mattermost/calls (#7318) 2023-04-28 20:55:40 -04:00
Christopher Poile
c1430757b8
MM-51776 - Calls: Audio device selections, & fix bluetooth (#7286)
* 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
2023-04-27 11:44:14 -04:00
Christopher Poile
e6254885ee
MM-43737 - Calls: Follow call thread on user joining a call (#7293)
* 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.
2023-04-26 15:20:07 -04:00
Elias Nahum
784b05fe97
Upgrade Dependencies (#7299)
* upgrade reanimated

* update devDependencies

* upgrade react-intl

* update react-native and some dependencies

* update react-native-permissions

* update RN

* use Share sheet for Report a problem

* update Sentry

* remove step to downloadWebRTC

* update detox deps

* feedback review
2023-04-21 12:16:54 -04:00
Christopher Poile
77f8eedb0a
MM-51227 - Calls: Landscape mode optimizations for screensharing (#7226)
* allow landscape for ios; optimize screensharing view; fix reactions

* UX changes

* UX changes - top bar
2023-03-28 18:00:11 -03:00
Christopher Poile
5089157951
prioritize raised hands when sorting participants (#7229) 2023-03-23 09:24:36 -03:00
Christopher Poile
c0cb14e927
MM-50010 - Share common calls code between web and mobile (#7211)
* 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
2023-03-21 09:18:45 -04:00
Christopher Poile
c03758f549
clear screensharing state if current screensharer leaves call (#7213) 2023-03-20 10:02:58 -03:00
Christopher Poile
cc51fd905b
MM-51362 - Fix proximity notice engaging after call ended (#7205)
* fix proximity notice engaging after call ended

* remove fork
2023-03-20 09:56:51 -03:00
Christopher Poile
bdaba41df1
MM-51226 - Calls: Emojis not showing in reaction stream (#7198) 2023-03-10 14:07:34 -05:00
Claudio Costa
ac3bd14891
[MM-50806] Calls: fix crash on joining call (#7159)
* Calls: fix crash on joining call

* update Podfile.lock

---------

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2023-02-24 13:25:25 +02:00
Daniel Espino García
9f84ab79ce
Only call app entry on websocket reconnect (#7065)
* 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>
2023-02-23 10:11:34 +01:00
Christopher Poile
4cb20a4bec
MM-49065 - Calls: Implement glare free negotiation (#7111)
* glare-free negotiation

* update to latest with fix

* remove unneeded sessionConstraints

* update to latest react-native-webrtc
2023-02-13 11:03:49 -05:00
Christopher Poile
35c98e673a
MM-50415 - Fix addIceCandidate error due to potential race (#7104) 2023-02-09 10:36:22 -05:00
Christopher Poile
03fe46f229
MM-48605: Calls - Fix for start time in join call banner is incorrect (#7095)
* "fix" the wrong start time

* cleanup unused field
2023-02-08 09:25:41 -05:00
Claudio Costa
ab50164d34
[MM-49996] Add /call recording slash command (#7062)
* Add  slash command

* Fix alert

* Implement alert for recording errors

* Default locked
2023-02-06 21:14:22 -06:00
Elias Nahum
64a59aad55
Filter unused preferences (#7015)
* small preferences refactor

* filter unused preferences and fix removal of preferences in the db

* Feedback review
2023-01-30 21:00:19 +02:00
Christopher Poile
a44074247e
MM-46312 - Calls: Replace simple-peer with RTCPeer; use up-to-date upstream react-native-webrtc (#6898)
* move to latest react-native-webrtc release

* make this version of rtcpeer as close as possible to Call's version

* remove need for destroyCb

* upgrade webrtc

* continue merge

* upgrade webrtc

* new linting rules
2023-01-26 14:06:05 -05:00
Elias Nahum
c1fbaffd3e
Support for Android Tablets & Foldable (#7025)
* Add Support for Android tablets & foldables

* add tablet and book posture

* Regenerate disposed observable on WindowInfoTracker
2023-01-26 20:31:18 +02:00
Christopher Poile
24bb5f9b25
[MM-49927] Calls: Fix recording message (#7012) 2023-01-24 12:50:06 -05:00
Elias Nahum
7aa5bd0611
Update Dependencies and bug fixes (#7000)
* update dependencies

* update dependencies

* feedback review

* update @mattermost/react-native-turbo-mailer
2023-01-24 09:14:23 +02:00
Christopher Poile
9a89259e96
MM-48836 - Calls: handle slash commands (#6980) 2023-01-23 20:08:33 +02:00
Christopher Poile
e140a12b6c
MM-46999 - Calls: Start call in speaker mode (#6979) 2023-01-23 09:39:09 -05:00
Christopher Poile
6c9c025d25
MM-49746 - Calls: Show call thread title in root calls post (#6992)
* add thread title to calls custom posts

* PR comments
2023-01-23 09:38:07 -05:00
Daniel Espino García
b191154db9
Clean todos (#6897)
* Clean todos

* Remove DatabaseHelper folder
2023-01-12 14:25:39 +01:00
Elias Nahum
dbe565319d
BottomSheet migration to react-native-bottom-sheet (#6907)
* BottomSheet migration to react-native-bottom-sheet

* Use correct scroll view for announcement bottom sheet

* ux review

* Fix post options bottom sheet snap point

* feedback review
2023-01-05 09:51:51 +02:00
Furqan Malik
d063ecf8c7
Merge pull request #6873 from mattermost/detox-maintenance-12152022
Detox/E2E Maintenance: Fix broken iOS e2e tests
2022-12-22 15:06:31 -05:00
Yusuke Nemoto
4e7e37499d
Fix message id (#6875)
* Fix message id

Id `mobile.calls_call_thread` is conflicted with other message. This id should be `mobile.calls_open_channel`.

* Update en.json
2022-12-16 13:09:47 -05:00
Joseph Baylon
56d2d57291 Detox/E2E Maintenance: Fix broken iOS e2e tests 2022-12-15 14:47:33 -08:00
Daniel Espino García
28526034d4
Refactor makeStylesFromTheme to use the correct types (#6801)
* Refactor makeStylesFromTheme to use the correct types

* Address feedback
2022-12-12 10:53:54 +01:00
Christopher Poile
fdd7fd5ae6
MM-48664 - Calls: Fix profiles cut off (#6851) 2022-12-08 18:58:29 -05:00
Christopher Poile
d34ff1c991
MM-48949 - Calls: Displayname not showing correctly in call screen (#6850) 2022-12-08 13:42:39 -05:00
Christopher Poile
ae56415c4b
MM-48915 - Calls: Add mobilev2 param to two requests (#6845) 2022-12-07 14:31:22 -05:00
Elias Nahum
d676568c61
Refactor NavigationStore (#6842) 2022-12-07 16:44:21 +02:00
Christopher Poile
73d91301e4
MM-48753 - Calls: New GA cloud limits (#6819)
* new GA cloud limits

* Update assets/base/i18n/en.json

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2022-12-02 16:14:14 -05:00
Christopher Poile
eae0a15b16
MM-48753 - Calls: GA requirements (#6814)
* calls GA requirements

* clarifying comments; simplify ephemeral message (move it to the server)
2022-12-02 11:34:37 -05:00
Christopher Poile
0f8798ca55
MM-48611 - Calls: Calls recording host controls and UI (#6787)
* 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
2022-11-30 11:20:00 -05:00
Christopher Poile
6660c134f5
MM-48072 - Calls: Implement recording permissions and UI for participants (#6784)
* implement recording permissions and UI

* fix bug when refusing recording while in call thread from call screen

* merge conflicts
2022-11-30 10:15:20 -05:00
Christopher Poile
89b94d0188
MM-48287 - Calls: Select and send emoji reactions (#6781)
* add emoji reactions in mobile

* use StyleSheet.create

* PR comment

* prefer no inline functions

* Revert "prefer no inline functions"

This reverts commit b3c4627daca631e50bccf41b4a9e538f902c82ee.
2022-11-25 12:17:06 -05:00
Christopher Poile
a300cc651e
MM-48286 - Calls: Emoji reactions, display incoming reactions (#6780) 2022-11-25 12:21:45 +01:00
Daniel Espino García
5fae120826
Add support for review app (#6772)
* Add app review

* Use overlay instead of modal

* Add fixes for ios

* i18n-extract

* Add to milliseconds function

* Address review feedback

* Add try to queryGlobalValue

* added app review illustration

* add feedback illustration

* Add animations and feedback bot message

* Restrict reviews to build environment variable

* Fix bug with "dont ask anymore"

* Add check for only supported servers

* Add missing change

* Use for await

Co-authored-by: Daniel Espino <danielespino@MacBook-Pro-de-Daniel.local>
Co-authored-by: Matthew Birtch <mattbirtch@gmail.com>
2022-11-24 18:52:15 +01:00
Christopher Poile
ac75a07d4b
MM-48447 - Calls: guard against possible bad response from server (null) (#6769)
* guard against possible bad response from server (null)

* lock it down with a test
2022-11-15 21:44:32 +02:00
Daniel Espino García
1aa4188f8e
Move config to its own database table (#6744)
* Move config to its own database table

* Address feedback

* Fix test

* Revert minimum version related changes
2022-11-11 21:20:42 +04:00
Christopher Poile
7038a17ef4
MM-48000: Call started in another client creates a CurrentCall on mobile client (#6708)
* 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
2022-11-08 14:45:10 -05:00
Christopher Poile
8374d7e87f
MM-47004 - Calls: Client-side errors for microphone permissions (#6669)
* 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
2022-11-08 10:52:52 -05:00