* 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
* fix(participants): Change from array to Map
* fix(unload): optimise
* feat: Introduces new states for e2ee feature.
Stores everyoneSupportsE2EE and everyoneEnabledE2EE to minimize looping through participants list.
squash: Uses participants map and go over the elements only once.
* feat: Optimizes isEveryoneModerator to do less frequent checks in all participants.
* fix: Drops deep equal from participants pane and uses the map.
* fix(SharedVideo): isVideoPlaying
* fix(participants): Optimise isEveryoneModerator
* fix(e2e): Optimise everyoneEnabledE2EE
* fix: JS errors.
* ref(participants): remove getParticipants
* fix(participants): Prepare for PR.
* fix: Changes participants pane to be component.
The functional component was always rendered:
`prev props: {} !== {} :next props`.
* feat: Optimization to skip participants list on pane closed.
* fix: The participants list shows and the local participant.
* fix: Fix wrong action name for av-moderation.
* fix: Minimizes the number of render calls of av moderation notification.
* fix: Fix iterating over remote participants.
* fix: Fixes lint error.
* fix: Reflects participant updates for av-moderation.
* fix(ParticipantPane): to work with IDs.
* fix(av-moderation): on PARTCIPANT_UPDATE
* fix(ParticipantPane): close delay.
* fix: address code review comments
* fix(API): mute-everyone
* fix: bugs
* fix(Thumbnail): on mobile.
* fix(ParticipantPane): Close context menu on click.
* fix: Handles few error when local participant is undefined.
* feat: Hides AV moderation if not supported.
* fix: Show mute all video.
* fix: Fixes updating participant for av moderation.
Co-authored-by: damencho <damencho@jitsi.org>
* 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
* Add buttons to send messages/set nickname.
* Redesign message/nickname inputs.
* Pin messages to the input.
* Add keyboard avoider for Safari.
* Make chat content scrollable on mobile.
* Fix toolbox buttons not displaying properly when chat is open.
* Open chat in fullscreen dialog past custom thresholds when mobile/desktop toolbox would become unusable due to chat
* Remove mobile chat check when displaying toolbox
Up until now we relied on implicit loading of middlewares and reducers, through
having imports in each feature's index.js.
This leads to many complex import cycles which result in (sometimes) hard to fix
bugs in addition to (often) breaking mobile because a web-only feature gets
imported on mobile too, thanks to the implicit loading.
This PR changes that to make the process explicit. Both middlewares and reducers
are imported in a single place, the app entrypoint. They have been divided into
3 categories: any, web and native, which represent each of the platforms
respectively.
Ideally no feature should have an index.js exporting actions, action types and
components, but that's a larger ordeal, so this is just the first step in
getting there. In order to both set example and avoid large cycles the app
feature has been refactored to not have an idex.js itself.