Commit Graph

1035 Commits

Author SHA1 Message Date
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
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
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
Aditya Gupta 0b93569df2
Increase the visibility of 404 error message (#11108)
Changed the font-size and color of the h2 element of the 404 error page so that it can look more vibrant and stand out.
2022-03-25 13:45:40 +02:00
Shahab e54685a566
refactor(premeeting): remove redundant styles from prejoin.scss (#11151)
"prejoin-preview-dropdown-btn" and "prejoin-preview-dropdown-icon" styles are already declared using jss in DropdownButton component.
2022-03-22 09:29:31 +02:00
Saúl Ibarra Corretgé 3ae50c1701 fix(css) remove no longer used AUI classes 2022-03-17 17:28:36 +01: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
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 0ce6fce58d refactor(keyboard-shortcuts) use jss instead of scss 2022-03-15 09:27:07 +01: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
Horatiu Muresan 26f21e5eb9 fix(prejoin) Fix layout on reduced height 2022-03-11 11:24:05 +02:00
Calinteodor c60a51e671
feat(recording) mobile and web ui updates 2022-03-08 17:08:36 +01: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
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
humanamburu 7a4a234f8e fix(premeeting): Improve pre-meeting responsiveness for screens less than 1000px
Use 720 (HD) width as breakpoint to change screen layout
Reduce join panel size to be able to see video camera pic
2022-03-03 16:35:23 +01:00
hmuresan c69fdd766c fix(video-devices) Fix video devices not scrollable 2022-03-01 13:22:39 +02:00
Robert Pintilii 2dda749b1f
feat(filmstrip) Make filmstrip user resizable (#10884)
Make conference info and toolbar appear on top of the filmstrip
After a breakpoint, filmstrip pushes over the stage view instead of appearing on top
On user resize make tiles wider; after a breakpoint show grid view in the filmstrip
On filmstrip visibility toggle animate stage view resize
Added config for filmstrip with disableResizableFilmstrip
2022-02-24 14:20:37 +02:00
Gabriel Borlea eb70c611c2 feat(speaker-stats) new design for web and mobile 2022-02-01 15:57:30 +01:00
Hristo Terezov b5551880f7 feat(shared-video): show invalid URL error. 2022-01-24 17:23:58 -06:00
Saúl Ibarra Corretgé a96fc2fc17 chore(cleanup) delete dead code 2022-01-21 16:21:06 +01:00
Tudor D. Pop 28f5ddc81d
feat(lobby,notifications) refactor lobby notifications 2022-01-20 15:26:03 +01:00
tudordan7 5de6ef4a1b fix(virtual-background): Prevent buttons repositioning on click action. 2022-01-18 15:18:30 +01:00
Robert Pintilii 820ff8473c
feat(filmstrip) Updated filmstrip design (#10791)
Added background on hover
Updated toggle button
Made vertical filmstrip full height on desktop
2022-01-14 14:13:13 +02:00
Akshay Raje 8d8cc9c8bd
fix(toolbox) hide volume meter when audio levels are disabled 2022-01-11 17:08:36 +01:00
Robert Pintilii 804573e9aa
fix(title-bar) Updated animation duration (#10688) 2021-12-23 15:06:14 +02:00
Robert Pintilii da2b920dbe
feat(conference-info) Updated title bar (#10670)
Updated animations
Added raised hands counter
Added max width to title bar
2021-12-21 12:22:30 +02:00
Robert Pintilii d44660527b
fix(thumbnail) Update tile resizing constraints (#10645)
disableTileEnlargement config now uses old behaviour (small tiles, not just small video in the tiles)
Update Firefox scrollbar style to match webkit
Show more rows when height allows it instead of stretching a fixed number of rows, but make sure we always try to fill the whole viewport
Added constraints for how narrow portrait tiles can be and how wide landscape tiles can be
Video should cover whole tile in tile view unless disableTileEnlargement is set or video is portrait
Added min height in px for tiles
2021-12-20 11:32:31 +02:00
Avram Tudor ffe74ca68b
fix(tile-view) fix screensharing size in self view (#10634)
clean-up overriden css for tileview video tags
2021-12-16 15:33:30 +02:00
Robert Pintilii 91437c50e3
feat(thumbnail) Video thumbnails redesign and refactor (#10351)
Update video thumbnail design
Update design of indicators
In filmstrip view move Screen Sharing indicator to the top
Removed dominant speaker indicator
Use ContextMenu component for the connection stats popover
Combine Remove video menu and Meeting participant context menu into one component
Moved some styles from SCSS to JSS
Fix mobile avatars too big
Fix mobile horizontal scroll
Created button for Send to breakout room action
2021-12-15 15:18:41 +02:00
Horatiu Muresan 70d8a46c05
feat(profile-settings): Hide email field under profile settings 2021-12-13 17:17:38 +02:00
Robert Pintilii a6a24fa973
fix(overflow-menu) Pin reactions on menu bottom on mobile web (#10599)
Move some styles from SCSS to JSS
2021-12-13 15:51:05 +02:00
Andrei Oltean a077043f1b feat: (moderate-reaction-sounds) enable moderator to mute reaction sounds 2021-12-03 18:36:57 +02:00
Gabriel Borlea 61684b1071
feat(facial-expressions): add the facial expression feature and display them in speakerstats (#10006)
* Initial implementation; Happy flow

* Maybe revert this

* Functional prototype

* feat(facial-expressions): get stream when changing background effect and use presenter effect with camera

* add(facial-expressions): array that stores the expressions durin the meeting

* refactor(facial-expressions): capture imagebitmap from stream with imagecapture api

* add(speaker-stats): expression label

* fix(facial-expression): expression store

* revert: expression leabel on speaker stats

* add(facial-expressions): broadcast of expression when it changes

* feat: facial expression handling on prosody

* fix(facial-expressions): get the right track when opening and closing camera

* add(speaker-stats): facial expression column

* fix(facial-expressions): allow to start facial recognition only after joining conference

* fix(mod_speakerstats_component): storing last emotion in speaker stats component and sending it

* chore(facial-expressions): change detection from 2000ms to 1000ms

* add(facial-expressions): send expression to server when there is only one participant

* feat(facial-expressions): store expresions as a timeline

* feat(mod_speakerstats_component): store facial expresions as a timeline

* fix(facial-expressions): stop facial recognition only when muting video track

* fix(facial-expressions): presenter mode get right track to detect face

* add: polyfils for image capture for firefox and safari

* refactor(facial-expressions): store expressions by counting them in a map

* chore(facial-expressions): remove manually assigning the backend for tenserflowjs

* feat(facial-expressions): move face-api from main thread to web worker

* fix(facial-expressions): make feature work on firefox and safari

* feat(facial-expressions): camera time tracker

* feat(facial-expressions): camera time tracker in prosody

* add(facial-expressions): expressions time as TimeElapsed object in speaker stats

* fix(facial-expresions): lower the frequency of detection when tf uses cpu backend

* add(facial-expressions): duration to the expression and send it with durantion when it is done

* fix(facial-expressions): prosody speaker stats covert fro string to number and bool values set by xmpp

* refactor(facial-expressions): change expressions labels from text to emoji

* refactor(facial-expressions): remove camera time tracker

* add(facial-expressions): detection time interval

* chore(facial-expressions): add docs and minor refactor of the code

* refactor(facial-expressions): put timeout in worker and remove set interval in main thread

* feat(facial-expressions): disable feature in the config

* add(facial-expressions): tooltips of labels in speaker stats

* refactor(facial-expressions): send facial expressions function and remove some unused functions and console logs

* refactor(facial-expressions): rename action type when a change is done to the track by the virtual backgrounds to be used in facial expressions middleware

* chore(facial-expressions): order imports and format some code

* fix(facial-expressions): rebase issues with newer master

* fix(facial-expressions): package-lock.json

* fix(facial-expression): add commented default value of disableFacialRecognition flag and short description

* fix(facial-expressions): change disableFacialRecognition to enableFacialRecognition flag in config

* fix: resources load-test package-lock.json

* fix(facial-expressions): set and get facial expressions only if facial recognition enabled

* add: facial recognition resources folder in .eslintignore

* chore: package-lock update

* fix: package-lock.json

* fix(facial-expressions): gpu memory leak in the web worker

* fix(facial-expressions): set cpu time interval for detection to 6000ms

* chore(speaker-stats): fix indentation

* chore(facial-expressions): remove empty lines between comments and type declarations

* fix(facial-expressions): remove camera timetracker

* fix(facial-expressions): remove facialRecognitionAllowed flag

* fix(facial-expressions): remove sending interval time to worker

* refactor(facial-expression): middleware

* fix(facial-expression): end tensor scope after setting backend

* fix(facial-expressions): sending info back to worker only on facial expression message

* fix: lint errors

* refactor(facial-expressions): bundle web worker using webpack

* fix: deploy-facial-expressions command in makefile

* chore: fix load test package-lock.json and package.json

* chore: sync package-lock.json

Co-authored-by: Mihai-Andrei Uscat <mihai.uscat@8x8.com>
2021-11-17 16:33:03 +02:00
Vlad Piersec 31e4a9c1a0 fix(responsive-ui): Make modal full screen & fix prejoin layout on mobile landscape 2021-11-17 10:44:35 +02:00
Horatiu Muresan 8ebca64af1
feat(dynamic-branding): Add custom theme branding (#10335)
- apply theming to various buttons
2021-11-15 10:37:54 +02:00
Vlad Piersec e51655a93a feat(Polls): Display creator name for polls 2021-11-02 15:45:46 +02:00
Vlad Piersec 8983ea41fd fix(Drawer): Close drawer on item click
Clicking on an item when the popup drawer is displayed would keep it open.
Now clicking on any item should automatically close the drawer.

Popup was also refactored and no longer uses refs.
2021-11-02 15:45:29 +02:00
Vlad Piersec eaa084722f fix(Chat): Place Chat pane above Participants pane on mobile web 2021-11-01 15:30:59 +02:00
Vlad Piersec 318bc26fa0 fix(Polls): Fix polls pane on Firefox
On Firefox the create button is not visible.
Having a poll with long question/options breaks the UI.
2021-11-01 14:55:18 +02:00
tudordan7 072c29c0f9 fix(connection-indicator): Hide indicator circle when ghost icon is hidden. 2021-11-01 10:02:43 +01:00
Vlad Piersec 9e3084ef48 refactor(chat): Don't display chat inside a dialog
* In order to be able to customize the background of the chat
it had not be displayed inside of a dialog. This also removes
the need to extensively use 'TouchmoveHack' component.

* Adds the ability to change panes (Chat vs Polls) using the keyboard.

* Adds accessibility attributes to panes.
2021-10-26 09:11:14 +03:00
Andrei Oltean 779d44298b
feat: (video-thumbnail) add permanent video participant name to thumbnail (#10242)
* feat: (video-thumbnail) add permanent participant name to video thumbnail

* feat: (video-thumbnail) add permanent participant name to video thumbnail

* # Conflicts:
#	react/features/filmstrip/components/web/Thumbnail.js

* feat: (video-thumbnail) add permanent participant name to video thumbnail fix display

* fix(translation) Reverted changes to translation parameter

Reverted param name change on translation

* feat: (video-thumbnail) add permanent participant name to video thumbnail fix display

* feat: (video-thumbnail) add permanent participant name to video thumbnail fix display

* fix(lang): update German translation (#10188)

Signed-off-by: Christoph Settgast <csett86@web.de>

* Update Virtual Background Model  (#9867)

* update virtual background

* remove comments

* remove general model

* fix(lang): update French translation (#10239)

* feat: (video-thumbnail) add permanent participant name to video thumbnail fix display

* Update Occitan (#10240)

* feat: (video-thumbnail) add permanent participant name to video thumbnail

* feat: (video-thumbnail) add permanent participant name to video thumbnail

* feat: (video-thumbnail) add permanent participant name to video thumbnail fix display

* feat: (video-thumbnail) add permanent participant name to video thumbnail fix display

* feat(reactions) Added metrics for disable reaction sounds

Reordered reactions middleware alphabetically

* feat: (video-thumbnail) add permanent participant name to video thumbnail

* feat: (video-thumbnail) add permanent participant name to video thumbnail

Co-authored-by: robertpin <robert.pin9@gmail.com>
Co-authored-by: csett86 <csett86@web.de>
Co-authored-by: Roshan Pulapura <81193065+rpulapura@users.noreply.github.com>
Co-authored-by: gpatel-fr <44170243+gpatel-fr@users.noreply.github.com>
Co-authored-by: Mejans <61360811+Mejans@users.noreply.github.com>
2021-10-25 16:35:40 +03:00
robertpin 0715f85796 fix(video-thumbnail) Fixed name for remote participants
Display name on thumbnail for remote participants as well
Updated style
2021-10-22 17:21:32 +03:00
Avram Tudor b250f21f91
fix(prejoin) fix incorrect alignment of alternative join options (#10218)
remove styles that break the inline dialog's position management
2021-10-21 10:17:24 +03:00
Vlad Piersec 1ad8f77179 feat(dialogs): Redesign Video Quality dialog & change dialog background color 2021-10-19 10:05:59 +03:00
Vlad Piersec bad8911fe8 feat(Labels): Redo video quality label
Video quality label now becomes "performance settings".
All CSS for labels is moved to JS.
Overflow menu button is also changed to "performance settings".
2021-10-19 10:05:23 +03:00
Vlad Piersec 1feb0fa129 fix(polls): Fix scroll not working on mobile web polls pane
* Moved TouchmoveHack's css to component
2021-10-19 10:01:48 +03:00
Vlad Piersec 2855642fc3 fix(polls): Update ux according to design 2021-10-18 10:06:43 +03:00
Saúl Ibarra Corretgé 0b984ce5f9 feat(notifications) Changed notifications stack to be full height
This is a stop-gap approach to remove the AtlasKit notifications stack.

Instead of using a AK FlagGroup to render our notifications (Flag components)
in, create our own container and use a fake FlagGroupContext provider, which is
what FlagGroup uses to control what flags can be dismissed.

Since we now render all notifications, the web part has been refactored to make
sure all notifications get a timer.

Added animations

Renamed DrawerPortal to JitsiPortal

Redesigned notifications
Changed notification text and icons color and added collared ribbon
2021-10-13 16:37:34 +02:00
hmuresan cdf00b5696 feat(raise-hand): Change raise hand indicator background color 2021-10-11 16:05:02 +03:00
Vlad Piersec 7f4fb7f447 fix(polls): Disable submit button if no answers have been chosen 2021-10-11 11:53:23 +03:00
Vlad Piersec 16c3a35da9 fix(polls): Don't let poll question and option text overflow 2021-10-11 10:27:39 +03:00
Hristo Terezov f83559568d fix(FIlmstrip): disable default overscrolling
With the default overscrolling policy when a user overscroll the
filmstrip the scroll focus is moved to the main window and it looks like
the scroll is not working.
2021-10-08 09:13:56 -05:00
Hristo Terezov 1bc5ef3516 fix(toolbox): prevents filmstrip scrolling.
The toolbox container with is 100% and when displayed prevents filmstrip
scrolling for the whole width of the screen.
2021-10-07 09:33:08 +02:00
Vlad Piersec e4448e0a68 fix(Prejoin): Make prejoin avatar match the other avatars 2021-10-06 14:18:28 +03:00
hmuresan 9f7a4f86d8 feat(context-menu) Show participants context menu overlaid in a portal 2021-10-06 14:06:59 +03:00
Vlad Piersec 2f8cfb3ae2 fix(subject): Keep subject centered when chat panel is open 2021-09-24 15:46:33 +03:00
Vlad Piersec d36bd06b7b fix(chat): Hide scroll bar on chat input
Based on this suggestion https://github.com/jitsi/jitsi-meet/issues/9958
2021-09-24 14:00:17 +03:00
robertpin 584ec7c82e
fix(reactions) Reactions improvements (#9964)
* Register shortcuts on mount

* Changed icon for reactions menu

* Enable reactions by default

* Fix unreadCount bug

When having unread messages and sending a reaction the unread count now shows the correct count

* Fix overflow menu bottom color when reactions are enabled

* Revert raise hand icon

* Update raise hand functionality

On desktop show raise button with arrow for reactions. Only show raise hand in the reactions menu on mobile

* Fix lint error

Add required prop to ToolboxButtonWithIcon

* Legacy support for enable reactions

If disableReactions is undefined treat it as true

* Remove unnecessary code

* Fix unread counter showing negative count

* Fix unreadCount with reactions

UnreadCount ignores all reactions messages

* Fixed typo

* Fix background color
2021-09-21 12:30:24 -05:00
Vlad Piersec 0a9b9bb41d fix(responsive-ui): Shrink self view when in portrait mode on mobile web 2021-09-21 16:47:47 +03:00
Horatiu Muresan 5514be630d
feat(conference-info-header) Make conference info header configurable. (#9638) 2021-09-20 21:12:56 +03:00
Avram Tudor adbb5f8ead
fix(prejoin) implement ux improvements for mobile (#9939) 2021-09-17 13:12:34 +03:00
robertpin 1dc8bfa631
feat(av-moderation) Updated Advanced moderation (#9875)
Co-authored-by: Vlad Piersec <vlad.piersec@8x8.com>
2021-09-10 14:05:16 +03:00
Vlad Piersec 0db2dd0546 fix(prejoin): Change avatar color to match in-meeting one 2021-09-10 10:48:22 +03:00
hmuresan 0f01772625 fix(prejoin) Fix buttons positioning for 3rd party 2021-09-08 16:44:04 +03:00
robertpin c7a91e1974
feat(reaction-sounds) Added sounds for reactions (#9775)
* Added sounds for reactions

* Updated reactions list

* Added reactions to sound settings

* Added support for multiple sounds

* Added feature flag for sounds

* Updated sound settings

Moved reactions toggle at the top of the list

* Added disable reaction sounds notification

* Added reaction button zoom for burst intensity

* Fixed raise hand sound

* Fixed register sounds for reactions

* Changed boo emoji

* Updated sounds

* Fixed lint errors

* Fixed reaction sounds file names

* Fix raise hand sound

Play sound only on raise hand not on lower hand

* Fixed types for sound constants

* Fixed type for raise hand sound constant
2021-08-23 12:57:56 +03:00
hmuresan fe41eef398 fix(drawer-menu) Allow scroll on drawer menu items 2021-08-20 16:35:24 +03:00
Avram Tudor 1ad9046a38
Improve premeeting screens ux (#9726)
* feat(prejoin) move invite to toolbar section

* feat(premeeting) redesign prejoin and lobby screens

* code review changes

* fix prejoin flicker and avatar id

* fix password error message and native lobby dialog close position
2021-08-20 11:53:11 +03:00
Saúl Ibarra Corretgé cd5f2b483f fix(e2ee) show entire content at all times 2021-08-19 17:19:00 +02:00
Avram Tudor 4b3d92dcbd
fix(moderation) highlight dominant speaker (#9750) 2021-08-19 14:08:30 +03:00
Дамян Минков a7a44902ec fix: Fixes dot shown left of logo.
Empty list with border is showing 2px dot.
2021-08-18 17:18:39 -05:00
Avram Tudor 6d3a4b920b
fix(moderation) display green mic icon only for active speaker (#9744) 2021-08-18 15:10:16 +03:00
Jade Guiton 8c82c0f56e
feat(polls) Ability to create polls inside Jitsi (#9166)
* feat(polls) Added boilerplate code for polls feature

* feat(polls) Implemented simple poll creation and answer modals in web app

feat(polls) Added button to create a poll in toolbar
feat(polls) Added Modal to answer an incoming poll
feat(polls) Implemented basic client-side sending and reception of polls
feat(polls): linked Poll creation to poll answering
fix(polls) Linted code
feat(polls.create) Added fields for question and answers (#3)
* feat(polls.create) Added fields for question and answers + keyboard navigation
* feat(polls.create) Minor changes, added some comments
feat(PollAnswer Component): Component to display modal to answer poll #1 (#2)
* fix(polls) removing necessity of current_poll_id variable
* fix(polls) linting, polls are now updated when an answer is sent
* feat(polls answer) added translation
* fix(polls answer) remove extra comments, fixed typo
* improvement (polls answer) use useSelector instead of mapStateToProps. cleaner code
* fix (polls create) renamed sender to senderId
* fix (polls answer) turned arrow function into useCallBack
feat(PollResults Component): Component to display poll results (#1)
* feat(PollResults Component): fist version of the component
* feat(detailed votes): Display the detailed results of a poll
* feat(Poll results): Use display name instead of ids in detailed results mode
* fix(Poll): change title to question
* fix(Poll type): import Poll type from types.js
* fix(Poll): change title to question
* fix(Poll): get participants out of the map
* fix(Poll): replace filter with find
feat(polls.create) Added "+" and "x" buttons in poll creation form + improved keyboard navigation a bit
feat (polls) Answer modal now display results in real time after validation or skip
feat(polls.create) Minor improvements to poll creation form
feat(poll result) Added default message when trying to display no answer
fix (polls) result windows is now small by default
fix (polls) sanitizes imports to allow startup on react native

* feat(polls.native) Implemented native toolbar button & poll create modal

feat( poll native) added poll creation button in native toolbar
improvement(polls) only one file used for PollCreateButton
feat (polls native) added an example dialog
feat (polls native) added possibility to create and delete options in poll creation
improvement (polls) better styling for PollCreateDialog

* feat(polls) Added ability to drag&drop answers in web poll creation form

* feat(polls) Added native poll answer modal + chat integration, refactored components

Merge branch 'polls-native' of https://github.com/jade-guiton/jitsi-meet into polls-native
improvement (poll) Better styling for poll answer, now uses icons
feat(poll.PollResults): Add native version of PollResults
feat(poll.PollResults): Post results in chat in Native
fix(poll.PollResults): Fix linter error in ChatMessage
feat(polls.native) Improved styling for native poll answer dialog (required some internal changes)

* fix(polls) Heavily refactored and added bars to poll results, other minor changes

fix(poll.create): Move title to Dialog title
feat(poll.create) Minor changes to poll creation / answer dialogs
fix(poll.create) Refactored and improved translations
feat(poll) Improved CSS for modals in web version
fix(poll.pollcreate): Fix button size in native
fix(polls) Refactored poll results component and other minor changes
fix (polls) remove double import
refactor(poll) Heavily refactored poll results (native + web)
feat(polls.results) Added percentage bars and vote counts in web poll results, minor changes to mobile poll results

* fix(polls) Fixes and linting

fix(polls) Reformatted and fixed some linter and Flow errors
fix(polls.results) Fixed voter list border appearing with 0 voters

* feat(polls): Add modal with detailed votes that can be open from the result summary in the chat

* fix(polls) Fixes, refactorings, and minor design changes

feat(polls.results): Refactored poll chat message and improved design in web app
feat(polls.results) Same as last commit, but for mobile version
refactor(polls.results) Refactored PollResultsMessage and removed unnecessary prop in PollResults
fix(polls.results) Fixed all remaining linter and Flow errors
improvement(polls) removed console logs, added comments
fix (polls) linting
fix(polls.results) Fixed bug with poll chat message displaying the wrong name
feat(polls.results) Minor improvement on poll results display (web)
fix(poll.results): Use getParticipantDisplayName to get participant name and avoid empty string as name

* Feat(poll.results): Remember voters names to display after they left the conference (#10)

* feat(poll.results): Add the sender name in Poll object to remember names if participants leave the conference. Names are also updated if changed
* refactor(poll.results): Refactor the memorization of the names of voters to use the same logic as in  the chat
* refactor(poll.results): use Map instead of Array.From(
* refactor(poll.answer): change the way names are stored in poll answers to persist if participant left the call
* Update react/features/polls/components/AbstractPollAnswerDialog.js
* Update react/features/polls/components/AbstractPollCreateDialog.js
* refactor(poll.answer): use voterName instead of senderName to avoid confusion with senderId the id of the sender of the poll
* improvement(polls) Simplified poll answer voter name logic

Co-authored-by: Fabien Zucchet <fabien.zucchet@student-cs.fr>
Co-authored-by: Jade Guiton <guiton.jade@gmail.com>

* fix(poll.native): Fix UI overflow when asking long questions & long options in the mobile app (#11)

Co-authored-by: Fabien Zucchet <fabien.zucchet@student-cs.fr>

* fix(polls) Fixed close button behavior in answer and results dialog (#12)

* fix(polls) Fixed close button behavior in answer and results dialog
* fix(polls) Fixed linter error

* fix(polls) Added a poll queue to avoid overwriting open modals (#13)

* fix(polls) Added a poll queue to avoid overwriting open modals
* fix(polls) Updated documentation for action RECEIVE_POLL

* Refactor(poll.chatresults): Add message in chat with hidden results until the participant has answered (#14)

* refactor(poll.chat): Display poll results in chat when the poll is created instead of when the participant has ansered
* refactor(poll.chat): Hide results until the participant has answered, skipped or canceled a responde to the poll
* Use getParticipantDisplayName instead of only getStore()
* Hide results also in native
* fix(polls) Fixed previous merge

Co-authored-by: Fabien Zucchet <fabien.zucchet@student-cs.fr>
Co-authored-by: Jade Guiton <jade.guiton@centralesupelec.fr>

* minor improvements (polls)

refactor (polls) uniformized string for command names
refactor (polls) changed pollId type to number everywhere

* feat(polls) Added persistence to polls using sendMessage instead of sendCommandOnce (#16)

* feat(polls) Using sendMessage instead of sendCommandOnce, switched poll IDs to string, and ability to receive old polls from backend
* improvement(polls) Linted everything, fixed Flow errors, and added Prosody plugin for polls
* improvement(polls) Historic polls are now displayed in chronological order

* (polls) Minor improvements (#17)

* renaming (polls) Renaming senderId -> voterID for voters
* improvement (polls) sender's name is now provided with poll
* comments (polls) updated comments for senderName types
* fix(polls) Finished merging with json-messages feature
* fix(polls) Fixed incorrect json-message sent with 0 polls

Co-authored-by: Jade Guiton <guiton.jade@gmail.com>

* Move polls to tab (#23)

* Draft(polls): Move polls to polls-pane ; first version for web
* Draft(polls): Move polls to polls-pane ; clean styled.js and remove Participant objects
* fix missing newline at the end of file
* Change behaviour to allow answer poll later
* Fix(polls): change pollId type from number to string for consistency
* feat(polls-pane): Ability to answer to a poll in polls-pane
* feat(polls-pane): Ability to create to a poll in polls-pane
* feat (polls.pane) display a notification when a new poll arrives
* refactor(polls-pane): Update CSS to have a design closer to the mockups
* fix(poll.vote count): Fix votes counting when computing percentage
* fix(poll.vote count): Fix votes counting when computing percentage
* refresh fork with jitsi/jitsi-meet
* design (polls) Better look for poll creation
* refactor(polls pane): Move polls-pane as a chat tab
* Remove the first version of the polls-pane and the button to open it
* Fix notifications and typo
* Translate new polls tab in chat
* Change polls_pane to polls-pane
* Remove unless functions
* Remove usage of styled.js
* Improve responsiveness
* Separate web and native logic
* Remove Create a Poll button in web toolbox
* improvement (polls) added auto scrolling to bottom when a new poll arrives
* Add tabs to swicth between polls and chat in native
* Add AbstractPollsPane
* Add AbstractPollCreate
* Add AbstractPollAnswer
* Add PollAnswer, PollItem and PollList for native
* Add PollCreate for native
* Remove dialogs in web and native
* Remove dialog queue
* Remove useless files
* Move _polls.scss outside dialog folder
* Add possibility to skip answer
* Add (useless for now) see details link
* Add possibility to show detailed results for a poll
* Resize progress bar to make details display
* refactor, design (polls) better style to native design chat
* fix (polls) Removed unecessary files
* translate (polls) added french translation to empty polls
* design fix (polls.native) 'show details' now correctly switch between progress bar and voters mode
* Change See detailed results for Show details and add cursor: pointer
* Fix progress bars not aligned with text
* fix (polls.native) added autoselection of newly created option
* Remove poll answer
* improvement(polls.create) Improved web poll creation form marginally
* improvement(polls.change) Simplified answer removal by reusing poll-answer command
* fix linter
* Fix(translation): update translation

Co-authored-by: Fabien Zucchet <fabien.zucchet@student-cs.fr>
Co-authored-by: spineki <marras.antoine@gmail.com>
Co-authored-by: Fabien Zucchet <fabien.zucchet@viarezo.fr>

* Merge pull request #22 from jade-guiton/polls-with-notification

feat (polls) chat notification badge now display the sum of unread  messages and unread polls
fix(translation): Fix missing translation
Fix flow error

* Cleaned up, fixed, and uniformized translations

* Small improvements to PollAnswer and PollResult + Much refactoring

Specifically:
- "Change vote" button now says "Vote" if voting was skipped
- Clicking on "Change vote" resets the voting form to the last submitted answers instead of a blank slate

- The "answered" field of Polls was replaced by "showResults" and "lastVote"
- The "setAnsweredStatus" action was replaced by "registerVote" and "retractVote"
- Some newly unreachable/useless code was removed
- "showDetails" state is now handled by AbstractPollResults instead of PollItem

* fix(polls tab): change tab underline color to #525252

* fix(poll create): Enforce at least two options to create a poll

* fix(poll create): change 'remove option' color to #E04757

* fix(poll create): Update Poll create CSS to adapt to design

* fix(poll answer): Adapt CSS to make poll answer closer to mockup

* fix(poll result): Udpdate poll result CSS to match mockups

* fix(poll result): Udpdate poll result CSS to match mockups

* fix(poll create): Display 'remove option' only when there is at least 3 options

* fix(polls button): Add hover, active, focus and disabled state to polls buttons

* Last improvements for web

* Native design fixes

* Fix rebase issue in land/main.json

* Fix french translation after rebase

* Fixmobile behaviour

* Fixed keyboard navigation in web poll creation form

* Fixed Flow error related to "no polls" icon in PollsList

* fix(polls): Enabled polls Prosody module in Debian config files

* doc(polls) Added comments to the Prosody module code

* fix(polls): Switched from using an internal LJM event to ones from the public API

* Capitalize I of setIsPollsTabFocused

* extract the 2 button modes into a const

* remove extra new lines

* Rename CLOSE_POLL_TAB for POLL_TAB_CLOSED for clarity

* Rename answers2 for answersParsed for clarity

* use switch instead of if/else chain

* improve syntax for localId fetching

* Refactor: Use BUTTON_MODE.CONTAINED variable instead of 'contained'

* Disable send poll button if not enough data is provided in the form (#30)

* Feat: Add notification badge on chat and poll tabs (#31)

* Feat: Add notification badge on chat and poll tabs

* Add badge equivalent for native

* Update displayNameForm text to mention polls (#34)

* Disable polls UI with a config in config.js (#33)

* Change remove option text color from red to grey (#32)

Co-authored-by: spineki <marras.antoine@gmail.com>
Co-authored-by: Fabien Zucchet <fabien.zucchet@student-cs.fr>
Co-authored-by: Fabien Zucchet <80532941+fabienzucchet@users.noreply.github.com>
Co-authored-by: Fabien Zucchet <fabien.zucchet@viarezo.fr>
2021-08-14 08:29:42 -05:00
Mihai-Andrei Uscat 4e83e93eb6
fix(virtual-background): Refactor CSS to accommodate smaller screens 2021-07-26 11:57:39 +03:00
robertpin 2d04f3852c
fix(reactions) Moved reactions behind feature flag 2021-07-22 13:17:42 +03:00
Mihai-Andrei Uscat 2209394d09
feat(Filmstrip): Collapse filmstrip to avoid toolbar overlap on mobile 2021-07-22 09:37:44 +03:00
robertpin 76f8302aeb
fix(recording-label) Make REC label visible at all times (#9578) 2021-07-21 11:46:49 +03:00
Mihai-Andrei Uscat 7263829763 feat(DominantSpeakerName): Implement 2021-07-21 09:05:47 +03:00
Mihai-Andrei Uscat b7ab3ea052 fix(Thumbnail, Drawer): Remove hover state; Prevent outside propagation 2021-07-21 09:05:47 +03:00
Calin Chitu 03a96d0be2 fix(css) moved to the left moderation text 2021-07-14 11:47:46 +03:00
robertpin 601ee219e7
feat(reactions) Added Reactions (#9465)
* Created desktop reactions menu

Moved raise hand functionality to reactions menu

* Added reactions to chat

* Added animations

* Added reactions to the web mobile version

Redesigned the overflow menu. Added the reactions menu and reactions animations

* Make toolbar visible on animation start

* Bug fix

* Cleanup

* Fixed overflow menu desktop

* Revert mobile menu changes

* Removed unused CSS

* Fixed iOS safari issue

* Fixed overflow issue on mobile

* Added keyboard shortcuts for reactions

* Disabled double tap zoom on reaction buttons

* Refactored actions

* Updated option symbol for keyboard shortcuts

* Actions refactor

* Refactor

* Fixed linting errors

* Updated BottomSheet

* Added reactions on native

* Code cleanup

* Code review refactor

* Color fix

* Hide reactions on one participant

* Removed console log

* Lang fix

* Update schortcuts
2021-07-13 09:50:08 +03:00
Tudor D. Pop d87a40e77e
fix(virtual-background): Style adjustments on virtual background dial… (#9484)
* fix(virtual-background): Style adjustments on virtual background dialog on small screens.

* fix(virtual-background): Style adjustments on virtual background dialog on small screens.

Co-authored-by: tudordan7 <tudor.pop@decagon.tech>
2021-07-09 10:26:55 +03:00
Mihai-Andrei Uscat 33f1199fc8
fix(Filmstrip): Fix scrollbars around filmstrip (#9519) 2021-07-08 16:43:15 +03:00
Avram Tudor 62c78950cd
feat(toolbox) allow any toolbox button to be displayed in main toolbar (#9488)
* feat(toolbox) allow any toolbox button to be displayed as main

fixes the previous behaviour where only a certain set of buttons were whitelisted for being displayed in the main toolbar

* code review

* code review - fix avatar icon position
2021-07-08 16:42:07 +03:00
Andrei Gavrilescu da7358d564
feat(audio-screen-share): improved ux flow (#9411)
* add button state / helper dialog

* new audio screen share flow

* change error message

* address a couple of merge conflicts

* fix lint

* address code review

* address code review

* restrict audio screen share on mobile browsers
2021-07-07 11:07:30 +03:00
hmuresan b995221a2b feat(thumbnails) Add changes to mobile context menu
- long touch on thumbnail opens context menu
- hide context menu icon
- add button for connection info to context menu
2021-07-06 16:46:53 +03:00
Avram Tudor abc984f83b
fix(css) fix various layout issues on small screen sizes (#9464) 2021-06-30 12:01:47 +03:00
Jaya Allamsetty 765fbe5e1d
feat: Change the screenshare capture fps from UI. (#9438)
* feat: Change the screenshare capture fps from UI.
Add the ability to change the capture frame rate for screenshare from the UI. The fps becomes effective only on screen shares that are started after the setting is changed.

* squash: add missing JSDOCs and translations for frames-per-second.
2021-06-28 10:48:16 +03:00