Commit Graph

47 Commits

Author SHA1 Message Date
Saúl Ibarra Corretgé 9533650594 fix(e2ee) avoid running middleware when there is no conference
When hanging up, the conference transitions to undefined, so we should
skip all processing related to setting up listeners for a new
conference.
2022-12-09 14:44:18 +01:00
tmoldovan8x8 4c9bfe3d4d
feat(E2EE) add initial SAS verification UI 2022-12-06 18:29:33 +01:00
Robert Pintilii b52b4c2a78
ref(TS ) Improve TS (#12491)
Remove global variables from files
Change type to interface
2022-11-03 10:35:51 +02:00
Robert Pintilii 2938d1f2dc
ref(TS) Require interfaces to start with I (#12424) 2022-10-20 12:11:27 +03:00
Robert Pintilii 6c3206e4d4
ref: TS Improvements (#12358)
Remove unnecessary ts-ignores
Remove unnecessary eslint-disable
Fix type errors
Change Dispatch type to IStore['dispatch']
2022-10-11 13:47:54 +03:00
Robert Pintilii be25ad855f
ref(TS) Convert some files to TS (#12307) 2022-10-07 11:39:18 +03:00
Mihaela Dumitru d0c22806ec
ref(participants) use enum type to store fake participants (#12316) 2022-10-06 14:12:57 +03:00
Bogdan Duduman 48db099134 feat: include sort members eslint changes 2022-09-27 10:25:20 +02:00
Robert Pintilii 63b6b5a72d
ref(TS) Convert some files to TS (#12204) 2022-09-21 11:32:50 +03:00
tmoldovan8x8 7509b520f3
fix(e2ee) check if e2ee is supported before playing the sound 2022-09-16 14:28:36 +03:00
Robert Pintilii 10bb186c13
ref(eslint) Use new TypeScript ESlint config (#12143)
Use new TS config from @jitsi/eslint
Fix all lint errors
2022-09-08 12:52:36 +03:00
Robert Pintilii c9bbc6c762
ref(TS) Remove unnecessary ts-ignores (#12136) 2022-09-07 11:20:05 +03:00
Robert Pintilii 17008237dc
ref: Improve TS state (#12125)
Create IStateful interface
Use IState interface everywhere
Remove unnecessary @ts-ignore
2022-09-05 14:24:13 +03:00
Robert Pintilii 271ea8315b
ref: Improve reducers TS (#12123) 2022-09-05 12:05:07 +03:00
Robert Pintilii 5f04c5ba64
ref: Convert some reducers to TS (#11988) 2022-08-08 14:06:29 +03:00
Robert Pintilii 8f5eabe1f2
ref(TS) Remove ts-ignores (#11979) 2022-08-08 12:36:06 +03:00
Robert Pintilii db54c45b13
feat(ui-components) Add toggle component (#11933) 2022-08-02 13:31:11 +03:00
luzpaz c7f96de787
fix(misc) fix typos
Found via `codespell -q 3 -S ./lang -L miliseconds`
2022-07-14 09:10:08 +02:00
Jaya Allamsetty 346aadc23d fix(participant-pane) Do not show virtual SS as a separate participant. 2022-05-04 10:41:31 -04:00
Calinteodor 7c523f3250
language(typescript) actionTypes.js -> actionTypes.ts (#10940)
* language(typescript) first ts component, added ts configurations, actionTypes.js are now ts files
2022-04-08 15:24:58 +03:00
tmoldovan8x8 2e69ec71c5
feat(e2ee) add externally managed key mode 2021-11-16 12:12:10 +01:00
Saúl Ibarra Corretgé 162a67fe8b chore(lint) tame the (uppdated) linter 2021-11-09 09:43:55 +01: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
tmoldovan8x8 5ad98d193a
feat(e2ee) disable e2ee when large number of participants 2021-09-21 14:00:23 +03:00
Vlad Piersec d96246dea8 fix(config): Add separate entries for the e2ee labels 2021-09-09 16:16:08 +03:00
Vlad Piersec f5dee99131 feat(config): Add config option for e2ee label 2021-09-08 12:33:22 +03:00
Saúl Ibarra Corretgé ddbf334930 fix(e2ee) fix showing not supported warning when alone 2021-08-19 17:19:00 +02:00
Saúl Ibarra Corretgé cd5f2b483f fix(e2ee) show entire content at all times 2021-08-19 17:19:00 +02:00
Hristo Terezov 0bdc7d42c5
feat: Participants optimisations (#9515)
* 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>
2021-07-09 15:36:19 +03:00
Steffen Kolmer e9675453e1
feat: Make Jitsi WCAG 2.1 compliant (#8921)
* Make Jitsi WCAG 2.1 compliant

* Fixed password form keypress handling

* Added keypress handler to name form

* Removed unneccessary dom query

* Fixed mouse hove style

* Removed obsolete css rules

* accessibilty background feature

* Merge remote-tracking branch 'upstream/master' into nic/fix/merge-conflicts

* fix error

* add german translation

* Fixed merge issue

* Add id prop back to device selection

* Fixed lockfile

Co-authored-by: AHMAD KADRI <52747422+ahmadkadri@users.noreply.github.com>
2021-06-10 07:48:44 -05:00
Vlad Piersec b135e2a06a feat(Labels): Redesign labels on mobile & web 2021-04-08 11:57:15 +02:00
tmoldovan8x8 1224597ede
feat(e2ee): auto turns on e2ee when one participant enabled it 2021-04-01 12:34:01 +03:00
tmoldovan8x8 b1d7debfb9
feat(e2ee): adds sounds for e2ee enabling/disabling 2021-03-30 12:59:32 +03:00
John Wu f225ce886f
fix(chore) fix typo 2021-03-22 11:21:48 +01:00
Mihai-Andrei Uscat b69e93a900
fix(Safari): Fix mobile double tapping for toolbar and overflow.
* Create generic tooltip wrapper for mobile usability.
* Change overflow menu icon/font/padding sizes.
* Change overflow drawer expand icon.
2021-02-04 15:24:25 +02:00
Steffen Kolmer ef7d425859 feat(ui) update AtlasKit components 2021-01-26 16:47:55 +01:00
Saúl Ibarra Corretgé 7cafa205ee e2ee: stage 2
Adapt to E2EE changes in lib-jitsi-meet. Notably:

---
    e2ee: introduce per-participant randomly generated keys

    This the second stage in our E2EE journey.

    Instead of using a single pre-shared passphrase for deriving the key used for
    E2EE, we now establish a secure E2EE communication channel amongst peers.

    This channel is implemented using libolm, using XMPP groupchat or JVB channels
    as the transport.

    Once the secure E2EE channel has been established each participant will generate
    a random 32 byte key and exchange it over this channel.

    Keys are rotated (well, just re-created at the moment) when a participant joins
    or leaves.
---
2020-09-10 16:06:25 +02:00
Bettenbuk Zoltan b534c4f624 ui: making the security menu more compact 2020-06-25 17:36:39 +02:00
Mihai Uscat 093254d948 fix(AddPeopleDialog): Improve contact invite form
- Disables the invite buttons while invites are ongoing
- Adds a keyboard shortcut (Enter) to send out invites
- Closes AddPeopleDialog upon successful invites sent
- Fixes the SecurityDialog closing when trying to set E2EE key via Enter shortcut
- Removes superfluous separator from SecurityDialog
2020-06-25 15:25:15 +02:00
Bettenbuk Zoltan 28e5edfb50 ref: move e2ee field into security menu 2020-06-18 09:36:24 +02:00
Saúl Ibarra Corretgé 6e679f952f redux: refactor loading of middlewares and reducers
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.
2020-06-16 11:24:15 +02:00
Bettenbuk Zoltan 0598e7369b ref: eslint-config-jitsi@1.0.3 2020-05-20 17:14:29 +02:00
Bettenbuk Zoltan 9525cab60f feat: icon type circular label 2020-05-18 17:59:07 +02:00
Saúl Ibarra Corretgé 5ea8e198c7 e2ee: add label if all participants have E2EE enabled 2020-04-28 16:11:39 +02:00
Saúl Ibarra Corretgé 2ad6bfbc20 e2ee: broadcast e2ee enabled status using presnce 2020-04-28 16:11:39 +02:00
Saúl Ibarra Corretgé e2788e0fb2 e2ee: show warning if not all participants support E2EE
Refs: https://github.com/jitsi/lib-jitsi-meet/pull/1108
2020-04-21 13:41:05 +02:00
Saúl Ibarra Corretgé cb6fbb0f03 e2ee: add UI elements
* Add dialog to set the E2EE key
* Use the Redux action / middleware to update the key even when set through the
  hash parameter
* Cleanup URL after processing the key so it's not recorded in browser history
2020-04-16 20:25:56 +02:00