Commit Graph

3564 Commits

Author SHA1 Message Date
Avram Tudor 42703fed47
ref(face-landmarks) refactor namings (#11307)
* ref(face-landmarks) refactor namings

* code review
2022-04-06 12:10:31 +03:00
Дамян Минков a99532b0d8
fix: leaking listeners while waiting on auth dialog (#11288)
* fix: Drop duplicate call of wait for owner.

* fix: Fixes leaking listeners while waiting for host to join.

While waiting for the host to join on the dialog we attempt to join over and over again till we are admitted to enter the meeting. While doing that authRequired flag is on, and we were adding listeners on and on.

* feat: Introduces conference join in progress action.

This event is coming from lib-jitsi-meet and is fired when we receive the first presence of series when joining. It is always fired before joined event.

* fix: Moves testing middleware to use CONFERENCE_JOIN_IN_PROGRESS.

* fix: Moves follow-me middleware to use CONFERENCE_JOIN_IN_PROGRESS.

* fix: Moves some polls logic to middleware and use CONFERENCE_JOIN_IN_PROGRESS.

* fix: Moves reactions middleware to use CONFERENCE_JOIN_IN_PROGRESS.

* fix: Moves recordings middleware to use CONFERENCE_JOIN_IN_PROGRESS.

* fix: Moves shared-video middleware to use CONFERENCE_JOIN_IN_PROGRESS.

* fix: Moves videosipgw middleware to use CONFERENCE_JOIN_IN_PROGRESS.

* squash: Fix comments.

* fix: Fixes join in progress on web.

* fix: Moves variable extraction inside handlers.

* fix: Moves variable extraction inside handlers again.

* fix: Moves etherpad middleware to use CONFERENCE_JOIN_IN_PROGRESS.
2022-04-05 21:13:39 -05:00
William Liang eb716af29b fix(multi-stream) support screenshare tile in stage filmstrip 2022-04-05 17:09:08 -04:00
Robert Pintilii d7c8164b74
fix(follow-me) Make follow me work with stage filmstrip (#11306)
On follow me enabled all participants will see the participants pinned by the moderator
Fix pinned indicator to work when stage filmstrip is disabled
Fix add participant on dominant speaker change: if the participant was already pinned keep it as pinned
Don’t add local participant on stage (on automatic selection)
2022-04-05 16:00:32 +03:00
Robert Pintilii ed9b85f287
ref(overflow-menu) Use ContextMenu component (#11282)
refactor overflow menu to use ContextMenu component
refactor toolboxItem to use ContextMenuItem when needed
2022-04-05 15:19:03 +03:00
Jaya Allamsetty 0713240c3d feat(multi-stream) Whitelist config flags for multi-stream. 2022-04-04 14:58:50 -04:00
William Liang 70090fd716
feat(multi-stream) Add fake participant tile for screen share.
prioritize participants with screen shares
support local screen share track
auto pin screen share
support screen share for large video
ensure fake screen share participants are sorted
fix local screen share in vertical filmstrip
fix local screen share in tile mode
use FakeScreenShareParticipant component for screen share thumbnails
ensure changes are behind feature flag and update jsdocs
fix bug where local screen share was not rendering
update receiver constraints to include SS source names
remove fake ss participant creation on track update
fix: handle screenshare muted change and track removal
refactor: update key values for sortedFakeScreenShareParticipants
address PR comments
refactor getter for screenshare tracks
rename state to sortedRemoteFakeScreenShareParticipants
2022-04-04 14:57:58 -04:00
Avram Tudor 2c165d4313
feat(face-landmarks) merge face expressions and face centering (#11283)
* feat(face-landmarks) merge face expressions and face centering

* code review

* code review

* code review
2022-04-04 16:09:14 +03:00
Robert Pintilii 4b84f71021
fix(filmstrip) Fix resizing on chat toggle (#11305)
Fix pinned indicator to be displayed only for pinned participants
2022-04-04 15:39:32 +03:00
Calin Chitu d415d02f35 feat(participants-pane/native) adjusted styles for participants container 2022-04-04 14:10:12 +03:00
Robert Pintilii c2399deb55
ref(AOT) Change buttons to not use abstract classes (#11302)
This reduces the bundle size by about 100KB
It also decouples the AOT buttons from the classes that are used to implement other features
2022-04-04 13:38:49 +03:00
Avram Tudor 3443d256f2
fix(highlights) allow highlighting moments if recording is running (#11301) 2022-04-04 12:08:11 +03:00
Calin Chitu 03286eb07e feat(polls/web) fixed issue with duplicating value to next input on keypress 2022-04-01 17:07:18 +03:00
George Politis 84ac6298eb
Pushes e2e pings to rtcstats (#11270)
* Pushes e2e pings to rtcstats

* linter fixes

* linter fixes

* Re-use existing event instead of introducing a new one.

* Don't update the connection info popup stats when the e2e rtt changes.

* Bumps ljm version to the latest

* e2e pings should work on mobile

* tweak the e2eRttChanged action properties

* fixes comments
2022-04-01 13:50:52 +01:00
Gabriel Borlea 1e58a7cbec
Fixes for highlights mobile (#11209) 2022-04-01 12:58:03 +02:00
Jaya Allamsetty 6e0f53293e fix(large-video) Show the pinned participant on large-video when stage filmstrip is disabled.
Fixes an issue where a non-screenshare participant cannot be pinned on stage with filmstrip on stage feature disabled.
2022-03-31 16:10:59 -04:00
Mihaela Dumitru e062c394e8
fix(salesforce) use salesforce only in the main room (#11245) 2022-03-31 16:11:44 +03:00
Robert Pintilii ec0e824a43
feat(rn, thumbnail) Updated indicators on native (#11280)
Remove tint for participant in large view
Change pinned indicator from border to icon
On stage view move screen sharing indicator from top to bottom
On stage view show pinned indicator instead of moderator indicator
2022-03-31 14:39:49 +03:00
Robert Pintilii 343a1b87e2
fix(thumbnails) Fix recalculate tile dimensions on client resize (#11267)
Recalculate after new dimensions are in the store
Fixes issue where on participant pane toggle the tiles would not recalculate correctly
2022-03-31 12:13:33 +03:00
Robert Pintilii 00092d5139
fix(notifications) Change moderation notifications to medium (#11262) 2022-03-30 17:24:50 +03:00
Robert Pintilii 1355876f83
feat(gif, rn) Added GIPHY integration on native (#11236)
Update Android build to support gif
Use GIF format instead of animated webp
Show GIFs in chat messages
Display GIF over tile
Add Giphy button in reactions menu
Added Giphy dialog
Fix isGifMessage to also allow upper case
2022-03-30 16:54:03 +03:00
Robert Pintilii 1a3432d580
fix(gif) Keep showing GIF on hover (#11266) 2022-03-30 16:08:19 +03:00
Robert Pintilii 270070716b
fix(context-menu) Don't overwrite hidden prop (#11265)
Fixes issue where the menu would disappear on dominant speaker change
2022-03-30 14:50:41 +03:00
Horatiu Muresan 00d68f08ab
fix(background-alpha) Fix setting background opacity 2022-03-29 17:27:32 +03:00
Saúl Ibarra Corretgé 23c7ac4da4 fix(video-layout) fix incorrect import of isStageFilmstripEnabled 2022-03-29 15:20:08 +02:00
Saúl Ibarra Corretgé f503bd7352 fix(rn,lobby) fix lobby not showing up on subsequent tries
We need to make sure to hide it explicitly so the Redux state is in sync
with reality.
2022-03-29 15:12:09 +02:00
robertpin ab91f79448 fix(settings-dialog) Add back CSS classes used by tests 2022-03-29 14:33:41 +02:00
Saúl Ibarra Corretgé 26b3eb34f0 fix(android,back-button) rework back button handling on Android
We used to have a registry which registered a single handlerwith RN.
THis was registered really early in the app.

When React Navigation was introduced we ddidn't realize it interacts
with the back button. In a stack nagigator it will navigate to the
previous screen. This meant our back button handling was broken.

This commit removes our previous registry and uses the RN back button
handler directly in the 2 components that use it: the conference and
bottom sheets.

Since these handlers are registered after navigation, our handlers are
going to run first so we cna implement the behavior we need, namely to
dismiss an open botom sheet or set the conference in PiP mode.
2022-03-29 14:33:25 +02:00
Calin Chitu ef125968ce feat(participants/native) - fix joining breakout room 2022-03-29 14:57:23 +03:00
Robert Pintilii 45e8140209
fix(rn) Fix native after stage filmstrip merge (#11247) 2022-03-29 13:42:01 +03:00
Shahab d2f70b0006
refactor(connection-stats): use jss instead of sass in ConnectionStatsTable (#11156) 2022-03-29 12:23:40 +03:00
Shahab 70efa31c16
refactor(virtual-background): use jss instead of sass (#11152) 2022-03-29 12:07:55 +03:00
Shahab 3eafaeeedd
refactor: move chat component outside of videoconference_page (#11138) 2022-03-29 12:01:48 +03:00
Shahab 9278414821
refactor(dialog): use jss instead of sass for mute-dialog style (#11154) 2022-03-29 11:59:53 +03:00
Shahab 17faefd757
refactor(settings): use jss instead of css (#11149) 2022-03-29 11:50:32 +03:00
Robert Pintilii c4db12cbd6
feat(stage) Add stage filmstrip (multiple participants on stage) (#11145)
See multiple participants on stage
Pin and unpin to stage
Automatic selection of participants to be displayed on the stage filmstrip based on dominant speaker changes
Make Filmstrip a reusable component. Used by MainFilmstrip (old functionality) and the new StageFilmstrip
Rename DominantSpeakerName to StageParticipantNameLabel
Active border now showed only for the dominant speaker (no longer for the pinned participant)
Hide video from the vertical filmstrip for the participants on stage
Update video constraints
Updated pinned indicator
2022-03-29 11:45:09 +03:00
Saúl Ibarra Corretgé 66153087e1 fix(redux) fix not working with Redux Devtools 2022-03-28 16:31:12 +02:00
Avram Tudor 7e5ffdb390
fix(face-centering) fix face centering on browsers with no offscreencanvas support (#11234) 2022-03-28 14:13:00 +03:00
Saúl Ibarra Corretgé dc96324d3b fix(rn,recording) fix recording dialog state not updating 2022-03-25 17:22:32 +01:00
Avram Tudor c731e2f8cb
fix(highlight) set highlight button visibility based on record button… (#11215)
* fix(highlight) set highlight button visibility based on record button props

* code review

* code review

* code review

* code review
2022-03-25 13:44:05 +02:00
Avram Tudor b1e3f2b50d
fix(highlight) implement custom notification for highlight start recording (#11217) 2022-03-25 13:43:51 +02:00
Gabriel Borlea 7751060b63
fix(facial-expressions): base url for models (#11218) 2022-03-25 13:43:32 +02:00
Calin Chitu 8d737adc65 feat(participants/native) - updated container styles 2022-03-25 11:46:04 +02:00
Calinteodor 3fcfb64338
fix(rn,recording) fix start button not being enabled 2022-03-25 10:31:37 +01:00
Saúl Ibarra Corretgé e5e7aa87d3 fix(overlay) fix not showing the correct gUM helper text 2022-03-24 13:19:43 +01:00
Tudor D. Pop 18fa56ff1b
fix(lobby) display the entire message in the reject notification 2022-03-24 12:15:30 +01:00
Calin Chitu ccf7939316 fix(mobile/navigation) - fixed bottom color glitch 2022-03-23 16:37:24 +02:00
Robert Pintilii cfb480932a
fix(chat) Fix iOS web chat (#11193)
Fixes: on iOS web the chat input would move from the bottom when the keyboard was open
2022-03-22 14:56:18 +02:00
Saúl Ibarra Corretgé 21083e6777 fix(mobile,navigation) remove end meeting page
It will just flash for a split second and all it does is dispatch
readyToClose, so do it directly instead.
2022-03-22 12:10:38 +01:00
Calin Chitu a3c60d5943 fix(mobile/navigation/sdk) - simplified check for sdk 2022-03-22 12:10:38 +01:00
Robert Pintilii 28556e030c
fix(settings-dialog) Fix crash (#11191)
Fixes crash when the participant becomes moderator while the dialog is open
2022-03-22 13:10:08 +02:00
Hristo Terezov 9ffb3eddb0 fix(shared-video): Can't click controls issue
The Dominant speaker name badge was overlaping the shared video
controls  (audio level, play/pause, etc).
2022-03-21 16:00:24 -05:00
zygisS22 530369613a fix: removed platformColor from styles 2022-03-21 16:03:59 +02:00
Avram Tudor 6b0b575bd4
fix(highlight) fix notifications not disappearing (#11183) 2022-03-21 15:14:26 +02:00
Gabriel Borlea 85c505a29d
add(highlights): mobile flow (#11168)
* add(highlight): mobile initial flow

* fix(hightlight): get meeting fqn on mobile

* fix(dynamic-branding): extract fqn on mobile

* fix(highlights): remove local fqn extraction and grounp dispatches in batch

* fix(dynamic-branding): check if state is defined in extract fqn
2022-03-18 16:16:56 +02:00
Avram Tudor b8e12e581f
fix(recording) fix incorrect condition for recording notification message (#11167) 2022-03-18 13:21:10 +02:00
Avram Tudor 8456a63a23
fix(highlight) display option to start recording (#11146)
Fix incorrect handling of error case when highlighting moments
Allow users to start recording when trying to highlight while recording not started
2022-03-18 10:19:20 +02:00
Calinteodor 5da40a5fb0
fix(mobile/navigations) added LoadConfigOverlay to RootNavigator (#11067)
Converted LoadConfigOverlay to a JitsiScreen component that right now is part of navigation as ConnectingPage, plus I
separated appNative and other actions into web and native.
2022-03-17 16:13:58 +02:00
Christoph Settgast 9ad57127d4
feat: Use same recommendedBrowsers page for IE and browsers marked in interface_config.js (#10923)
Reason:
- This is easier overridable than then embedded react page
- Consistenty between IE and other unsupported browsers
2022-03-17 14:56:43 +02:00
Robert Pintilii a131644dfb
fix(video-constraints) Fix calculations (#11161)
Only calculate for Large Video on the web (otherwise native breaks)
Take preferred max into calculations
2022-03-17 14:18:49 +02:00
Mihaela Dumitru 649c1b0669
fix(salesforce): send link notes and default to empty string (#11160) 2022-03-17 12:58:12 +02:00
Robert Pintilii 7bcf7bb686
fix(resziable-filmstrip) Update video constraints on filmstrip resize (#11150)
Update video quality of large video as well
2022-03-16 16:57:30 +02:00
Shahab 8e035b03b0
fix(premeeting): fix undefined breakpoint in media query (#11148) 2022-03-16 15:16:01 +02:00
Shahab 64d32a5005
fix(premeeting): call hooks before any conditional block in ConnectionStatus (#11136) 2022-03-16 10:59:24 +02:00
Hristo Terezov 16bcb1b217 feat(filmstrip): Don't reorder in small meetings. 2022-03-15 14:56:46 -05:00
Jaya Allamsetty 9f72c318d6
feat(multi-stream-support) Add screenshare as a second video track to the call.
* feat(multi-stream-support) Add screenshare as a second video track to the call.
This feature is behind a sendMultipleVideoStreams config.js flag. sourceNameSignaling flag also needs to enabled. Sending multiple tracks is currently supported only on endpoints running in unified plan mode. However, clients with source-name signaling enabled and running in plan-b can still receive multiple streams .

* squash: check if there is an existing track before adding camera/desktop

* squash: enable multi-stream only on unified plan endpoints.
2022-03-15 13:24:49 -04:00
Hristo Terezov cb9511ef2c fix(resizable-filmstrip): grid view paddings. 2022-03-15 07:48:51 -05:00
Hristo Terezov e7c4a55add feat(tile-view): Optimize grid dimnsions.
Now the algorithm that calculates the
rows/columns/thumbnail-width/thumbnail-height configuration will
go trough all possible configurations and will choose the one
that covers with thumbnails the biggest area of the window.
2022-03-15 07:48:51 -05:00
Gabriel Borlea 3884862996
add(screenshot-capture): local participants id to participants array in metadata (#11134) 2022-03-15 14:42:26 +02:00
Gabriel Borlea 4d2000a7a4
fix(screenshot-capture): send remote participant id instead of jid (#11132)
* fix(screenshot-capture): send remote participant id instead of jid

* fix: lint errors
2022-03-15 14:05:01 +02:00
Shahab f6a79860f2
refactor(prejoin) use jss instead of sass in DialInDialog (#11122) 2022-03-15 13:30:38 +02:00
Shahab 4ed2d55cae
refactor(participnats-pane) move participant-avatar to commmonStyles (#11120) 2022-03-15 13:29:42 +02:00
Shahab 2dad8163bb
refactor(premeeting): use jss instead of sass in ConnectionStatus (#11115) 2022-03-15 13:28:16 +02:00
Shahab 985b37195c
refactor(prejoin) use jss instead of sass in CallingDialog (#11117) 2022-03-15 13:16:01 +02:00
Shahab 320aeaa4df
refactor(speaker-stats) use jss instead of sass in SpeakerStats (#11121) 2022-03-15 13:02:50 +02:00
Shahab 8c9c1a29be
refactor(prejoin) use jss instead of sass in DeviceStatus (#11116) 2022-03-15 12:48:05 +02:00
Shahab c25fb702c2
refactor(avatar) use jss instead of scss (#11037) 2022-03-15 12:27:40 +02:00
Shahab a6b55b676c
chore: remove unused modal ids constants (#11036) 2022-03-15 11:28:25 +02:00
Shahab 0ce6fce58d refactor(keyboard-shortcuts) use jss instead of scss 2022-03-15 09:27:07 +01:00
Avram Tudor c5fbe14de2
fix(highlight) fix allowing disabled button to execute handler (#11128) 2022-03-14 17:18:54 +02:00
Horatiu Muresan 506f72d43e
feat(remote-participant-menu) Enhance remote participant menu:
- option to hide the context menu
- option to hide private chat button
2022-03-14 16:46:19 +02:00
Дамян Минков 3d5f838870 fix: Hides ask to unmute when participant is audio unmuted. 2022-03-14 08:00:29 -05:00
Дамян Минков e18173adc9 fix: Hides ask to unmute when av mod is disabled. Fixes #11057. 2022-03-14 08:00:29 -05:00
Robert Pintilii 096ba054db
fix(filmstrip) Fix resizable filmstrip with shared video (#11124)
Calculate shared video width with the filmstrip width
Make resizable filmstrip mouseup event work with shared video iframe
2022-03-14 13:11:22 +02:00
Avram Tudor d651ecb166
feat(recording) allow highlighting meeting recording moments (#10981) 2022-03-14 10:31:08 +02:00
Avram Tudor faac45b5bc
feat(toolbar) add flag for autohiding while chat open (#11104) 2022-03-14 10:30:31 +02:00
Robert Pintilii 190041fc5a
feat(gif) Added GIF support (GIPHY integration) (#11021)
Show GIF menu in reactions menu
Search GIFs using the GIPHY API
Show GIFs as images in chat
Show GIFs on the thumbnail of the participant that sent it
Move GIF focus using up/ down arrows and send with Enter
Added analytics
2022-03-11 15:00:49 +02:00
Avram Tudor f0f135ac7d
fix(dynamic-branding) fix permissions screen not accounting for custom backgrounds (#11097) 2022-03-10 15:31:27 +02:00
Calinteodor c60a51e671
feat(recording) mobile and web ui updates 2022-03-08 17:08:36 +01:00
Horatiu Muresan 4b95a5d6cb
fix(language) Add lang API option
- jwt from API overwrites any jwt sent as queryparam
- `defaultLanguage` from configOverwrite converts to `lang` query param
2022-03-08 16:57:53 +02:00
Calin Chitu 371f3ee199 feat(display-name) remove DisplayNameLabel web 2022-03-08 16:15:23 +02:00
Mihaela Dumitru 98256a8d5b
feat(salesforce) - link resources to the current session (#10992) 2022-03-08 11:10:30 +02:00
Hristo Terezov 74384bfa66 fix(video-layout):Screenshares not updated on time 2022-03-04 18:13:36 -06:00
Tudor-Ovidiu Avram d718d9d8fb feat(face-centering) implement centering of faces in a video
Config options:

faceCoordinatesSharing.enabled
faceCoordinatesSharig.threshold
faceCoordinatesSharing.captureInterval
2022-03-04 18:13:36 -06:00
Robert Pintilii 2863b05f37
fix(dominant-label) Fix dominant speaker stage view label (#11071)
Move label to LargeVideo so that's it's centred in the view instead of the whole screen
Move vertical filmstrip max width calculation to a function and use it to set the large video width
2022-03-04 15:10:57 +02:00
Saúl Ibarra Corretgé fca9a249dc fix(rn,dialogs,auth) fix not showing authentication dialogs
1) Fix not being able to show multiple dialogs at once in iOS
2) Fix cancelling the login dialog when XMPP auth is enabled without
   guest support
2022-03-04 13:56:56 +01:00
Doganbros 7522de033a
feat: Lobby chat (#10847)
* feat(lobby): lobby chat

lobby chat support
knocking participants list updates
knocking participants conditonal checks to show message button
handle lobby chat message events
lobby messages from or to moderators only

Co-authored-by: Fecri Kaan Ulubey <f.kaan93@gmail.com>

* squash: Drop typos.

Co-authored-by: Kusi Musah Hussein <kusimusah@gmail.com>
Co-authored-by: Fecri Kaan Ulubey <f.kaan93@gmail.com>
Co-authored-by: Дамян Минков <damencho@jitsi.org>
2022-03-03 11:29:38 -06:00
Gabriel Borlea a65ab1c029
fix(dynamic-branding): Extract fqn from public meeting 2022-03-03 10:08:08 +02:00
Дамян Минков 5d41da9358 fix: Fixes recording dialog web rendering.
[features/base/app] <APP.componentDidCatch>:  TypeError: Failed to set an indexed property on 'CSSStyleDeclaration': Indexed property setter is not supported.
2022-03-02 13:19:34 -06:00
Pawel Domas 0936a64d3f fix(receiver constraints): source name not found
...when new participant joins.

Repro steps:

1. With p2p disabled and source name signaling enabled.
2. Start a call with 2 tabs.
3. Reload the 2nd tab.
4. The receiver constraints should be updated when the 2nd
   user rejoins. They were not updated, because
   getTrackSourceNameByMediaTypeAndParticipant doesn't have
   the track yet at the time when visibleRemoteParticipants
   are updated. This is fixed by also checking on
   the remote tracks state.
2022-03-02 11:30:38 -05:00