Compare commits

...

991 Commits

Author SHA1 Message Date
Saúl Ibarra Corretgé
d2521bc67a feat(android) bump minimum API level to 24
Some of our dependencies (most notably WebRTC) have dropped it and we
can no longer claim to support API level 23).
2023-05-01 11:06:44 +02:00
damencho
38a293f8f6 fix(chat): Fixes long display name that overflow the message bubble. 2023-04-28 13:31:14 -05:00
damencho
13e8f992b5 fix(chat): White square when both scrolls are visible. 2023-04-28 13:31:14 -05:00
damencho
c384d0d3a9 Revert "fix(chat) Make the name fit the chat bubble"
This reverts commit e56c7070c2.
2023-04-28 13:31:14 -05:00
Дамян Минков
2b71fa512b feat: Adds conference duration to the amplitude stat. (#13294) 2023-04-28 11:09:13 -05:00
damencho
d381ceb040 feat: Shows html in notification warning. 2023-04-27 12:42:28 -05:00
damencho
e18c428f52 fix: Hide virtual background for unsupported browsers from vide preview. 2023-04-27 12:42:12 -05:00
Gabriel Borlea
9fc32dc59b fix: multiselect for invite people (#13287)
* fix: multiselect duplicates

* set multiselect height to 200px
2023-04-27 10:14:16 -05:00
robertpin
6f45622ef1 fix(dialog) Fix close animation moves whole body 2023-04-27 10:06:17 -05:00
robertpin
e56c7070c2 fix(chat) Make the name fit the chat bubble 2023-04-27 09:40:27 -05:00
damencho
0aef7a36aa fix: Fixes unresolved function. 2023-04-27 09:25:07 -05:00
damencho
c030cf941e feat: Implements amplitude events for messages count. 2023-04-27 09:24:59 -05:00
Robert Pintilii
f6760e4ac7 fix(chat) Focus input on chat open (#13285) 2023-04-27 17:23:47 +03:00
Robert Pintilii
9060c77307 ref(TS) Convert some native components to TS (#13266) 2023-04-27 08:44:20 +03:00
Дамян Минков
a1d018eef4 feat: Disables sending localstats in visitor mode. (#13279) 2023-04-27 07:38:57 +02:00
Jaya Allamsetty
3f724d8fb7 fix(visitors) Do not add tracks in redux to conference. 2023-04-26 16:51:19 -04:00
Jaya Allamsetty
49d69a5a02 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1623.0.0+c520877a...v1624.0.0+e3a8472f
2023-04-26 13:04:01 -04:00
damencho
6db9e42876 fix: Allows jicofo entering rooms without requiring a password.
The case where the main room is locked and everyone leaves it to a breakout room and then coming back allows jicofo entering without a password.
2023-04-26 09:04:55 -05:00
Jaya Allamsetty
ad3e8f9f53 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1620.0.0+7f0012f7...v1623.0.0+c520877a
2023-04-26 09:26:34 -04:00
Mihaela Dumitru
9f39caa247 feat(external-api) support assumed bandwidth bps config and command (#13164) 2023-04-26 15:32:53 +03:00
Avram Tudor
1402a63324 ref(keyboard-shortcuts) refactor keyboard shortcuts to use redux (#13260)
* ref(keyboard-shortcuts) refactor keyboard shortcuts to use redux

fix unsynced default value between config flag and local storage

* code review

* fix build
2023-04-26 11:21:42 +03:00
robertpin
a9863e65c3 fix(dial-in) Make text selectable on Dial In page 2023-04-25 19:41:27 -05:00
Robert Pintilii
646c58f7d1 ref(TS) Convert some native components to TS (#13264) 2023-04-25 13:50:52 +03:00
Дамян Минков
a78ea7ca9c fix: Updates the option for disabling iframe to show a warning. (#13263)
* fix: Updates the option for disabling iframe to show a warning.

It will give a timeout of 5 mins for the conference, before navigating away from it.

* squash: Fix lint error.

* squash: Fix mobile build.
2023-04-24 14:59:25 -05:00
Robert Pintilii
8b8565bf60 ref(TS) Convert some native components to TS (#13259) 2023-04-24 20:14:02 +03:00
Saúl Ibarra Corretgé
b9e30f3c1b ref(android) remove unused code
This basically reverts
e61ccc956f
since we are no longer interested in using Detox.

In addition, the WebRTC initialization code was only placed in the RAN
instance manager holder's App initialization path, which is now gone, so
add it to the Activity initialization path.
2023-04-24 14:08:50 +02:00
Robert Pintilii
96b6edccf8 ref(TS) Remove flow comments in TS files (#13258) 2023-04-24 14:49:56 +03:00
Robert Pintilii
2af9dc88e6 ref|(TS) Convert some native components to TS (#13239) 2023-04-24 14:09:50 +03:00
Robert Pintilii
eda25ca3c9 fix(toolbar) Remove focus on hide (#13256) 2023-04-24 14:07:42 +03:00
Amga
c99da17973 fix(lang) update Mongolian translation 2023-04-24 11:58:07 +02:00
Saúl Ibarra Corretgé
9e147d7842 fix(android) fix JitsiMeetActivity.onDestroy not leaving the room
When we refactored the external API to use broadcast actions leave() was
changes to use the hangup broadcast action.

This mechanism does not seem to work while onDestroy is getting
executed, however.

There is another way to accomplish the same, for the particular case of
hangup: to pass empty props to the running RN application. This was the
previous behavior too.

This PR introduces a new abort() method on JitsiMeetView, which does
exactly that, passes empty props to RN. This allows cleanup to happen
and the meeting properly ends when the activity is swipped from the
recents list.

Fixes: https://github.com/jitsi/jitsi-meet/issues/13175
2023-04-24 10:14:06 +02:00
Jaya Allamsetty
d7afaf871f fix(visitor): Do not add media tracks in visitor mode.
When gUM resolves after the user has joined as a visitor, skip adding the local tracks to the conference.
2023-04-21 15:25:21 -04:00
Calin-Teodor
c4f6d37aa1 feat(conference): fixed raisedhandcountlabel and filmstrip conflict 2023-04-21 15:58:51 +03:00
Calinteodor
a5663872d9 feat(invite/native): add people functionality fixes (#13240)
feat(invite/native): add people functionality fixes
2023-04-21 14:13:25 +03:00
Robert Pintilii
007283aab3 chore(deps) Cleanup (#13246)
Remove @atlaskit and styled-components
Upgrade @emotion and @mui packages
Move @types packages to devDeps
2023-04-21 10:11:56 +03:00
Saúl Ibarra Corretgé
3b612376f2 chore(deps,giphy) update @giphy/react-components (#13243)
Also update the patches to match the new package versions.
2023-04-21 09:31:50 +03:00
Amga
1a312e2140 lang: update translation for mongolian language (#13237) 2023-04-20 22:46:15 -05:00
Saúl Ibarra Corretgé
6f5d0400b8 fix(deps) override xmldom dependency from strophe.js
lib-jitsi-meet does not bundle xmldom anyway, and we are providing it
here. strophe seems to be stuck in a slightly old version which creates
spurious security warnings.
2023-04-20 19:13:43 +02:00
Gabriel Borlea
aec86cecc0 ref(invite): add people form (#13207) 2023-04-20 14:00:42 +03:00
Robert Pintilii
bf1dde7cd1 ref(TS) Convert some files to TS (#13223) 2023-04-20 12:06:45 +03:00
Calin-Teodor
91e9005f08 feat(base/config): commented out mobile codecs override 2023-04-20 11:49:26 +03:00
Дамян Минков
57f9ea2865 feat: Adds an option to disable iframeAPI. (#13235)
* feat: Adds an option to disable iframeAPI.

* squash: Use utility.
2023-04-19 16:56:32 -05:00
damencho
1f6425fbfd fix: Fix handling visitor messages and msgs limits module. 2023-04-19 08:55:58 -05:00
damencho
e169979bab fix: Fix logs to use module logger.
When using log in the log file is printed 'general' instead of the module that logs it.
2023-04-19 08:55:58 -05:00
Mihaela Dumitru
6e9e9c9a6a fix(whiteboard/pinning) mark whiteboard participant as pinned in the active participant logic (#13232) 2023-04-19 16:37:31 +03:00
Jaya Allamsetty
102a369bca chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1619.0.0+c8d76d4a...v1620.0.0+7f0012f7
2023-04-18 23:41:21 -04:00
Дамян Минков
b318b987a7 feat: Adds a module for restricting number of messages in a room. (#13229)
* feat: Adds a module for restricting number of messages in a room.

* squash: Adds logic to reload config.

* squash: Ignore polls-answers.

* squash: Rename variables.
2023-04-18 16:42:53 -05:00
George Politis
78ce68160a fix: Reinitialize rtcstats when the config changes (#13181)
* fix: Reinitialize rtcstats when the config changes

The mobile app does not exit after the user has left the meeting. This
means we need to re-initialize rtcstats every time a user joins a call to
be sure we are using the correct deployment information.

* Wrap the sendStats method.

* Uses lighter syntax.

* Fixes the linter and adds a warning.

* Bind the `statsEntry` callback to `this`.

* Removes obsolette comment.
2023-04-18 13:48:30 -07:00
Jaya Allamsetty
6aff616af4 fix(mobile) Do not disableAudioLevels on RN since it uses feature detection now (#13226)
* fix(mobile) Do not disableAudioLevels on RN since it uses feature detection now.
Local and remote audio levels will automatically be disabled on RN since receiver stats and local audio stats are not supported there.
2023-04-18 13:55:31 -04:00
Jaya Allamsetty
0140a49641 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1617.0.0+faeff49a...v1619.0.0+c8d76d4a
2023-04-18 13:54:54 -04:00
damencho
732754c566 feat: Module to expose turn credentials via http endpoint. 2023-04-18 11:07:35 -05:00
Saúl Ibarra Corretgé
b360a9e572 fix(build) drop unused file
Also generalize the lib-jitsi-meet files rule so it can also work with
development (unminimized) builds.
2023-04-18 17:19:59 +02:00
Saúl Ibarra Corretgé
f88fa81616 deps(rn) update react-native-webrtc to version 111.0.0
Adapt to changes in the Android plugin initialization.

Leverage the new module initialization to simplify enabling WebRTC
logging.
2023-04-18 17:11:04 +02:00
Calin-Teodor
e0e66119f5 fix(google-api): sign out button label on smaller devices 2023-04-18 17:03:19 +03:00
Calinteodor
ba4784f149 feat(subtitles): rework feature (#12484)
* feat(subtitles): separated web from native and created native subtitles screen
2023-04-18 16:01:34 +03:00
Saúl Ibarra Corretgé
7fb7c3de9c chore(deps) update xmldom to the latest version 2023-04-18 13:46:37 +02:00
Saúl Ibarra Corretgé
3d2d449d31 chore(deps) react-native-google-signin@latest
Updates the Google SignIn SDK to the latest.
2023-04-18 13:16:09 +02:00
Saúl Ibarra Corretgé
ca60c33dda fix(ios) disable CallKit when running in the simulator
It doesn't actually work on the simulator but it never caused trouble...
until iOS 16.4 (or maybe earlier). Disable it.
2023-04-18 10:58:42 +02:00
damencho
162512496a feat: Module to rate limit based on sent stanzas via ip. 2023-04-17 18:09:16 -05:00
damencho
7819c97839 feat: Module to kick jigasi from a meeting via http endpoint. 2023-04-17 18:09:16 -05:00
damencho
e9c8603c3c feat: Module to invite jigasi to a meeting via http endpoint. 2023-04-17 18:09:16 -05:00
damencho
9e165c337a feat: Module to ban users based on external service. 2023-04-17 18:09:16 -05:00
damencho
58af1b98c0 feat: Module to provide http endpoint for ending a meeting. 2023-04-17 18:09:16 -05:00
damencho
6a077333c6 feat: Module to hide rooms for some queries. 2023-04-17 18:09:16 -05:00
damencho
cb234e6b1b feat: Module to flip devices. 2023-04-17 18:09:16 -05:00
damencho
67a9f35176 feat: Module to restrict muc access. 2023-04-17 18:09:16 -05:00
Jaya Allamsetty
9396e8b0c0 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1615.0.0+a23a8c7c...v1617.0.0+faeff49a
2023-04-17 16:46:13 -04:00
dependabot[bot]
200d857012 chore(deps-dev): bump webpack from 5.57.1 to 5.76.0
Bumps [webpack](https://github.com/webpack/webpack) from 5.57.1 to 5.76.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.57.1...v5.76.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 09:50:18 +02:00
Christoph Settgast
1a22b7d0dd fix(desktop-picker): Populate list of desktop app windows to share
Fix bug introduced via #12994 where id was changed and "-tab" was appended. Due to this the selected tab was not anymore working and empty object was returned here: 05da37b56d/react/features/desktop-picker/components/DesktopPicker.tsx (L270)

Originally part of #13096 by @dudumanbogdan, but pulled ahead to fix application
window sharing via Electron desktop app.

Fixes: jitsi/jitsi-meet-electron#857
2023-04-13 23:12:37 -05:00
Calin-Teodor
035cccb97b fix(toolbox): imports 2023-04-14 00:05:25 +03:00
Saúl Ibarra Corretgé
ca1c00acb0 feat(external-api) drop iframe sandbox
It has created more trouble than it sat to solve, I'm dropping it for
now so we can re-evaluate.
2023-04-13 10:30:15 -05:00
Robert Pintilii
8836669c9f ref(audio-picker) Styles refactor (#13193)
Move styles from SCSS to JSS
Convert components from class to function
2023-04-13 16:41:16 +03:00
Robert Pintilii
13e818e135 ref(TS) Convert some native components to TS (#13203) 2023-04-13 15:49:51 +03:00
Robert Pintilii
fc0fd2d08c ref(TS) Convert some components to TS (#13198) 2023-04-13 15:49:34 +03:00
Robert Pintilii
cc91cfe7b5 ref: Styles refactor (#13196)
Move some styles from SCSS to JSS
Remove unnecessary styles
Remove feedback stars animation option
2023-04-13 15:49:15 +03:00
Robert Pintilii
33564a311b ref(video-picker) Styles refactor (#13206)
Move styles from SCSS to JSS
Convert a component from class to function
2023-04-13 13:22:30 +03:00
Robert Pintilii
2de416c1fa fix(dial-in) Make text selectable (#13205) 2023-04-13 12:27:11 +03:00
Jaya Allamsetty
64838df712 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1614.0.0+5d3ce8c2...v1615.0.0+a23a8c7c
2023-04-12 12:35:48 -04:00
Robert Pintilii
84ad0200a8 ref(TS) Convert some native components to TS (#13200) 2023-04-12 16:58:42 +03:00
Christoph Settgast
046f9c53ab fix: breakout rooms with non-ascii room names
Somewhere along a double encoding for the room names occurred, thus
currently moderation does not work for rooms names which contain non-
ascii charaters like ä etc.

This essentially reverts a6bc51cff1
2023-04-11 16:27:48 -05:00
infl00pLabs
62f1139193 lang: Greek translations update (#13163)
* Complete and Replace Greek translated strings

* Greek translated strings - sorted

* Add files via upload
2023-04-11 09:09:59 -05:00
Robert Pintilii
373be54b04 ref(TS) Convert some components to TS (#13192) 2023-04-11 12:10:37 +03:00
Robert Pintilii
00c3ea07e7 fix(notifications-tab) Fix sounds settings (#13195) 2023-04-11 11:31:51 +03:00
Robert Pintilii
5a64bd76fb ref(prejoin) Refactor styles (#13187)
Move styles from SCSS to JSS
Convert class to function component
2023-04-10 14:22:08 +03:00
Robert Pintilii
57dbd3cf54 fix(device-picker) Close picker when another is open (#13190) 2023-04-10 12:52:22 +03:00
Дамян Минков
e772831f7c feat(visitors): Fix creating breakout rooms for promoted visitor. (#13188)
* feat(visitors): Fix creating breakout rooms for promoted visitor.

* squash: Drop caching as we hardcode the nick.
2023-04-07 22:47:13 -05:00
damencho
9363b79454 feat(visitors): Updates meeting id for visitor rooms. 2023-04-07 08:53:13 -05:00
Gabriel Borlea
cf97ff724c fix: leave the conference after it is destroyed (#13182)
* fix: leave the conference after it is destroyed

* add timeout for leave conference
2023-04-07 08:34:18 -05:00
Robert Pintilii
c1f1c0d341 ref(TS) Convert some components to TS (#13179) 2023-04-07 13:59:25 +03:00
Robert Pintilii
fd47225d30 fix(popover) Fix close popover from toggle button (#13180) 2023-04-07 12:26:56 +03:00
damencho
0e9e884ab4 fix(visitors): Fixes large video and pinning. 2023-04-06 13:23:13 -05:00
damencho
85d13ddfdf chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1612.0.0+67d92a96...v1614.0.0+5d3ce8c2
2023-04-05 17:55:51 -05:00
damencho
deadd8ad07 fix: Updates the rules for visitor room destroy.
Will destroy room immediately when there are no main participant, cause anyway the main room will be destroyed and jicofo will leave this room.
Visitors will reload when seeing jicofo leaving.
When there are no visitors we give 15 seconds for them to connect and after that we destroy the room.
2023-04-05 17:12:37 -05:00
Trang Sĩ Thái
b9e5e5f114 Update main-vi.json
Correct translations of the Vietnamese language
2023-04-05 16:07:31 -05:00
Дамян Минков
e5d948af44 feat(visitors): Adds an option to ignore certain domains. (#13174)
* feat(visitors): Adds an option to ignore certain domains.

Can ignore domains (used for jibri and transcriber) to avoid propagating them to visitor nodes.

* squash: Drop filtering messages.
2023-04-05 16:07:12 -05:00
damencho
352ffa589c fix: Handles max occupants reached from a visitor node.
When we receive the error from a visitor node, we need to restore the previous configuration, reconnect to the main prosody and be ready to try to rejoin again (from prejoin screen).
2023-04-05 07:38:00 -05:00
damencho
2dac69b679 fix: Show visitors notification only when iAmVisitor is true. 2023-04-05 07:38:00 -05:00
Peter Dave Hello
a062fe0d0b lang: Improve Traditional Chinese (zhTW) locale (#13169) 2023-04-04 15:12:51 -05:00
damencho
67692149a2 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1611.0.0+14cd7a89...v1612.0.0+67d92a96
2023-04-04 14:05:08 -04:00
Jaya Allamsetty
ec4ab7c49c fix(lastn): Do not update lastn on participant join/leave.
Last-n doesn't need to be updated when participants join/leave the conference or for other layout changes.
2023-04-04 11:14:46 -04:00
Jaya Allamsetty
6efa4f2475 fix(config) Remove the code related to lastN limits which is not used anymore. 2023-04-04 11:14:46 -04:00
Robert Pintilii
3a2a129f44 ref(TS) Improve TS (#13167)
Fix some errors. Remove @ts-ignores
Convert some files to TS
Remove some eslint-disables
2023-04-04 17:08:59 +03:00
Calinteodor
a828cacbfe feat(polls): answer and question inputs native updates (#13166)
* feat(polls): fixed scroll inside components and added pointerEvents auto for question and answer inputs
2023-04-04 15:15:44 +03:00
Calin-Teodor
5d840a5072 feat(conference, toolbox): reverted PR and removed pointer events from parent views 2023-04-04 14:00:50 +03:00
Robert Pintilii
db5e63411f feat(participants-pane) Design update (#13162)
Move ListItem to base/ui
2023-04-04 13:02:45 +03:00
Calin-Teodor
7457480f02 feat(conference, toolbox): fixed linter 2023-04-04 12:18:40 +03:00
Calin-Teodor
c834627949 fix(toolbox): stop onpress bubbling for components underneath the toolbox 2023-04-04 12:18:40 +03:00
Calin-Teodor
2a0b87ee3e feat(filmstrip): update method to match meeting participant item onpress method 2023-04-04 12:18:40 +03:00
Calin-Teodor
ff83276a2b fix(conference): stop onpress bubbling for components underneath the titlebar 2023-04-04 12:18:40 +03:00
Robert Pintilii
0bea2926d2 ref(TS) Convert some components to TS (#13142) 2023-04-04 10:21:53 +03:00
Hristo Terezov
aa3a8f24b8 feat(connection-table): e2ee verified changes
moves e2ee verified into "Show More" section of the connection table popup.
changes the values to yes/no.
2023-04-03 15:06:35 -05:00
Aaron van Meerten
be493c5343 fix: revert base.html clearing (#13161) 2023-04-03 14:59:03 -05:00
damencho
47a2943682 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1610.0.0+a1bbdc1f...v1611.0.0+14cd7a89
2023-04-03 11:43:56 -04:00
Bartosz Schiller
5201f8791a Add feature flag to hide the participant name editing field on the prejoin page 2023-04-03 18:25:47 +03:00
Aaron van Meerten
0f4af44220 feature: clear base.html (#13157) 2023-04-03 10:12:05 -05:00
Aaron van Meerten
78bdbe2c3f feature: support loading pwa-worker from subdir (#13156) 2023-04-03 10:06:10 -05:00
Hristo Terezov
e781bc9458 fix(external-api): Set ifame.src before adding it.
Revert a7b25d6
2023-04-03 09:50:38 -05:00
Peter Dave Hello
847d1dd4b7 fix(docs) set proper language for codeblocks in lang/readme.md 2023-04-03 15:45:53 +02:00
Robert Pintilii
05a79ec793 ref: Remove index files (#13154)
Fix imports
Convert some files to TS
2023-04-03 16:33:18 +03:00
Calinteodor
20fd544ded fix(notications): increased notification max height for buttons to fit (#13152) 2023-04-03 14:13:37 +03:00
Robert Pintilii
0b65acb528 ref: Remove some index files (#13151)
Fix imports
2023-04-03 13:49:19 +03:00
JohannesPertl
75bb460ccf misc(editorconfig) don't trim trailing whitespaces for .md files 2023-04-03 11:17:36 +02:00
Robert Pintilii
6afb7ba9a6 ref(TS) Changes types to interfaces (#13141) 2023-04-03 11:09:50 +03:00
Robert Oanta
f1ad9dc2e0 fix(api) webhid error showing up in logs 2023-03-31 13:40:33 -05:00
Jaya Allamsetty
9d76c54288 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1608.0.0+87bce92f...v1610.0.0+a1bbdc1f
2023-03-31 08:21:28 -05:00
Robert Pintilii
9ac039a408 ref: Remove some index files (#13140) 2023-03-31 14:04:33 +03:00
Дамян Минков
275e7b00a9 feat: Visitors stats (#13139)
* fix: Fixes mac occupants check logic.

Now works and with missing muc_access_whitelist option.

* feat: Adds visitor stats.

* squash: Drops check for healthcheck room.
2023-03-30 17:23:04 -05:00
Jaya Allamsetty
44dde32bab fix(config) Remove ununsed abTesting config. 2023-03-30 17:46:17 -04:00
Jaya Allamsetty
f72fb4063b fix(config) cleanup unused 'enableLayerSuspension' flag. 2023-03-30 17:46:17 -04:00
Jaya Allamsetty
710dab8b76 fix(config) Ignore enableUnifiedOnChrome config flag.
Always enable unified plan support on Chromium endpoints.
2023-03-30 17:46:17 -04:00
Calinteodor
fde975ba62 feat(recording): fix ui for live stream screen on mobile (#13123)
* feat(recording): fix ui for live stream screen on mobile
2023-03-30 16:06:01 +03:00
Calin-Teodor
d75ab7b246 fix(filmstrip): show video for screenshare participant in tile view 2023-03-30 15:44:36 +03:00
Robert Pintilii
46c91b7566 ref(TS) Convert some components to TS (#13137)
*Remove unnecessary @ts-ignores
2023-03-30 15:30:15 +03:00
Robert Pintilii
206a4afd76 ref(TS) Convert some components to TS (#13129) 2023-03-30 11:27:53 +03:00
Дамян Минков
570ae81a37 feat: Updates visitors component with new iq messages. (#13125)
* feat: Updates visitors component with new iq messages.

* squash: Fix comments.

* squash: Fix using multiple connect and disconnect.
2023-03-29 15:26:39 -05:00
Jaya Allamsetty
5d0d23ac63 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1607.0.0+28d5f6b2...v1608.0.0+87bce92f
2023-03-29 16:04:56 -04:00
bgrozev
d61295a8a1 chore(deps) lib-jitsi-meet@latest (#13130)
https://github.com/jitsi/lib-jitsi-meet/compare/v1606.0.0+05edc9b5...v1607.0.0+28d5f6b2
2023-03-29 13:49:57 -05:00
Robert Pintilii
a52f9313a6 ref(TS Convert all Abstract classes to TS (#13127) 2023-03-29 12:54:56 +03:00
Robert Pintilii
29945f4809 ref(TS) Improve TS (#13120)
Remove unnecessary @ts-ignore
Fix some TS errors
2023-03-29 10:16:54 +03:00
Robert Pintilii
b942ce9378 ref(TS) Convert some Abstract classes to TS (#13117) 2023-03-29 10:04:23 +03:00
Robert Pintilii
1bf0bd6bca fix(design-system) Remove tokens that are not part of DS (#13122)
Replace tokens with ones that are part of the Design System and are either the same or very similar
2023-03-29 09:20:18 +03:00
damencho
5706d077e2 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1605.0.0+b6a5a8d9...v1606.0.0+05edc9b5
2023-03-28 18:57:02 -04:00
damencho
f1e5903bd1 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1604.0.0+bf79fef6...v1605.0.0+b6a5a8d9
2023-03-28 10:00:21 -05:00
Дамян Минков
397b94da79 feat: Visitors chat (#13112)
* feat(visitors): Visitors chat.

Only live chat is supported, no room history is loaded on visitor nodes.

* feat(visitors): Append display name to promotion requests.

* feat: Indicate visitor's chat messages.

* fix: Fixes preconfigure vnodes script.

* fix: Fixes few cases around routing messages.

Disables private messaging on visitor node and add anonymous name to those visitors without a pre-set name.

* fix: Fixes grouping visitor's messages and some error translations.

* squash: Fixes main.json.
2023-03-28 09:02:43 -05:00
Дамян Минков
649a4ffd46 feat(visitors): Updates mobile to handle redirected conf error. (#13110)
* feat(visitors): Updates mobile to handle redirected conf error.

* squash: Center the buttons when iAmVisitor.

* squash: Enables chat in visitor mode.

* feat: Prints the used lib-jitsi-meet.

* feat: Shows a notification when joining as a visitor.

* fix(notifications): display and fix styles for notifications in tile view

---------

Co-authored-by: Calin-Teodor <calin.chitu@8x8.com>
2023-03-28 08:08:56 -05:00
Calin-Teodor
ba57b1afff fix(filmstrip): hide screenshare indicator if not screen sharing 2023-03-28 13:26:55 +03:00
impocode
d68f1572a3 lang: Update Russian translations (#12979)
Co-authored-by: Дамян Минков <damencho@jitsi.org>
2023-03-27 22:34:36 -05:00
Jaya Allamsetty
8c15e940d8 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1603.0.0+51bda6ff...v1604.0.0+bf79fef6
2023-03-27 10:30:38 -04:00
Robert Pintilii
89c914272c ref: Convert some class components to function components (#13103)
Replace withStyles with makeStyles
2023-03-27 13:40:55 +03:00
Robert Pintilii
c879f5f04d ref(jQuery) Replace some jQuery with JS (#13116) 2023-03-27 13:12:32 +03:00
Robert Pintilii
c307a819f6 ref: Convert some class components to function components (#13107) 2023-03-27 11:54:44 +03:00
Saúl Ibarra Corretgé
123fa6681f fix(notifications) drop no longer used css file (#13100) 2023-03-27 11:37:40 +03:00
Robert Pintilii
46597bd6e7 ref(TS Convert some Abstract classes to TS (#13105) 2023-03-27 11:34:33 +03:00
Robert Pintilii
aae0ffc3b3 fix(share-audio) Fix dialog max-height (#13114) 2023-03-27 11:29:22 +03:00
Robert Pintilii
ce5f7ba317 fix(tooltip) Don't show on small screens (#13113) 2023-03-27 11:29:12 +03:00
Дамян Минков
1c04a41081 fix(visitors): Visitor updates - request to participate (#13106)
* fix(visitors): Updates docs and instructions.

* fix(visitors): Show counter only for main participants.

* fix(visitors): Skip showing the label even for 0 visitors.

It was showing 0 when visitor count down back to 0.

* feat(visitors): Small optimization for jid.split calls.

* fix: Fix skipping properties changed received before conference joined.

* fix(visitors): Propagates newly joined participants to visitor nodes.

* feat(visitors): When iAmVisitor is set, subtract visitor from participants count.

* feat(visitors): Visitors request to participate impl.

Adds option for auto promotion setting which is the only one available at the moment.

* squash: Fix comments.

* squash: Fix default case when vnode is missing.
2023-03-24 11:54:11 -05:00
Jaya Allamsetty
9e33839b31 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1600.0.0+6a7a9acf...v1603.0.0+51bda6ff
2023-03-24 11:00:52 -05:00
Calin-Teodor
ab809875f7 feat(conference): hide status bar on android devices 2023-03-23 16:33:00 +02:00
Robert Pintilii
ac8e088e50 ref(jQuery) Replace some jQuery with JS (#13102) 2023-03-23 13:29:24 +02:00
Robert Pintilii
e95b964b78 ref(TS) Convert some Abstract classes to TS (#13099) 2023-03-23 13:24:57 +02:00
Saúl Ibarra Corretgé
34b2577b97 chore(cleanup) drop no longer needed AtlasKit supporting code 2023-03-23 12:00:14 +01:00
Robert Pintilii
d7cad9d560 feat(prejoin) Update design & refactor (#13089)
Update Dial Out Dialog design
Update Country Picker design
Convert some files to TS
Move styles from SCSS to JSS
Replace atlaskit InlineDialog with Popover in CountryPIcker and Prejoin components
2023-03-23 11:45:29 +02:00
Kazuma Arimura
c6213eb160 fix(lang) update Japanese translation 2023-03-23 10:19:05 +01:00
Vadim S
b5f16c52c9 fix(lang) update Russian translation 2023-03-23 10:15:25 +01:00
Robert Pintilii
78a4f9b792 ref(avatar) Convert to TS (#13092)
Fix imports
Remove unnecessary @ts-ignore
2023-03-23 10:26:19 +02:00
Saúl Ibarra Corretgé
0792d89c46 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1598.0.0+4733465e...v1600.0.0+6a7a9acf
2023-03-22 13:29:21 +01:00
Robert Pintilii
09426643cf fix(welcome-page) Fix function name (#13097) 2023-03-22 12:24:53 +02:00
Calinteodor
1d119cbd36 feat(filmstrip): updated styles and moved raised hand count to the right (#13094) 2023-03-21 21:30:30 +02:00
Robert Pintilii
3dd9a303c3 ref(abstract-button) Convert to TS (#13093) 2023-03-21 19:34:02 +02:00
Robert Pintilii
31073fb5df fix(polls) Fix style issue (#13090) 2023-03-21 17:25:47 +02:00
Robert Pintilii
bc1827fb4a ref(TS) Convert some Abstract classes to TS (#13095) 2023-03-21 17:14:17 +02:00
Robert Pintilii
aeeca7c343 fix(device-picker) Close the picker when the other one opens (#13091) 2023-03-21 14:46:53 +02:00
Calin-Teodor
a7fa33286d feat(prejoin): decreased height for bottom container 2023-03-21 11:12:44 +02:00
Robert Pintilii
754f658489 ref(redux) Remove connect wrapper (#13083) 2023-03-21 09:47:52 +02:00
Jaya Allamsetty
679711534a chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1595.0.0+5155e550...v1598.0.0+4733465e
2023-03-20 16:56:09 -04:00
nomadbyte
238bd46480 fix(lang) update Ukrainian translation 2023-03-19 07:43:59 +01:00
Hristo Terezov
e4d4bec175 fix(remote-control):Pin the control participant SS 2023-03-17 14:12:40 -05:00
damencho
2b3fbaa360 fix: Returns source names only for existing participants.
There are cases when participant is left and still we receive a track added. In this occasions for screensharing sources a virtual participant is created for non-existing participant.
2023-03-17 13:54:22 -05:00
Tipuch
8949753874 fix(external_api) fix linking to the Jitsi mobile application 2023-03-17 19:23:00 +01:00
Hristo Terezov
16115a3a16 fix(large-video):Dont elect participants that left 2023-03-17 09:59:27 -05:00
Calin-Teodor
7c17d80ae8 feat(filmstrip): thumnail indicators ui updates 2023-03-17 14:39:22 +02:00
Robert Pintilii
511548060a fix(speaker-stats) Change icon (#13074) 2023-03-17 14:20:14 +02:00
Robert Pintilii
00780929e5 feat(tooltip) Create and move to our component (#13061)
Create Tooltip component
Fix Popover positioning calculations
Add margins to popover
Remove @atlaskit/tooltip
Update all components to use the new Tooltip component

Added tooltip actions and reducers for the following functionality: when a user hovers over an element is sees the tooltip for that element and then hovers another element that has a tooltip, instead of using the delay and animations we just unmount the current tooltip and mount the next one immediately
2023-03-17 12:23:51 +02:00
Robert Pintilii
a89f762a66 fix(conference-timer) Show correct time (#13070)
Show meeting time after returning from breakout room
2023-03-17 12:23:20 +02:00
Saúl Ibarra Corretgé
82a03c36c6 deps(rn) react-native@0.68.6
Final minor update to 0.68: https://github.com/facebook/react-native/releases/tag/v0.68.6
2023-03-17 09:44:28 +01:00
Robert Pintilii
7968578a25 fix(notification) Fix overflow issue (#13068)
When displaying a long URL break it into multiple lines
2023-03-17 10:25:52 +02:00
Duduman Bogdan Vlad
62b6411bb6 feat(webhid) - add webhid feature flag (#13071) 2023-03-17 10:24:29 +02:00
Robert Pintilii
b3bce9e5ae fix(audio-picker) Fix max height (#13069) 2023-03-17 09:54:27 +02:00
Christoph Settgast
ed37bedee2 lang: update German translation (#13065) 2023-03-16 22:22:18 +01:00
Jaya Allamsetty
2182a1e452 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1592.0.0+6afb0a56...v1595.0.0+5155e550
2023-03-16 16:40:45 -04:00
Calinteodor
4eea924c02 feat(mobile/navigation): fixed close button size (#13063) 2023-03-16 17:53:31 +02:00
Saúl Ibarra Corretgé
de3b6d2a9f feat(noise-suppression) add support for Krisp 2023-03-16 14:50:47 +01:00
Horatiu Muresan
2a090d8034 fix(welcome-header) Fix and improve welcome page header (#13056)
- small refactor
2023-03-16 12:50:59 +02:00
Calinteodor
238def34cf feat(conference): dismiss calendar notification (#13050)
* feat(conference): created action that dismisses calendar notification
2023-03-16 12:17:57 +02:00
Robert Pintilii
43c4ec0808 feat(avatar) Update style (#13019) 2023-03-16 10:20:16 +02:00
Duduman Bogdan Vlad
7910554625 feat(thumbnail,filmstrip) - remove tint from owner screenshare participants (#12944) 2023-03-16 08:59:43 +02:00
Jaya Allamsetty
56d2af197e fix(thumbnail) Fix broken video for thumbnail.
Fixes a regression introduced by 466a36dc93
2023-03-15 17:36:52 -04:00
Jaya Allamsetty
466a36dc93 fix(test) Switch to using 'streamingStatus' on the track for checking… (#13055)
* fix(test) Switch to using 'streamingStatus' on the track for checking if video is received

* fix lint error
2023-03-15 11:24:36 -04:00
Calinteodor
1fc5d6e97e feat(notifications): NotificationsContainer native updates (#13047)
feat(notifications): NotificationsContainer native updates
2023-03-14 19:53:55 +02:00
robertpin
7156df5b99 feat(notifications) Use our own component
Use our component instead of atlaskit
Implement redesign
Add unmount animation
Change mount animation from external lib to CSS
Remove @atlaskit/flag
Remove react-transition-group
Add unmount animation on native
Remove AbstractNotification
2023-03-14 15:18:11 +02:00
Calin-Teodor
2c8c98aaf3 feat(filmstrip): fix indicators size 2023-03-14 14:07:59 +02:00
Horatiu Muresan
afcedd0f3c fix(prejoin) Fix prejoin toolbar buttons 2023-03-14 13:02:22 +02:00
Paweł Domas
f253939f28 fix(useVideoStream): a crash after GUM failure (#13040)
Fixes a crash which happens after GUM fails without any
track previosuly created.

Steps to reproduce:

1. Join a meeting without camera.
2. Disable camera access permissions in the browser.
3. Try to use the camera button.
2023-03-13 21:09:46 -05:00
José Luís Andrade
98cba457f2 fix(lang) update Portuguese translation 2023-03-13 20:18:47 +01:00
Calinteodor
f7e7750cfb fix(base/ui): Buttons fix for accessibility large text (#13036)
* feat(base/ui): native ui updates
2023-03-13 16:40:14 +02:00
Calin-Teodor
d9749f3da6 feat(recording/LiveStream): native ui updates 2023-03-13 14:20:57 +02:00
Emmanuel Pelletier
45b7f53294 Improve usability of toggled button labels (#12426)
* feat(a11y) buttons can now have toggled-aware a11y labels
2023-03-13 10:19:28 +02:00
Jaya Allamsetty
27765b47d7 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1590.0.0+0b9ab37c...v1592.0.0+6afb0a56
2023-03-10 14:56:27 -06:00
Jaya Allamsetty
185e9d4f58 fix(AudioTrack): Reattach the track to the audio element on error.
Audio playback for a remote participant doesn't happen when the browser fires an error event on the audio element that the audio track is attached to.
'[modules/RTC/JitsiRemoteTrack.js] <._containerEventHandler>:  error handler was called for a container with attached RemoteTrack'
Log an error when that happens and try to re-attach the audio track and execute play on it as a potential fix.
2023-03-10 14:19:55 -06:00
damencho
39991da2cf fix: Updates gapi to use new google identity service.
fix: Updates gapi to use new google identity service.
2023-03-10 17:51:22 +02:00
Damien Fetis
f968d5e70a fix(lang) update french translation 2023-03-10 16:49:09 +01:00
Saúl Ibarra Corretgé
f846eb9234 deps(rn) update react-native-webrtc to 106.0.7
Fixes a bug setting encoding parameters so layer bitrate can be
adjusted.
2023-03-10 16:05:19 +02:00
Robert Pintilii
126b0d385f feat(ui-components) Create Spinner component (#13026)
Replace atlaskit Spinner with the new component
Remove @atlaskit/spinner
2023-03-10 15:35:55 +02:00
Robert Pintilii
306c979adb ref(notifications) Update icons (#13025)
Replace @atlaskit icons with our own
Convert some files to TS
Remove @atlaskit/icons
2023-03-10 14:11:31 +02:00
Calinteodor
99d6012743 feat(conference): calendar updates (#13020)
* fix(conference): resolved undefined error for calendar events and updated SecondaryAction button
2023-03-10 10:45:13 +02:00
Robert Pintilii
a94ba85a98 ref(settings-dialog) Refactor styles (#13017)
Remove unused styles
Move some styles to their tab
Convert CalendarTab to TS
Fix mobile styles
2023-03-10 10:16:43 +02:00
Joan Montané
f618194587 lang: Update main-sc.json (#12598) 2023-03-09 21:06:30 -06:00
Joan Montané
e9c4774695 lang: Update main-ca.json (#12597) 2023-03-09 19:59:57 -06:00
Antti Lämsä
6421df7fa0 lang: Update Finnish translations (#12678)
* Update Finnish translations

* Add few more finnish translations

---------

Co-authored-by: antti <antti.lamsa@solidabis.com>
2023-03-09 17:32:53 -06:00
damencho
4ffc2bca5f fix: Fixes video unmuting in case of av moderation. 2023-03-09 17:02:30 -06:00
Besnik Bleta
79a252652c lang: Update for sq locale translation (#12665)
* Adding sq translation

* Adding sq to languages.json

* Updating sq translation

* Fixing missing commas and updating string changes

* Fixing unclosed quotes

* Updating sq translation

* Updating sq translation

* Typo fixing; removing and adding commas to make the .json file valid

* Another comma missing fix

* Sorting entries aphabetically

* More sorting…

* More entry sorting

* Adding a missing space

* Adding spaces

* Get rid of an extra period

* Update for sq locale

* Update main-sq.json

* Update main-sq.json

* Update main-sq.json

* Update main-sq.json

* Update main-sq.json
2023-03-09 17:02:19 -06:00
Jaya Allamsetty
9eddb71e92 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1589.0.0+d43c349d...v1590.0.0+0b9ab37c
2023-03-09 14:16:03 -05:00
Calin-Teodor
ac65b23ccf fix(overlay): fixed undefined error on web 2023-03-09 09:24:49 -06:00
Calinteodor
1f6483daae feat(calendar-sync): refactored ConferenceNotification (#12945)
* feat(calendar-sync): converted ConferenceNotification to a notification
2023-03-09 15:59:31 +02:00
Robert Pintilii
c8ecd47ff5 fix(virtual-background) Style fix (#13016) 2023-03-09 14:46:09 +02:00
Saúl Ibarra Corretgé
50885e258c fix(settings) use new moderator icon 2023-03-09 13:20:44 +01:00
Robert Pintilii
164d305528 fix(native) Move function to web file (#13014) 2023-03-09 14:10:42 +02:00
Saúl Ibarra Corretgé
183de81a57 feat(ci) build mobile bundles as part of the CI
This will help catch bugs such as bogus imports that would trigger a
mobile bundle failure.
2023-03-09 12:20:50 +01:00
Boris Grozev
e12999d44f chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1588.0.0+04e906cc...v1589.0.0+d43c349d
2023-03-08 11:16:05 -05:00
Robert Pintilii
8982f17ce1 feat(virtual-background) Move dialog to SettingsDialog tab (#13005)
Implement redesign
2023-03-08 13:15:07 +02:00
Robert Pintilii
c8f1690057 ref(feedback-dialog) Update design (#12926)
Convert file to TS
Move styles from SCSS to JSS
2023-03-08 12:46:10 +02:00
Robert Pintilii
aa57309057 ref(more-tab) Update design on SettingsDialog More tab (#13006) 2023-03-08 10:40:40 +02:00
damencho
fb81619fc5 fix: Fixes muc rate limit to fire occupant-pre-join.
If any handler returns a value (that isn't nil) then processing will halt and that value will be returned.
2023-03-07 18:54:06 -06:00
Hristo Terezov
5a5656020b fix(e2ee): enabled/supported flags calculation. 2023-03-07 15:36:47 -06:00
Hristo Terezov
0ff44a2f22 fix(participants-reducer):old particpant selection 2023-03-07 15:36:47 -06:00
Hristo Terezov
4d04ea325e fix(everyoneIsModerator): Optimize. 2023-03-07 15:36:47 -06:00
Hristo Terezov
42ce6dcc58 fix(e2ee): Optimize. 2023-03-07 15:36:47 -06:00
Hristo Terezov
b033d0268a fix(speaker-stats): dispatch action only on change 2023-03-07 15:36:47 -06:00
Hristo Terezov
4aea40d34f fix: Batch actions. 2023-03-07 15:36:47 -06:00
Hristo Terezov
e5a170fb28 fix(Filmstrip): Use id for localScreenShare. 2023-03-07 15:36:47 -06:00
Hristo Terezov
d1cf5578fc fix(avatar): Remove unnecessary code. 2023-03-07 15:36:47 -06:00
Hristo Terezov
4b29af6b5f fix(lastN): Update only if neccessary. 2023-03-07 15:36:47 -06:00
bgrozev
f3481576ff doc: Document new bridgeChannel options. (#13010) 2023-03-07 14:21:41 -06:00
bgrozev
455a91a5c6 chore(deps) lib-jitsi-meet@latest (#13009)
https://github.com/jitsi/lib-jitsi-meet/compare/v1586.0.0+df2c3096...v1588.0.0+04e906cc
2023-03-07 13:44:42 -06:00
Gabriel Borlea
297ab194a8 fix(dialog-portal): set z-index to high value (#13004) 2023-03-07 16:39:27 +02:00
Christoph Settgast
077a88a803 lang: update German translation (#13000) 2023-03-07 08:17:41 +01:00
Gabriel Borlea
02c232440e fix(av-moderation): buttons for participants pane (#12977)
* fix(av): buttons for participants pane

* fix tests

* fix lint

* rename cliked from participant pane
2023-03-06 11:05:26 -06:00
Emmanuel Pelletier
f727b9295f Use tabs ARIA design pattern when using tabbed UI (#12994)
feat(a11y): use tabs ARIA design pattern when using tabbed UI
2023-03-06 17:13:29 +02:00
Robert Pintilii
0d0bec3aad feat(device-selection) Separate Devices into Audio and Video in Settings (#12987)
Create separate tabs for Audio and Video in the Settings Dialog
Move some settings from the More tab to Audio/ Video tab
Implement redesign
Convert some files to TS
Move some styles from SCSS to JSS
Enable device selection on welcome page
2023-03-06 15:14:52 +02:00
Emmanuel Pelletier
cfb8589bef Use focus-visible for some focus styles to fix a11y issues (#12968)
feat(a11y): fix-focus-styles
2023-03-06 12:39:46 +02:00
japm48
65730e256e fix(lang) update Spanish translation 2023-03-04 15:41:39 +01:00
Robert Pintilii
7b8b911fee feat(shortcuts) Update dialog (#12993)
Create Shortcuts tab in Settings Dialog
Move keyboard shortcut option from More to this tab
Move shortcuts info from KeyboardShortcuts dialog to this tab
Remove KeyboardShortcuts dialog
2023-03-03 13:48:17 +02:00
Robert Pintilii
036286a1d6 feat(notification-settings) Update Sounds tab in Settings Dialog (#12990)
Rename from Sounds to Notifications
Move Notifications settings from More tab to this tab
2023-03-03 12:53:39 +02:00
Robert Pintilii
d550254f31 ref(moderator-settings) Update Moderator tab in Settings Dialog (#12991)
Update design
2023-03-03 11:48:00 +02:00
Robert Pintilii
b1a71d55d7 feat(profile-tab) Update Profile tab in Settings Dialog (#12992)
Implement redesign
Move some options from More to this tab
2023-03-03 10:42:59 +02:00
George Politis
17ed45799c feat: Sends the statisticsDisplayName to rtcstats. 2023-03-02 19:34:25 +01:00
Jaya Allamsetty
e5681382b0 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1585.0.0+362d1b2c...v1586.0.0+df2c3096
2023-03-01 20:58:55 -05:00
Robert Pintilii
c27cb25afe chore(deps) Upgrade eslint (#12981) 2023-03-01 13:30:43 +02:00
Avram Tudor
baf5aa14e8 feat(devices) scroll overflow devices texts on hover (#12974) 2023-03-01 09:38:26 +02:00
Horatiu Muresan
29b6ce7721 fix(numbers-list) Re-add sip svg 2023-02-28 11:53:26 -06:00
Mihaela Dumitru
4f95c45e50 fix(ui) change streaming icon background + add tooltip (#12973) 2023-02-28 16:52:33 +02:00
Emmanuel Pelletier
72dd609247 feat(a11y) add headings across the app for easier screen reader nav (#12427)
feat(a11y): added headings across the app for easier screen reader nav
2023-02-28 16:52:06 +02:00
Horatiu Muresan
fed74afffe fix(sound-settings) Disable checkbox for disabled sounds (#12976) 2023-02-28 16:47:00 +02:00
Mihaela Dumitru
204f34cccb fix(pinning) Fix whiteboard pinning behavior when stage filmstrip is enabled (#12966) 2023-02-28 14:44:37 +02:00
Emmanuel Pelletier
c81777a475 Make (most) UI elements reachable via keyboard (#12657)
feat(a11y): make (most) UI elements reachable via keyboard
2023-02-28 12:21:15 +02:00
Horatiu Muresan
778bca3031 fix(always-on-top) Show participant`s avatar (#12967) 2023-02-27 16:20:40 +02:00
Avram Tudor
336fa304ce feat(notifications) trigger iframe api event when a notification occurs (#12952)
* feat(notifications) trigger iframe api event when a notification occurs

* remove useless comment

* fix typo
2023-02-27 15:31:54 +02:00
damencho
f14b69166c fix: Fixes visitors count when the data is missing. 2023-02-24 11:44:31 -06:00
Calin-Teodor
e405595a11 feat(notifications): moved notifications to the bottom of the screen 2023-02-24 17:22:55 +02:00
zobadaniel
cabe48d66a lang: Add lower sorbian translation (#12947)
* add lower sorbian translation

* adjustments after using update-translation.js

* adjustments after running lint

* add translation into language list
2023-02-24 09:04:06 -06:00
Duduman Bogdan Vlad
8d7f46024b feat(webhid) - add integration webhid telephony device (#12904) 2023-02-24 16:37:30 +02:00
damencho
d7f6c2bbf0 feat: Introduces iAmVisitor mode. 2023-02-24 07:51:47 -06:00
damencho
3c69645169 feat(mobile): Adds visitors count. 2023-02-24 07:51:47 -06:00
damencho
abe2fa4dd4 feat: Adds visitors count in conference info. 2023-02-24 07:51:47 -06:00
damencho
863fd12488 feat: Hide self-view and buttons in visitors mode. 2023-02-24 07:51:47 -06:00
damencho
50c4748d40 feat: Adds visitors count in participants pane. 2023-02-24 07:51:47 -06:00
damencho
f83840a3bc feat: Adds initial impl of visitors feature. 2023-02-24 07:51:47 -06:00
damencho
1466d7d149 fix: Always normalizes bosh config. 2023-02-24 07:51:47 -06:00
Calinteodor
d0fe034db5 feat(base/dialog): visibility control for PageReloadDialog (#12961)
* feat(base/dialog): visibility control for  PageReloadDialog
2023-02-24 13:51:27 +02:00
Дамян Минков
8225f5e363 feat: Drops external connect optimization. (#12958)
* feat: Drops external connect optimization.

A bosh only optimization which is no longer used and does not bring any significant value when measured.

* squash: Updates ljm.
2023-02-24 08:59:00 +01:00
Saúl Ibarra Corretgé
c641835d0f fix(virtual-background) don't disable uploads
Even when images are provided via dyamic branding.

Fixes: https://github.com/jitsi/jitsi-meet/issues/12941
2023-02-23 16:41:27 +01:00
Horatiu Muresan
35ee92869f feat(deeplinking) Refactor deeplinking (#12950)
- redesign deeplinking mobile page, desktop page and dial in number page
- now dial in number page is an entry point in app.bundle.
2023-02-23 17:01:55 +02:00
Stefan Plücken
9b7a5ffdd1 fix(reservations): fixes errors not being displayed when reservation system returns error. removed translations applied twice. (#11144) 2023-02-23 08:52:54 -06:00
Calin-Teodor
581c2e621c feat(notifications): fix width for notifications on all devices 2023-02-23 16:39:19 +02:00
Mihaela Dumitru
f3117f3037 fix(video-layout) get pinned participant from payload to determine pinning behavior (#12951) 2023-02-23 14:41:29 +02:00
Saúl Ibarra Corretgé
877ef58dfb deps(rn) react-native-webrtc@106.0.6
Fixes to SDP negotiation and transceiver lifetime.
2023-02-23 13:08:49 +01:00
Calinteodor
19e61747b8 feat(notifications): small ui updates (#12943)
* feat(notifications): small ui updates
2023-02-23 11:49:26 +02:00
Calinteodor
b4bf363237 feat(lobby): deleted knocking participant api event (#12940)
feat(lobby): make sure that that the knocking participant event is always fired
2023-02-21 13:55:03 +02:00
Calinteodor
f8af9c4fae feat(notifications): native UI updates (#12798)
* feat(notifications): native notifications UI updates
2023-02-21 11:26:04 +02:00
Nitish Kumar
9fa426d97f fix(ParticipantsCounter)fixup badge style 2023-02-21 10:17:22 +01:00
Yash-Ambekar
e3c95e376a fix(toolbar) Removed width from toolbar (#12935) 2023-02-20 20:29:57 +02:00
Calinteodor
00ed794c50 feat(mobile/navigation): reload now navigates to conference (#12919)
* feat(mobile/navigation): navigate back to same room when reload now is initiated
2023-02-17 17:40:01 +02:00
Saúl Ibarra Corretgé
b52d5629e2 chore(deps) remove unused dependencies 2023-02-17 15:03:55 +01:00
Horatiu Muresan
9d8e646d4e fix(lobby) Fix lobby inputs (#12930) 2023-02-17 15:34:45 +02:00
Horatiu Muresan
850c0b97e4 chore(recording-notif) Show sticky notif for copy recording link (#12928) 2023-02-17 14:24:39 +02:00
Robert Pintilii
87035d0812 ref(deps) Remove atlaskit/tabs (#12927) 2023-02-17 13:36:00 +02:00
Robert Pintilii
ef0168c9ff ref(dialog) Remove atlaskit dialog (#12925) 2023-02-17 12:53:14 +02:00
Robert Pintilii
df1a5a25d4 ref(desktop-picker) Replace atlaskit tabs with our component (#12910)
Fixes wrong focus on desktop picker dialog
2023-02-17 11:34:47 +02:00
Robert Pintilii
c424884201 ref(settings-dialog) Update to use new Dialog component (#12912)
* ref(settings-dialog) Update to use new Dialog component

Created new DialogWithTabs component
Refactored Dialog into Dialog and BaseDialog
Updated dialog functionality on mobile
2023-02-17 11:34:30 +02:00
Дамян Минков
0a464a5223 feat: Avoids joining participants before jicofo is in the room. (#12923)
* feat: Avoids joining participants before jicofo is in the room.

* squash: Move away from global hook to be able to use it per muc component.
2023-02-16 18:16:43 -06:00
Horatiu Muresan
8cd62bc132 fix(external-api) Unpin all participants when participant id is null (#12921) 2023-02-16 18:14:10 +02:00
Jaya Allamsetty
123a74b38b fix(video-quality) Add pinned participants to selectedSources.
When mulltiple videos are pinned to the stage filmstrip, the expectation is that the bridge will forward all the videos even if they are of lower quality. For this, the video sources need to be added to selectedSources instead of onStageSources.
2023-02-16 10:36:22 -05:00
Christoph Settgast
dbeca806bb lang: update German translation 2023-02-15 14:03:20 -06:00
Jaya Allamsetty
f790d3e3ed chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1582.0.0+829f5ac0...v1583.0.0+931ca368
2023-02-15 13:59:05 -05:00
Horatiu Muresan
a12f7fc4d2 fix(follow-me-pinning) Fix pin/unpin when follow-me (#12911) 2023-02-15 19:08:08 +02:00
Gabriel Borlea
456ce38a10 fix(context-menu): set height for context menu when it does not have enough space at top 2023-02-15 19:06:57 +02:00
Gabriel Borlea
72ef1668f2 fix(video-background): set dialog add button margin to right size 2023-02-15 19:06:57 +02:00
Jaya Allamsetty
fce8f52574 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1578.0.0+5855ca72...v1582.0.0+829f5ac0
2023-02-15 09:15:01 -05:00
Titus Moldovan
8fcfd7a308 fix(rn) makes the preferedCode vp8 and enabled p2p 2023-02-14 16:40:38 +01:00
Saúl Ibarra Corretgé
04a41395c8 fix(notifications) remove dead code 2023-02-14 11:51:47 +01:00
Robert Pintilii
18e8201167 fix(participants-counter) Style fix (#12907) 2023-02-14 12:40:29 +02:00
Robert Pintilii
27b8794d8c feat(video-picker) Redesign (#12902)
Convert some files to TS
Implement redesign
Add Virtual background and Flip video to picker menu
2023-02-14 12:15:37 +02:00
Calinteodor
3cb0df579c feat(overlay): native page reload dialog (#12667)
feat(overlay): native feature removal + replaced PageReloadOverlay with PageReloadDialog
2023-02-14 11:50:46 +02:00
Robert Pintilii
22ded30b61 feat(audio-menu) Redesign audio picker menu (#12899)
Convert some files to TS
Remove unnecessary files
Implement redesign
Add noise suppression to picker menu
Fix Popover placement on browser resize
2023-02-13 16:01:08 +02:00
Robert Pintilii
533deea5fd ref(password-required) Update component to use new Dialog (#12900)
Convert component to TS
2023-02-13 15:47:42 +02:00
Saúl Ibarra Corretgé
46c6d1057d fix(ios) avoid getting duplicated SDK events
UIView has 2 designated initializers: initWithFrame and initWithCoder,
which means either of them is going to be called, whatever the
constructor.

THus overriding init will cause creating new (and unnecessary)
observers.

Ref: https://community.jitsi.org/t/duplicate-delegate-calls/121051/6
Fixes: https://github.com/jitsi/jitsi-meet/issues/12892
2023-02-13 14:20:44 +01:00
Titus Moldovan
45aa53b1a6 chore(rn) updates react-native-gesture-handler 2023-02-13 15:11:31 +02:00
damencho
7d65123495 fix: Drop unused dependency. 2023-02-13 06:48:53 +01:00
Maria Mironova
e1ac000cd1 fix(chat) keep avatar width inside flex container (#12891)
Co-authored-by: Maria Mironova <maria@example.com>
2023-02-10 14:31:11 +02:00
Saúl Ibarra Corretgé
f98036efa1 fixup! 2023-02-09 16:38:03 +01:00
Saúl Ibarra Corretgé
23aeafcc93 fixup! 2023-02-09 16:38:03 +01:00
Saúl Ibarra Corretgé
0ffe2c2c87 fixup! 2023-02-09 16:38:03 +01:00
Saúl Ibarra Corretgé
dec58afe46 feat(icons) add new moderator icon 2023-02-09 16:38:03 +01:00
Mihaela Dumitru
2aa770e532 feat(config) add flag to disable lobby password & group lobby config flags (#12793) 2023-02-09 14:46:25 +02:00
Gabriel Borlea
1a113ba733 feat: add custom buttons for participant menu and toolbar via config (#12832)
* add custom remote menu button

* add config for custom buttons

* whitelist custom buttons flag

* add toolbox custom button

* fix notify toolbox buttons

* whitelist toolbar custom buttons

* rename and fix notify

* rename participant remote menu

* revert some flag wrong changes

* fix some formatings

* add undefined type to custom buttons toolbox

* code review

* code review 2

* fix linting issue
2023-02-09 13:12:00 +02:00
dependabot[bot]
3a5833829c chore(deps): bump @sideway/formula from 3.0.0 to 3.0.1
Bumps [@sideway/formula](https://github.com/sideway/formula) from 3.0.0 to 3.0.1.
- [Release notes](https://github.com/sideway/formula/releases)
- [Commits](https://github.com/sideway/formula/compare/v3.0.0...v3.0.1)

---
updated-dependencies:
- dependency-name: "@sideway/formula"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-09 10:36:48 +01:00
Priyanshu Sharma
e6d1f039d2 fix(participant-count) Fix mobile style (#12880) 2023-02-09 10:10:16 +02:00
Horatiu Muresan
fef78152e1 fix(remote-control) Add some missing key codes for numpad (#12879) 2023-02-07 17:00:59 +02:00
Mihaela Dumitru
84221c5c13 feat(dialout) check appId for permission to call outbound destination (#12871) 2023-02-07 16:18:27 +02:00
Calinteodor
3e59359563 feat(base/icon): removed burger icon (#12876)
* feat(base/icons): removed unused icon
2023-02-07 13:02:15 +02:00
Calin-Teodor
e69db9b878 feat(participants-pane): removed unused action 2023-02-07 12:40:35 +02:00
Robert Pintilii
ae7e441e21 fix(context-menu) Minor style fixes (#12874) 2023-02-07 12:05:46 +02:00
Robert Pintilii
6b8afbcceb fix(filmstrip) Minor style fixes (#12870) 2023-02-07 10:10:28 +02:00
José Luís Andrade
d712a565f8 lang: Update Portuguese translation (#12647)
* Update Portuguese translation

* Small fix in the translation

* Add new update

* feat(audioOnly) translation

* chore(welcome-page) translation

* translate "noMicPermission"
2023-02-03 11:41:11 -06:00
Saúl Ibarra Corretgé
36bfbeb81d fix(etherpad) avoid using deprecated property 2023-02-03 15:52:26 +01:00
Saúl Ibarra Corretgé
e7b16b0daf fix(etherpad) fix CORS issues
Avoid modifying the iframe. We don't really need to bubble up mouse
events anymore since the Etherpad frame won't overlap with the toolbar
or filmstrip, so when the user moves over those areas it will just show
up.
2023-02-03 15:52:26 +01:00
Saúl Ibarra Corretgé
92a891e7d3 chore(rn,deps) react-native-webrtc@latest
Brings back Metal rendering and other SDP negotiation improvements.
2023-02-03 13:34:10 +01:00
Robert Pintilii
09e4696c60 feat(title-bar) Update design (#12851)
Convert some files to TS
Move some styles from SCSS to JSS
Update design
2023-02-03 13:31:00 +02:00
Robert Pintilii
a594aac078 fix(toolbar) Fix styles (#12863) 2023-02-03 13:30:38 +02:00
Saúl Ibarra Corretgé
9409e64066 fix(deps) remove nunused dependencies 2023-02-03 11:57:22 +02:00
Robert Pintilii
12318db4c7 fix(local-rec) Handle no mic permission (#12862) 2023-02-03 11:34:07 +02:00
Shawn
749c26b74c fix(toolbox): consistent color of hangup buttons 2023-02-02 15:55:17 +01:00
Robert10B
babe62eb6d fix(lang) updated Dutch translation 2023-02-02 13:50:25 +01:00
Robert Pintilii
fbc0a502e7 ref(TS) Improve TS (#12656) 2023-02-02 13:12:31 +02:00
Shawn
ab262ec8b1 fix(toolbox): do not show hangup menu for non-moderators 2023-02-02 10:50:15 +01:00
Maciej Zakrzewski
cced41665d fix(local-recording) after IFrame sandboxing
Fix local recording saving not working after IFrame sanbox introduciton. The allow-downloads flag was missing.
2023-02-02 10:45:48 +01:00
Mihaela Dumitru
f95e167779 feat(giphy) add sample resource for giphy-proxy 2023-02-02 10:30:40 +01:00
damencho
bf1b7cc856 fix: Fixes follow-me on the side that is screen sharing. 2023-02-01 07:12:15 -06:00
damencho
091e3f69dc fix: Fixes follow-me when there is a screenshare. 2023-01-31 08:40:56 -06:00
Horatiu Muresan
42868c9ec2 fix(context-menu) Fit the overflow menu on small heights (#12848) 2023-01-31 15:19:01 +02:00
Robert Pintilii
0d5dae7ab9 feat(prejoin) Update design (#12844) 2023-01-30 13:34:56 +02:00
Calin-Teodor
992bf47850 feat(polls/native): changed remove option button color to match web 2023-01-30 13:09:52 +02:00
Robert Pintilii
4f34a576d0 feat(polls) Redesign (#12838)
Convert files to TS
Move styles from SCSS to JSS
Implement redesign
2023-01-30 11:35:21 +02:00
Robert Pintilii
921f3ee8cd fix(chat) Break long text in multiple lines (#12842) 2023-01-30 10:48:17 +02:00
Horatiu Muresan
42838e756c fix(self-view) Hide self view when alone in meet as well (#12831) 2023-01-27 16:30:47 +02:00
Werner Fleischer
e6eba3536a feat(ci): using .luacheckrc 2023-01-27 10:59:07 +01:00
Gabriel Borlea
74bdb7bc3f fix(face-landmarks): set session id for webhook using method (#12834) 2023-01-26 23:00:25 +02:00
Mihaela Dumitru
192187db32 feat(config/giphy) add proxyUrl config for giphy requests (#12816) 2023-01-26 16:12:12 +02:00
Saúl Ibarra Corretgé
5dce74e21d fix(external-api) fix sending forms after introduction of sandbox
Ref: https://github.com/jitsi/jitsi-meet-electron/issues/837
2023-01-26 11:36:58 +01:00
Hristo Terezov
fd7b6f457e fix(Thumbnail):limit the size of the avatar to 200 2023-01-26 09:18:25 +02:00
Kirat
2bf3089dbf Fixed overflow of popover (#12814) 2023-01-25 19:09:55 +01:00
Calin-Teodor
d396727e39 feat(base/lib-jitsi-meet): fixed build failing from bad import 2023-01-25 17:30:13 +02:00
Horatiu Muresan
3e58cd8af3 feat(narrow-layout) Use drawer menus on desktop narrow mode (#12799) 2023-01-25 17:02:26 +02:00
Robert Pintilii
cf7e692186 fix(recording-dialog) Fix switch UI (#12826) 2023-01-25 10:45:40 +02:00
Jaya Allamsetty
5e90e72562 Feat ssrc rewriting (#12408)
Use a fixed set of remote tracks for a call based on the ssrc-limit set in jvb config. When this feature is enabled, JVB will signal the audio and video SSRCs and their owner/endpoint info using a bridge channel message. For audio, the mappings are determined based on the energy rankings on the audio sources present in the call and for video, the mappings are calculated based on the video sources the client requests through the video receiver constraints.
Remote tracks are then created/remapped by the client based on these mappings.

* Added track_owner_changed action
* Skip track-based large-video selection in rewriting mode.
* Register OWNER_CHANGED handler at track level.
* feat(participants) Add source info to participants in redux.
With ssrc-rewriting, the receiver constraints need to be generated using the source info received in presence. Currently they are generated from the track info in redux but with ssrc-rewriting, remote sources are not signaled and therefore created until they are being requested through receiver constraints.

Co-authored-by: James A <jqdrqgnq@users.noreply.github.com>
2023-01-24 13:58:58 -05:00
Jaya Allamsetty
cbae997eda chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1577.0.0+5713cb0d...v1578.0.0+5855ca72
2023-01-24 13:51:03 -05:00
Jaya Allamsetty
6bd9a6bd15 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1574.0.0+4d6873c2...v1577.0.0+5713cb0d
2023-01-24 10:18:43 -05:00
Werner Fleischer
e8bd75b2d1 fix(breakout-room, rn): joining room 2023-01-24 15:02:23 +01:00
emrah
46f1cb7b4b feat(ci) add luacheck 2023-01-24 14:58:43 +01:00
Christian Tietze
60dd26c13b fix(conferendce-timer) use "monospace" digits 2023-01-24 14:58:02 +01:00
robertpin
8e1d96cc48 feat(chat) Redesign chat
Move some styles from SCSS to JSS
Convert some files to TS
Implement redesign
2023-01-24 14:56:27 +01:00
Matthieu D
e3166e6faa fix(lang) updated Esperanto 2023-01-24 14:47:08 +01:00
robertpin
6de306e46e feat(participants) Add count badge to toolbar button
Update title bar button: ParticipantsCountLabel -> SpeakerStatsLabel. Only show button when speaker stats is enabled
Add badge to the participants pane button to show participants count
2023-01-24 14:46:33 +01:00
W0olFy
8e91851a2f fix(authentication) don't hide the dialog until auth has completed 2023-01-24 14:41:37 +01:00
Calin-Teodor
0251201e93 feat(settings/native): changed FormSectionAccordion.js to FormSection.tsx 2023-01-24 14:17:22 +01:00
Saúl Ibarra Corretgé
9775ad25ca feat(wifistats) drop support for WiFiStats 2023-01-23 19:39:24 +01:00
Saúl Ibarra Corretgé
da5e19fa98 fix(external-api) fix no longer allowing popups
These are used by the Electron app to open links in the chat, for
example.
2023-01-23 19:06:51 +01:00
Robert Pintilii
a5ddcab084 fix(local-rec) Reset max size on recording stop (#12815) 2023-01-23 11:15:28 +02:00
Robert Pintilii
2c59b44df5 fix(external-api) Don't check recording service for live streaming (#12807) 2023-01-20 11:44:29 +02:00
Horatiu Muresan
507d883503 fix(dialog) Make sure dialog fits in the available height (#12803) 2023-01-19 15:30:17 +02:00
Saúl Ibarra Corretgé
a7b25d6d7b ref(external-api) set ifrma source last
Make sure the ifrme is fully configured before setting the source URL
and thus triggering the load.
2023-01-19 14:11:29 +01:00
Saúl Ibarra Corretgé
43b91b16da feat(external-api) sandbox the iframe
Give it the minimum amount of permissions necessary to run.
2023-01-19 14:11:29 +01:00
Saúl Ibarra Corretgé
726fd3f8a1 fix(config,debian) fix multistream backwards compatibility
Fixes: https://github.com/jitsi/jitsi-meet/issues/12788
2023-01-17 08:41:03 -06:00
Saúl Ibarra Corretgé
817a05cf7b fix(deep-linking) drop broken an unused setting
The showImage setting has been broken for about 2 years since the asset
is not there.

Fixes: https://github.com/jitsi/jitsi-meet/issues/5409
Ref: https://community.jitsi.org/t/error-nginx-usr-share-jitsi-meet-images-deep-linking-image-png-failed/120418
2023-01-16 20:07:01 +01:00
Horatiu Muresan
6048279eb2 fix(welcome-page) Fix narrow mode (#12781)
- enable calendar card and footer on narrow mode
2023-01-16 11:50:37 +02:00
Jaya Allamsetty
43b3db11e0 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1573.0.0+10acace6...v1574.0.0+4d6873c2
2023-01-13 12:33:02 -05:00
Calinteodor
77e75815dc feat(polls): removed platform check and fixed button arrangement (#12780)
* feat(polls): removed platform check and fixed button arrangement
2023-01-13 16:04:39 +02:00
Saúl Ibarra Corretgé
e1485fc253 feat(rn,deps) update react-native-webrtc to 106.0.4 2023-01-13 10:06:02 +01:00
damencho
d6d71ab412 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1572.0.0+2028cce3...v1573.0.0+10acace6
2023-01-12 16:56:14 -06:00
Jaya Allamsetty
59c47a0575 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1569.0.0+5f8d02c9...v1572.0.0+2028cce3
2023-01-12 13:59:03 -05:00
damencho
8793d67f0b fix: Drops jicofo-authuser as we use hardcoded value. 2023-01-12 08:54:37 -06:00
Saúl Ibarra Corretgé
d6888fa2d8 chore(deps) run npm audit fix 2023-01-12 15:36:13 +01:00
Saúl Ibarra Corretgé
222021f3bc feat(rn,deps) update react-native-webrtc to 106.0.3 2023-01-12 15:36:13 +01:00
Calin-Teodor
14c24a8851 feat(polls): added marginTop 2023-01-12 15:48:16 +02:00
Calinteodor
246a2d6bbf feat(share-room): created getInviteOthersControl helper (#12769)
* feat(participants-pane/share-room): getInviteOthersControl helper
2023-01-12 15:47:44 +02:00
Calinteodor
838b26f770 ref(dep): updated react navigation dependencies (#12768)
* updated react navigation dependencies to latest
2023-01-12 15:47:03 +02:00
bgrozev
bc88ebe443 fix: Fix appending URL params. (#12763)
* fix: Fix appending URL params.

* squash: Lint.
2023-01-12 07:37:54 -06:00
Saúl Ibarra Corretgé
7f54fa4ed8 feat(rn,deps) update react-native-webrtc to 106.0.2 2023-01-12 14:12:52 +01:00
Calinteodor
361428d245 chore(deps): update rn-safe-area-context to latest (#12760)
chore(deps): update rn-safe-area-context
2023-01-12 12:14:55 +02:00
Calinteodor
7ad57e6baf chore(deps): update rn-gesture-handler to latest (#12759)
chore(deps): updated rn-gesture-handler
2023-01-12 12:14:25 +02:00
Calinteodor
a59ab3b0d9 feat(share-room): disable Invite Others button when Share is visible (#12765)
* feat(share-room): disable/enable Invite Others button
2023-01-12 12:13:18 +02:00
Calinteodor
c50111a57d feat(ui/polls/security/native): style fixes and updates (#12761)
* feat(base/ui/native): button fixes and ui updates
2023-01-12 12:11:27 +02:00
Horatiu Muresan
9422f48536 fix(deeplinking) Consider deprecated config (#12758) 2023-01-12 11:04:45 +02:00
Jaya Allamsetty
122e80dcf1 fix(audio-only) Fix an issue where 'startAudioOnly' in config is not applied to web clients. 2023-01-11 10:31:50 -05:00
Robert Pintilii
2dbb3c10e2 fix(local-rec) Stop recording properly on size exceeded (#12757) 2023-01-11 11:57:34 +02:00
damencho
265d8c4b29 fix: Fixes using s2s for visitors. 2023-01-10 21:50:23 +01:00
bgrozev
e8e05c21ab chore(deps) lib-jitsi-meet@latest (#12754)
https://github.com/jitsi/lib-jitsi-meet/compare/v1564.0.0+e2aa3700...v1569.0.0+5f8d02c9
2023-01-10 13:21:01 -06:00
bgrozev
b0591ed968 feat: Append ?room= to conferenceRequestUrl. (#12753)
* feat: Append ?room= to conferenceRequestUrl.

* Declare conferenceRequestUrl in IConfig.
2023-01-10 13:20:48 -06:00
Narendiran Arthanarieswaran
84fe52491f feat(android) created Monochrome Icon 2023-01-10 15:50:37 +02:00
Calinteodor
450da1a6df feat(base/media): SS mobile align (#12743)
* feat(base/media/native): updated styles and converted VideoTransform.js to tsx
2023-01-10 15:31:57 +02:00
Oana Emilia Ianc
720d4555ab jaas: pass the jitsi installation type at provisioning (#12750) 2023-01-10 12:10:47 +02:00
Calinteodor
c764397994 Update react native paper dependency to latest (#12740)
* Update react-native-paper to latest
2023-01-10 11:18:03 +02:00
Jaya Allamsetty
0ad7b3db55 fix(config) Delete deprecated config.
Client (receiver constraints)  and bridge use the new b/w allocation strategy by default.
2023-01-09 10:35:40 -05:00
Jaya Allamsetty
7e30053d51 fix(config): Remove unused config values.
capScreenshareBitrate and setScreenSharingResolutionConstraints are no longer valid.
2023-01-04 10:41:19 -05:00
Horatiu Muresan
0ad52a06ce feat(prejoin) Disable join buttons during joining
- use new `Button` component for drop down buttons
2023-01-04 14:22:51 +02:00
bgrozev
82fd465819 Re-use existing flags for visitor functioonality. (#12703)
* Fix documentation.

* Re-use existing flags instead for visitor functionality.

* Make the linter happy.

* Declare the disableFocus flag in configType.ts

* chore(deps) lib-jitsi-meet@latest

https://github.com/jitsi/lib-jitsi-meet/compare/v1561.0.0+2d4cd935...v1564.0.0+e2aa3700
2023-01-03 16:03:42 -06:00
Jaya Allamsetty
561d0c9a10 ref(participants) Remove sortedRemoteScreenshares used by legacy SS. 2023-01-03 10:08:48 -05:00
Hristo Terezov
3b8ad78a62 fix(audio-only):Don't disable on SS started. (#12733)
Implementing this on mobile in order to match the web implementation.
2023-01-03 11:28:50 +02:00
Christoph Settgast
77e02a0994 chore(ci): update to checkout@v3 to fix node12 warnings (#12722)
Warning is: Node.js 12 actions are deprecated. For more information
see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.
Please update the following actions to use Node.js 16: actions/checkout@v2
2022-12-22 21:31:24 +01:00
Christoph Settgast
965e7dc41d ci: move jsonlint to npm run script (#12721)
easier local execution than looking through GH actions
2022-12-22 21:31:07 +01:00
Christoph Settgast
ad0ad31df9 fix(lang) update German translation (#12720) 2022-12-22 21:30:43 +01:00
Horatiu Muresan
2bb2a68e01 chore(welcome-page) Welcome page redesign (#12717) 2022-12-22 15:18:06 +02:00
Horatiu Muresan
c441e8abca fix(welcome-page) Fix error before joining a meeting from welcome page (#12718) 2022-12-22 15:15:38 +02:00
Hristo Terezov
27754c8874 fix(filmstrip): scroll
Add SS tiles to the number of participants in scroll calculations. This
fixes an issue where the scroll is not displayed if there is a SS tile
and only part of 1 tile is overflowing.
2022-12-21 21:54:10 -06:00
dependabot[bot]
580f56010a chore(deps): bump loader-utils from 1.4.1 to 1.4.2
Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.1 to 1.4.2.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.2/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.1...v1.4.2)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-21 20:23:39 +01:00
Jaya Allamsetty
4bad63e484 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1560.0.0+92a5738b...v1561.0.0+2d4cd935
2022-12-21 13:57:48 -05:00
Hristo Terezov
9cc41469d2 ref(setScreenshareMuted): remove mediaType 2022-12-21 11:02:02 -06:00
Hristo Terezov
5077a33fcb ref(setVideoMuted): remove mediaType param. 2022-12-21 11:02:02 -06:00
Jaya Allamsetty
e7078786e6 fix(config) Remove code related to deprecated configs 'preferH264' and 'disableH264'. 2022-12-21 10:58:38 -05:00
Gabriel Borlea
291370a263 fix(face-landmarks): check for track state only if image capture is not polyfill (#12711) 2022-12-21 15:34:40 +02:00
Horatiu Muresan
32dbdf2e5c feat(deeplinking) Move deeplinking to config.js (#12704) 2022-12-20 19:03:57 +02:00
Hristo Terezov
17b5009e63 feat(audioOnly): do not disable when SS starts 2022-12-20 09:57:45 -06:00
Saúl Ibarra Corretgé
d91f49ec88 fix(rn) temporarily disable P2P
We're getting some no-video problems after the migration to Unified Plan
(before it was only working for same plan clients FWIW).

It was already disabled on Android, so the same in iOS while we figure
this out.
2022-12-20 16:09:19 +01:00
PO-jfiniel
7187530430 fix(android,config) allow to override integer config
This commit allow to override integer configuration like this one:

JitsiMeetConferenceOptions options =
    new JitsiMeetConferenceOptions.Builder()
    .setConfigOverride("resolution", 1080)
    .build();
2022-12-20 13:30:17 +01:00
Saúl Ibarra Corretgé
d3d442e4d2 fix(rn,polyfills) simplify WebRTC polyfills
Use the polyfiller provided by react-native-webrtc.

Drop the permissions API polyfill since we no longer use it in the app
and lib-jitsi-meet already works without it.
2022-12-16 17:55:53 +01:00
Saúl Ibarra Corretgé
294d2c9f6e fix(rn,config) make sure VP9 is never selected 2022-12-16 17:55:53 +01:00
Saúl Ibarra Corretgé
12c002e015 deps(rn) react-native-webrtc@106.0.1
Fixes fps selection during gUM and fliping the active flag in sender
encodings.
2022-12-16 17:55:53 +01:00
Saúl Ibarra Corretgé
9720b4858c chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1557.0.0+8df33524...v1560.0.0+92a5738b
2022-12-16 17:54:33 +01:00
tmoldovan8x8
9fae488070 fix(rn) removes settings dialog webviews and opens urls in browser 2022-12-16 13:30:37 +01:00
Mihaela Dumitru
0e47f72b5f fix(invite-dialog) adjust dial in limit display condition and styling (#12654) 2022-12-16 09:50:48 +02:00
Jaya Allamsetty
298c4bd1e3 fix(conference) Fixes an issue where first unmute with disableInitialGUM=true was resulting in user staying muted.
When device list changes, create a new track with the preferred device only if the user is unmuted. If the user is audio/video muted, remove the existing track from conference. A new track will be created and replaced automatically when the user unmutes. Also since screensharing is a separate source, always check for updated camera devices.
2022-12-15 17:39:25 -05:00
Gabriel Borlea
955367a157 fix(config): cleanup config function (#12690)
* fix(config): avoid cleaning analytics config

* fix cleanup function
2022-12-15 18:00:22 +02:00
Saúl Ibarra Corretgé
c30d1e7479 fix(rn,dynamic-branding) fix handling bogus response from the backend 2022-12-15 12:19:17 +01:00
Avram Tudor
cbbe58a1ec fix(prejoin) fix prejoin app dialogs not being visible (#12689) 2022-12-15 11:29:08 +02:00
Robert Pintilii
aef5328aeb ref(TS) Convert some features to TS (#12651) 2022-12-14 14:23:07 +02:00
Gabriel Borlea
f5ac1b6271 chore(deps) lib-jitsi-meet@latest (#12684)
https://github.com/jitsi/lib-jitsi-meet/compare/v1556.0.0+d9ee8f59...v1557.0.0+8df33524
2022-12-14 12:12:45 +02:00
Titus Moldovan
ca9f0a6788 fix(rn,screenshare) rework the logic for unified-plan with multi-stream 2022-12-14 08:35:33 +01:00
Saúl Ibarra Corretgé
e7c5ae5936 fix(rn,config) don't disable multi-stream sending on RN
We don't plan to send both (camera and screen) streams at once, but we
do plan to align with web and have both streams at the same time, with
the camera being muted when we start screen sharing.
2022-12-14 08:35:33 +01:00
Saúl Ibarra Corretgé
c43a319576 feat(deps,rn) update react-native-webrtc@106
Brings in Unified Plan support!
2022-12-14 08:35:33 +01:00
Saúl Ibarra Corretgé
585c9aa0d2 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1554.0.0+a25023e7...v1556.0.0+d9ee8f59
2022-12-14 08:34:36 +01:00
Horatiu Muresan
768f10d966 feat(route) Redirect to a custom welcome page 2022-12-13 22:04:11 +02:00
Horatiu Muresan
704740969b fix(prejoin) Fix missing lib error 2022-12-13 22:04:11 +02:00
damencho
d444a45f00 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1553.0.0+57646337...v1554.0.0+a25023e7
2022-12-13 10:18:31 -06:00
Дамян Минков
9fbbe05d6c feat: Adds docs, config and scripts around the visitor mode. (#12658)
* feat: Moves handle of vnode from conferenceIQ stanza error to result.

* feat: Handles redirected to visitor node event.

* feat: Adds README and configurations.

* squash: Drop comment.

* copy edits

* image fix

* fix background for dark mode

* fix the background

* feat: Update s2soutinjection.

* Update README commands formatting.

* Update doc/extra-large-conference/README.md

Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>

* squash: Creates a generateVisitorConfig helper.

* squash: Moves the folder from doc.

* squash: Update example.

* squash: Drop config.

* squash: Rename var to look like template.

* squash: Fix plugins path.

* squash: Fix sort order of import.

* squash: Fix lint errors.

Co-authored-by: scott boone <scott.e.boone@gmail.com>
Co-authored-by: Scott Boone <scott.boone@8x8.com>
Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>
2022-12-13 08:26:22 -06:00
Gabriel Borlea
3445c513ba chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1549.0.0+877c4546...v1553.0.0+57646337
2022-12-13 15:14:01 +01:00
Mihaela Dumitru
6a4276b4c8 fix(salesforce) require selected records + styling (#12669) 2022-12-12 19:15:45 +02:00
damencho
338b02a6b6 feat: Prints the error on problem sharing YouTube video. 2022-12-12 09:39:25 -06:00
damencho
ef2631e95a fix: Error in patching config.js 2022-12-12 09:14:16 -06:00
damencho
226ef9f33d fix: Fixes undefined error in some cases after patching config.js. 2022-12-12 08:46:42 -06:00
tmoldovan8x8
91ec5307ab fix(android) adds default notification icons 2022-12-12 15:12:05 +02:00
Nils Ohlmeier
fe0b7d3acc chore(deps): bumped rtcstats 9.5.0 -> 9.5.1 (#12664) 2022-12-09 21:14:00 -08:00
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
Avram Tudor
d7bedb2e07 ref(misc) remove unused code for dock / undock (#12661)
* ref(misc) remove unused code for dock / undock

* remove translations
2022-12-09 15:19:57 +02:00
Mihaela Dumitru
33e4da32e2 feat(giphy) disable feature from dynamic branding (#12620) 2022-12-08 16:02:31 +02:00
bgrozev
9a8a8ef7ad Bump js-utils to 2.0.5 (filter room names). (#12625)
* Bump js-utils to 2.0.5 (filter room names).
2022-12-07 10:35:42 -06:00
Calin-Teodor
703ed731c8 feat(base/redux): fixed local storage on native 2022-12-07 18:16:53 +02:00
William Liang
83dfb67f23 fix(video-mute) prevent multiple camera track creation 2022-12-07 10:23:20 -05:00
Robert Pintilii
51bdf67cf2 fix(dialog) Fix Dialog on mobile (#12650)
Use JitsiPortal on mobile
2022-12-07 11:27:55 +02:00
damencho
3adbda791c chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1548.0.0+8acdeb1d...v1549.0.0+877c4546
2022-12-06 19:10:02 -06:00
Jaya Allamsetty
924bb0e7ff chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1545.0.0+f8e587f7...v1548.0.0+8acdeb1d
2022-12-06 16:31:06 -06:00
tmoldovan8x8
4c9bfe3d4d feat(E2EE) add initial SAS verification UI 2022-12-06 18:29:33 +01:00
Jaya Allamsetty
1139311809 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1543.0.0+c57ac97e...v1545.0.0+f8e587f7
2022-12-06 10:53:20 -05:00
Calinteodor
2ad2e6ff0e feat(polls/web): removed sort options from polls (#12641)
* feat(polls/web): removed sort options from polls
2022-12-05 15:18:24 +02:00
damencho
46cc2e37ae feat: Update lib-jitsi-meet.
Fixes version of binary ljm.
2022-12-02 15:31:33 -06:00
Saúl Ibarra Corretgé
0ebac2ac6d fixup! 2022-12-02 19:05:47 +01:00
Saúl Ibarra Corretgé
90e33ee799 fixup devcontainer 2022-12-02 19:05:47 +01:00
Saúl Ibarra Corretgé
be982ae996 fix(build) use http for GitHub codespaces 2022-12-02 19:05:47 +01:00
Saúl Ibarra Corretgé
56114fe863 Create devcontainer.json 2022-12-02 19:05:47 +01:00
Saúl Ibarra Corretgé
a2e8a7f28f fix(toolbox) hide drawer after toggling camera
Fixes: https://github.com/jitsi/jitsi-meet/issues/12628
2022-12-02 15:31:44 +01:00
Pawel Domas
af072c3070 fix: get the current conference
state['features/base/conference'].conference is not the right way to get the current conference.
See getCurrentConference selector - it accounts for joining and other states.
2022-12-01 16:02:35 -05:00
Jaya Allamsetty
f42772ec5b chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1539.0.0+eb4873d2...v1541.0.0+9b34e0f7
2022-11-29 15:28:51 -05:00
Gabriel Borlea
2556a7ab77 fix(face-landmarks): assign empty array to facelandmarks in speakerstats if undefined 2022-11-29 19:12:43 +01:00
Charles Zablit
3cbf160f2b fix: always display transcription (#12325)
* feat: always display transcription

* fix: unused import
2022-11-29 09:50:19 -06:00
Дамян Минков
744960bb1a feat: Several module optimizations to avoid constant parsing of jids. (#12594)
* feat: Several module optimizations to avoid constant parsing of jids.

Caches the parsed values in a rotating table with limited size.
Skips constant creating of a stanza with never changing values - create it once and then just clone it.

* squash: Fixes extract_subdomain multiple values.

* squash: Fix table values when there is a nil element.

* squash: Fix skipping the roomless IQs.

* squash: Fix comments.
2022-11-28 14:18:59 -06:00
Дамян Минков
76471a0ea9 feat: Modules for implementing visitor nodes. (#12593)
* feat: Modules for implementing visitor nodes.

Still WIP, uses visitor nodes prosodies where we create the main participants and forward the visitors to watch. Used for huge conferences.

* squash: Fix comments.
2022-11-28 14:18:33 -06:00
Robert Pintilii
0ba033e07d ref(TS) Improve TS (#12612)
Remove unnecessary @ts-ignores
Remove unnecessary eslint-disable
2022-11-28 12:52:45 +02:00
Robert Pintilii
cb3fb3ada9 ref(TS) Convert some features to TS (#12611) 2022-11-28 12:52:24 +02:00
Calinteodor
48a6472b3b feat(lobby/prejoin/native): style updates (#12615)
feat(lobby/prejoin/native): style updates (#12615)
2022-11-25 13:59:45 +02:00
Roberto Vieira
691e92b7ec fix(ios) make initialPositionInSuperView a variable
Fixes: https://github.com/jitsi/jitsi-meet/issues/12446
2022-11-25 10:44:27 +01:00
Calin-Teodor
6e36340a83 feat(conference): fixed padding 2022-11-24 19:41:56 +02:00
Mihaela Dumitru
ae424c95de chore(whiteboard): bump excalidraw version (#12614) 2022-11-24 17:43:08 +02:00
Mihaela Dumitru
95b2979eb3 feat(whiteboard): use jitsi room name for socket io connection (#12610) 2022-11-24 14:20:40 +02:00
_norbert
a0c130568b fix(lang) update Hungarian translation 2022-11-23 19:33:13 +01:00
Robert Pintilii
643cc2db81 ref(TS) Convert some features to TS (#12591) 2022-11-23 11:12:26 +02:00
Calinteodor
6bce0bc917 fix: Native styles fixes (#12606)
* feat(conference/native): update indicator styles

* feat(prejoin/native): removed unnecessary styles

* feat(mobile/navigation): fixed header buttons style

* feat(mobile/navigation): fixed linter
2022-11-22 21:50:16 +02:00
Calinteodor
93566e313e feat(native): Last mobile release UI fixes (#12603)
* feat(base/modal): order props alphabetically

* feat(base/ui): added ripple color for tertiary button

* feat(prejoin): removed autoFocus from input and adjusted content

* feat(conference): adjusted RaisedHandCountLabel and added extra code spaces

* feat(prejoin): fixed content to fit tablets

* feat(conference): moved header button styles to navigation styles

* feat(mobile/navigation): updated header navigation button styles

* feat(prejoin): updated elements width, removed left inset
2022-11-22 18:13:36 +02:00
Gabriel Borlea
a7c653bc30 chore(deps) lib-jitsi-meet@latest (#12604)
https://github.com/jitsi/lib-jitsi-meet/compare/v1538.0.0+871968af...v1539.0.0+eb4873d2
2022-11-22 16:19:34 +02:00
Gabriel Borlea
4b969cf4ab feat(face-landmarks): add face landmarks timeline (#12561)
* feat(face-landmarks): add face landmarks timeline

fixes after rebase

* fixes after rebase compiling and linting

* fix: change keyboard shorcut for participants stats

* fix: label for emotions switch

* fix: linting issues

* code review changes

* fix linting issues

* code review changes 2

* fix typo
2022-11-22 15:56:37 +02:00
Saúl Ibarra Corretgé
3081b41d0d fix(android) temporarily disable P2P
For some reason one of the users gets a black screen when doing Android
to Android calls. If iOS is involved things Just Work (TM).

It seems to be related to the use of H.264, but since it works with iOS
there must be something else to it.
2022-11-22 14:00:47 +01:00
Saúl Ibarra Corretgé
30e5d213cb fix(android) sort codecs in the same order as iOS 2022-11-22 14:00:47 +01:00
Saúl Ibarra Corretgé
752da71387 feat(android) set compile and target SDKs to 32 2022-11-22 11:37:08 +01:00
Saúl Ibarra Corretgé
645609974a deps(android) update native dependencies 2022-11-22 11:37:08 +01:00
Saúl Ibarra Corretgé
4f2f6df2bb chore(deps) update xmldom to version 0.79 2022-11-22 11:37:08 +01:00
Jaya Allamsetty
e93c480e7c fix(conference) Remove the check for multi-stream mode for web client. 2022-11-21 14:40:25 -05:00
Calinteodor
a795e0797a feat(native): New mobile release UI fixes (#12592) 2022-11-21 16:07:27 +02:00
Andrei Gavrilescu
94ec2c720d feat(rtcstats): report pc connection failure (#12560)
* report pc connection failure

* typos

* code review / update rtcstats

* check for undefined APP
2022-11-21 15:32:18 +02:00
Abdullah Kerem Öğe
b11e14ea34 feat(deps,rn) update React Native to version 0.68.5 2022-11-21 10:37:48 +01:00
Robert Pintilii
f5f55c4f23 fix(dialog) Improvements (#12590)
Remove focus outline for the close icon
Increase max height
2022-11-21 11:09:03 +02:00
Duduman Bogdan Vlad
243a330318 feat(thumbnail,filmstrip) show blackend thumbnail for participant on stage 2022-11-21 10:03:03 +01:00
_norbert
98bc87ea18 lang: fixing typo in a hungarian lang file (#12559)
* fixing typo in a hungarian lang file

* revert end of line

Co-authored-by: bartuczns <bartucz.norbertsandor@nisz.hu>
2022-11-19 15:35:43 -06:00
Saúl Ibarra Corretgé
f7926c9cfb fixup! 2022-11-18 19:56:36 +01:00
Saúl Ibarra Corretgé
533501deb6 fixup! 2022-11-18 19:56:36 +01:00
Saúl Ibarra Corretgé
f38c9f5450 feat(notification,external-api) notify bridge channel failures 2022-11-18 19:56:36 +01:00
Jaya Allamsetty
55b80c948f chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1535.0.0+e6263e7c...v1538.0.0+871968af
2022-11-18 13:38:37 -05:00
Calinteodor
971fe0481f feat(chat/polls/native) Update chat and polls UI (#12550)
* feat(chat/polls/native): update ui
2022-11-18 14:46:54 +02:00
Calin-Teodor
1259e54d46 fix(conference/native): apply width and height only on the connection indicator 2022-11-18 13:22:55 +01:00
Calin-Teodor
0cb95f1dd6 fix(conference/native): video quality label ui updates 2022-11-18 13:22:55 +01:00
Calin-Teodor
5cde9a138b fix(conference/native): fixed title bar indicators style 2022-11-18 13:22:55 +01:00
robertpin
867c488e10 fix(dialog) Update max height 2022-11-18 13:22:43 +01:00
Calin-Teodor
7d9c13a618 feat(prejoin): updated styles 2022-11-18 11:02:05 +02:00
Hristo Terezov
48ed3b7dc6 fix(dialog): cancel hide timeout on openDialog
Since we unmount the dialog after a timeout because of an animation we
need to cancel the timeout in case we need to render new dialog.
Otherwise the actual hiding can be executed after we render the new
dialog.
2022-11-17 17:00:02 -06:00
Hristo Terezov
04abfe1a3b feat(dialog): add disableAutoHideOnSubmit prop
Needed for shared video dialog.
2022-11-17 17:00:02 -06:00
Alex Bumbu
d45decc393 Update JitsiMeet.h (#12574) 2022-11-17 16:31:37 +02:00
Saúl Ibarra Corretgé
88f8f48465 fix(participants) don't treat Jigasi like a fake participant
We only really want to know if a participant is Jigasi for displaying a
specific icon, for all other intents and purposes it's a normal
participant.
2022-11-17 15:13:54 +01:00
Saúl Ibarra Corretgé
8127ea2479 feat(redux) throw exception in case invalid listeners are registered
This allows catching mistakes early.
2022-11-17 11:07:57 +01:00
Saúl Ibarra Corretgé
b22915c169 fix(rn,filmstrip) fix invalid selector registered as state listener 2022-11-17 11:07:57 +01:00
Saúl Ibarra Corretgé
14fcd153e5 fix(rn,connection-indicator) align rendering with web
Use the same way for calculating que perceived quality and display it.
2022-11-17 11:07:57 +01:00
Robert Pintilii
48efe36cdf fix(dial-in) Fix warning (#12571)
Only show warning if the feature is enabled
2022-11-16 12:14:58 +02:00
Saúl Ibarra Corretgé
0c373e105b ref(StageFilmstrip) mark as experimental
THere are a bunch of unhandled corner cases involving virtual
screen-sharing participants.
2022-11-15 10:34:58 -06:00
Shawn
e57c7f92a8 refactor(end-conference): distinguish between component vs host module logic 2022-11-15 10:34:40 -06:00
Jaya Allamsetty
70fa44f85f chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1533.0.0+7b257686...v1535.0.0+e6263e7c
2022-11-15 11:08:37 -05:00
rinenweb
bcc5beb73d fix(lang) fixup main-el.json
Missing "{" in line 74 and name is not displayed at all when {name} is used in line 520.
2022-11-15 09:41:43 +01:00
Joseph Garrone
4ef4e45ee4 fix(styles) Remove Theme type annotation (#12544)
* tss-react doesn't need a type anotation for the Theme

* Update tss-react to 4.4.4
2022-11-15 09:50:22 +02:00
TTG
c9ff0bb75f lang: Remove Indonesian & Norwegian translations (#12554)
* Remove Indonesian translation

* Remove Norwegian translation
2022-11-13 21:38:42 -06:00
chipechop
282817db28 lang: Update main-it.json (#12541)
refining
2022-11-11 16:37:54 -06:00
Shawn
93ab7725e7 feat(toolbox) notify click for hangup-menu and end-meeting menu button 2022-11-11 16:06:53 -06:00
Calin-Teodor
53ccb97d34 fix(welcome/native): removed unused constant 2022-11-11 18:11:41 +01:00
Calin-Teodor
6346d99d0e fix(welcome/native): placeholder fix 2022-11-11 18:11:41 +01:00
Saúl Ibarra Corretgé
79c4cabbad feat(rn) make status bar visible at all times 2022-11-11 17:25:28 +01:00
Robert Pintilii
7a9f51b01b ref(TS) Convert some features to TS (#12546) 2022-11-11 10:20:33 +02:00
Robert Pintilii
a884a6b232 fix(ui) Fix new icons issues (#12545) 2022-11-11 09:58:55 +02:00
Jaya Allamsetty
b00a17c1c3 fix(connection-stats) Do not display max enabled resolution on SS tile. 2022-11-10 17:00:34 -05:00
bgrozev
99955df5c8 Cleanup sounds (switch to mp3, encode at lower bitrate).' (#12507)
* Reencode mp3 sounds at lower bitrate, mono.
* Encode wav sounds as mp3.
* Remove unused sound file.
* Add opus encoded sounds.
* Add a script to encode sounds.
2022-11-10 10:06:40 -06:00
Calin-Teodor
c0f0803f01 feat(base/modal): addBottomPadding default prop for extra padding on JitsiScreen 2022-11-10 17:22:36 +02:00
dependabot[bot]
b2c864cbba chore(deps): bump loader-utils from 1.4.0 to 1.4.1
Bumps [loader-utils](https://github.com/webpack/loader-utils) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v1.4.1/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 11:30:02 +01:00
Saúl Ibarra Corretgé
31957d4085 chore(fonts) drop no longer used font 2022-11-10 11:16:22 +01:00
Saúl Ibarra Corretgé
4f83fc2a6d fix(ios) fix uploading symbols to Crashlytics
Since we no longer use bitcode we need to upload them when we build the
app.
2022-11-10 11:16:06 +01:00
Robert Pintilii
4bd27730ce ref(TS) Convert some features to TS (#12523) 2022-11-10 10:45:56 +02:00
Robert Pintilii
817d7f0c0d fix(thumbnail) Fix top indicators sizes (#12539)
Fix sizes after icon update
2022-11-10 10:22:57 +02:00
Robert Pintilii
19a9b17425 fix(recording) Fix local recording (#12531)
Starting chrome 107, the recorder does not record any data if the audio stream has no tracks
To fix this we create a track for the local user (muted track)
2022-11-10 10:22:42 +02:00
Robert Pintilii
cc33930259 fix(thumbnail) Open native video context menu (#12532) 2022-11-10 09:20:42 +02:00
Jaya Allamsetty
6223e16ca5 ref(config) Cleanup unused flags related to multi-stream mode. 2022-11-09 15:23:30 -05:00
José Luís Andrade
99385ae3d7 fix(config) add "whiteboard" to toolbarButtons 2022-11-09 17:37:51 +01:00
Shawn
17cace070e feat(external-api) Add endConference command 2022-11-09 16:00:17 +01:00
Calin-Teodor
cdb2436b73 feat(base/ui): updated BUTTON_TYPES imports based upon native or web 2022-11-09 16:35:08 +02:00
Calin-Teodor
10db5ecf1f feat(welcome/native): improved ui 2022-11-09 14:52:26 +02:00
Robert Pintilii
cbb8b5f620 fix(dialog) Fix initial focus (#12509)
Don't focus on the close button if there's another focusable element
2022-11-09 12:07:37 +02:00
Jaya Allamsetty
f3e4c57036 Remove legacy signaling and legacy SS mode. (#12499)
* fix(connection-status): remove unused participant connectionStatus.
Always use trackStreamingStatus now that legacy endpoint based signaling has been removed.

* remove the check for source-name signaling.
Default to source-name signaling always.

* Remove the check for multi-stream mode.
Make that the default mode and remove the support for legacy SS mode.

* Remove presenter mode.

* update latest@lib-jitsi-meet
2022-11-08 14:15:49 -05:00
Calinteodor
1731d5188d feat(prejoin/native): updated UI (#12528) 2022-11-08 19:14:29 +02:00
Calinteodor
2c7dc5e40e feat(base/ui/native): Use new Input component (#12526)
feat(base/ui/native): replaced react native TextInput component with our native Input component
2022-11-08 17:46:46 +02:00
Calinteodor
74cd486232 feat(chat/native): moved ChatAndPollsNavigator to mobile/navigation (#12527)
* feat(chat/native): moved ChatAndPollsNavigator to mobile/navigation
2022-11-08 17:43:02 +02:00
Alexey Matveev
30f3bac217 feat(ios) add ability to go PiP while screen sharing 2022-11-08 16:25:36 +01:00
Vadim A. Misbakh-Soloviov
84fc4dd63f (feat) OpenResty Support
Signed-off-by: Vadim A. Misbakh-Soloviov <git@mva.name>
2022-11-08 08:53:50 -06:00
Robert Pintilii
936a1a6b0e ref(design) Update icons (#12489)
Remove unused icons
Remove fill none from icons
Rename some icons
2022-11-08 12:24:32 +02:00
Gabriel Borlea
f4e8f860b1 feat(rtc-stats): send camera off and on events (#12522)
* feat(rtc-stats): send camera off and on events

* code review
2022-11-08 11:41:53 +02:00
Nils Ohlmeier
ee544d25f8 chore(deps) @jitsi/rtcstats 9.4.1 (#12512)
* chore(deps) @jitsi/rtcstats 9.4.1

* squash: Fix missing package-lock change.

Co-authored-by: damencho <damencho@jitsi.org>
2022-11-07 09:59:35 -06:00
Alexey Matveev
c32866f6a2 flag to hide settings button in overflow menu (#12515)
* flag to hide settings button in overflow menu
2022-11-07 14:00:46 +02:00
Alexey Matveev
215c2825de fix(rn) fix hangup all action
Co-authored-by: Alexey Matveev <malex@1forma.ru>
2022-11-07 10:30:08 +01:00
Christoph Settgast
edb614783b fix(lang) update German translation
Signed-off-by: Christoph Settgast <csett86@web.de>
2022-11-05 14:18:16 -05:00
Alexey Matveev
0e19bc9cd6 ru-localization minors 2022-11-04 13:46:41 -05:00
Johan Bernhardsson
caff0c64af lang: Update Swedish 100% translation (#12511)
* first Swedish update

* 100% swedish

* Update main-sv.json

* Updated Swedish translation

* Updated Swedish translation dropped product name

Co-authored-by: Johan Bernhardsson <johan@kafait.se>
2022-11-04 13:45:15 -05:00
Petr Ferschmann
fcb1845e2a lang: Updated Czech Translation (#12388)
* Translation to czech language

* Updated czech translation

* Updated czech translation

Co-authored-by: Дамян Минков <damencho@jitsi.org>
2022-11-03 16:01:31 -05:00
Suleyman BİLGİN
977295bd87 lang: Update Turkish translation (#12348)
* Turkish translations that were missing were added, and certain terms were changed to sound pleasant.

* squash: new line

Co-authored-by: Suleyman Bilgin <suleymanbilgin@thy.com>
Co-authored-by: Дамян Минков <damencho@jitsi.org>
2022-11-03 16:01:12 -05:00
apetrus20
ed139f53ca fix(polls) refactor storage of poll data 2022-11-03 16:08:20 +01:00
Alexey Matveev
5692c3cb4d fix(lang) update Russian translation 2022-11-03 14:24:58 +01:00
TTG
ed62409ad5 fix(lang) update translations 2022-11-03 10:53:25 +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
Duduman Bogdan Vlad
36bef94c3c Remove logic show toolbar on new message received (#12488) 2022-11-03 09:18:21 +02:00
Hristo Terezov
a995b33753 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1528.0.0+23644901...v1530.0.0+f2af389e
2022-11-03 07:28:05 +01:00
Nils Ohlmeier
bfb15a2523 chore(deps) @jitsi/rtcstats 9.4.0 2022-11-03 07:26:14 +01:00
TTG
1d59c8122d fix(lang) update Chinese translations (#12344)
* Update Simplified Chinese translation

* Update Traditional Chinese translation

* Update translations

* Updated translation for #12391

* Updated translation for 12371
2022-11-02 16:41:26 -05:00
Hristo Terezov
31766c891b Fix get rooms info (#12492)
* Include local participant; filter out hidden participants for getRoomsInfo

* Review fixes: include ts changes and types

Co-authored-by: Bogdan Duduman <bogdan.duduman@8x8.com>
2022-11-02 12:06:45 -05:00
Robert Pintilii
7a3b8d6ac4 fix(recording-dialog) Fix broken dialog content (#12490) 2022-11-02 12:49:30 +02:00
Saúl Ibarra Corretgé
edf5e1c094 fix(ts) fix mysterious linting errors
We have a rule that should apply here, but somehow it doesn't...
2022-11-02 09:03:14 +01:00
Saúl Ibarra Corretgé
7cd39b7983 feat(ts) make tsc happy 2022-11-02 09:03:14 +01:00
Hristo Terezov
49bcf5c179 fix(iframeAPI): pinParticipant & setLargeVideo
Add the ability to specify video type when in multistream mode.
2022-11-01 18:33:09 -05:00
Filip Rejmus
2b3989e5e6 ref(features/base) remove no sound for id warn 2022-11-01 19:05:22 +01:00
Saúl Ibarra Corretgé
9b1e662a93 fix(connection-indicator) use SSRCs to match tiles to stats 2022-11-01 16:21:29 +01:00
Saúl Ibarra Corretgé
73160de3b7 fix(connection-stats) make local / remote layout consistent
Move region information and server count to the "More" section on both
types of tiles.
2022-11-01 16:21:29 +01:00
Saúl Ibarra Corretgé
f5fc524030 fix(connection-stats) fix rendering codec information
Ref: https://github.com/jitsi/lib-jitsi-meet/pull/2143
2022-11-01 16:21:29 +01:00
Saúl Ibarra Corretgé
6e3b3879cc chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1522.0.0+28436e57...v1528.0.0+23644901
2022-11-01 16:21:07 +01:00
Filip Rejmus
c9f9708166 ref(remove ReactInstanceHolder from AudioModule 2022-11-01 12:45:13 +01:00
Calinteodor
7a8350356a feat(base/react): removed old web Switch component and exports (#12481)
* feat(base/react): removed old Switch component and exports
2022-11-01 11:42:36 +02:00
Saúl Ibarra Corretgé
2596c463fe fix(ts) make tsc (almost) not cry on native
Co-authored-by: Calinteodor <calin.chitu@8x8.com>
Co-authored-by: Robert Pintilii <robert.pin9@gmail.com>
2022-11-01 10:07:10 +01:00
Saúl Ibarra Corretgé
2de0520835 chore(deps) eslint-config-jitsi@latest 2022-11-01 10:07:10 +01:00
JohnProv
c276c204ac lang: Update main-nl.json (#12479)
Fix name
2022-10-31 12:20:02 -05:00
Calinteodor
67cf6e6d18 feat(base/ui/native): removed unused files and updated imports (#12477)
* feat(base/ui/native): removed unused files and updated imports
2022-10-31 16:34:26 +02:00
Robert Pintilii
b321cf3639 ref(add-people-dialog) Update design (#12468)
Convert some files to TS
2022-10-31 09:56:26 +02:00
TTG
8e54a69160 feat: Adjust language list to be shown in native language (#12475)
* Remove language lists

* Replace with native language

* Remove languages resource
2022-10-29 09:20:50 -05:00
Milo Ivir
93e5e48648 lang: Update Croatian translation (#12441)
* Update Croatian translation

- update according to the current "main.json" file

* Update main-hr.json

- added the comma at line 486
I hope that solves the issue.
2022-10-28 11:22:25 -05:00
polfernandez
c945b9cc5e Misspelling. Update main-ca.json
There is a misspelling in the "joiningTitle" label. "S'està demanat per a entrar a la reunió...", should be "S'ha demanat per a entrar a la reunió..."
2022-10-28 09:33:39 -05:00
Robert Pintilii
7c3d2010e4 ref(TS) Convert some features to TS (#12471) 2022-10-28 11:53:24 +03:00
José Luís Andrade
894c5cd788 fix(lang) update Portuguese translation 2022-10-28 10:05:09 +02:00
chipechop
1c7e457879 fix(lang) update Italian translation 2022-10-28 10:04:30 +02:00
chipechop
b6b536962d fix(lang) update Italian language list 2022-10-28 10:03:35 +02:00
nomadbyte
b625b7b0ec fix(lang) update Ukrainian translation 2022-10-28 10:00:14 +02:00
Saúl Ibarra Corretgé
eb59949dfa fix(dialog,web) fix opening dialogs in succession
If onSubmit opens a new dialog, we'd be hiding it otherwise.
2022-10-28 08:57:56 +02:00
Robert Pintilii
69f4b116a9 ref(TS) Convert some features to TS (#12469) 2022-10-28 09:41:12 +03:00
Robert Pintilii
75d7c4b160 ref(dialog) Update some dialogs' styles (#12467) 2022-10-27 11:36:50 +03:00
Robert Pintilii
b5065306e5 ref(audio-popup) Replace InlineDialog with Popover (#12466) 2022-10-27 11:03:28 +03:00
Robert Pintilii
9f5a56bbc7 ref(TS) Convert some features to TS (#12462) 2022-10-27 10:33:11 +03:00
Mihaela Dumitru
b4809fe083 feat(gif) Support rating config + show display name over gif tile (#12461) 2022-10-26 16:23:39 +03:00
Robert Pintilii
6dedc7fb1a ref(TS) Convert some features to TS (#12454) 2022-10-26 09:59:21 +03:00
Robert Pintilii
a780051720 fix(input) Fix background color (#12452)
Use theme background on autofill Firefox
2022-10-26 09:09:58 +03:00
Armel Chesnais
51ac3ef64a fix(noise-suppression) exit out early if no input data to Worklet
Disconnecting the input node to the worklet causes the worklet to crash. Adding a guard clause for empty input prevents this.
2022-10-25 21:55:47 +02:00
Filip Rejmus
a915238b49 chore(deps) @react-native-async-storage 1.17.3 2022-10-25 21:49:59 +02:00
Robert Pintilii
687837310a ref(components) Replace some InlineDialogs with Popover (#12453)
Remove comments referencing InlineDialog
2022-10-25 16:11:55 +03:00
Robert Pintilii
7f879d2154 ref(SCSS) Remove some unused SASS variables (#12451) 2022-10-25 11:01:53 +03:00
Robert Pintilii
faec46dd17 ref(popover) Update Popover to support click trigger (#12447)
Convert Popover to TS
Update OverflowMenu to use Popover instead of InlineDialog
2022-10-24 12:51:18 +03:00
Saúl Ibarra Corretgé
33ec975e19 fix(rn,config) fix forcing VP8 for bridge calls 2022-10-24 10:28:38 +02:00
Saúl Ibarra Corretgé
db6165209b feat(rn) use H.264 (HW codec) for P2P calls
This requires a custom video encoder / decoder factory which uses the
hardware codec only for H.264 and the software implementations for the rest.
2022-10-24 10:28:38 +02:00
Robert Pintilii
27775de48d fix(label) Fix Participants Count label color (#12445) 2022-10-24 10:44:41 +03:00
Saúl Ibarra Corretgé
8818f4f4e6 fix(rn,filmstrip) fix dropping tiles on conference join 2022-10-21 18:45:56 +02:00
Jaya Allamsetty
aebe4885bb ref(filmstrip) Remove the option to disable thumbnail re-ordering. 2022-10-21 09:17:17 -04:00
Saúl Ibarra Corretgé
146cc2f9c9 fix(deps) update xmldom@0.7.6 2022-10-21 14:21:31 +02:00
Saúl Ibarra Corretgé
3b5878d078 fix(ios) also bump the lite SDK version when bumping versions 2022-10-21 13:34:30 +02:00
Robert Pintilii
6ab996568b ref(TS, rn) Fix some TS errors on tsconfig.native (#12432) 2022-10-21 14:09:15 +03:00
Robert Pintilii
4755f5a031 fix(dialog) Wrap dialog in FocusLock (#12431)
Improve accessibility by not allowing the user to navigate outside the dialog
2022-10-21 10:42:00 +03:00
Robert Pintilii
0b48e55a35 ref(TS) Convert some features to TS (#12425) 2022-10-21 10:33:10 +03:00
Hristo Terezov
9e1ac3bea6 fix(recording): recording link.
Show the start recording notification on jicofo update only. This way
the initiator will be available and we will be able to fetch and display
recording link and send iframe API event.
2022-10-20 20:09:50 -05:00
Shawn
7249406960 fix(persistent_lobby): properly destroy main room when empty 2022-10-20 12:15:56 -05:00
Saúl Ibarra Corretgé
a9f5829e58 fix(rn,filmstrip) clear participants cache when changing conferences 2022-10-20 17:03:30 +02:00
Saúl Ibarra Corretgé
4bb1697115 fix(filmstrip) prevent duplicated participants 2022-10-20 17:03:30 +02:00
Robert Pintilii
2938d1f2dc ref(TS) Require interfaces to start with I (#12424) 2022-10-20 12:11:27 +03:00
Robert Pintilii
10d202439b ref: Update npm scripts (#12422) 2022-10-20 11:17:57 +03:00
Robert Pintilii
af0715dc17 ref(keyboard-avoider) Don't use styled components (#12420) 2022-10-20 10:31:27 +03:00
Дамян Минков
601e21ffcd fix: Drops participants count white background. (#12416)
* fix: Drops participants count white background.

Currently, it is white background with white icon.

* squash: Drop unused import.
2022-10-19 11:42:28 -05:00
Robert Pintilii
ff29196f3a ref(participants-pane) Change to function component (#12410)
Use makeStyles instead of withStyles
2022-10-19 14:38:54 +03:00
Robert Pintilii
748b66b04a ref(toolbox) Convert feature to TS (#12413) 2022-10-19 14:38:38 +03:00
Robert Pintilii
ca4db54e6e ref(overflow-menu-button) Change to function component (#12411)
Use makeStyles instead of withStyles
2022-10-19 11:43:10 +03:00
Robert Pintilii
3eecf8063f ref(TS) Remove unnecessary ts-ignores (#12412)
Remove ts-ignores that are no longer needed because of tsconfig.web.json
Change ts-ignore to ts-expect-error for files outside react/features
2022-10-19 11:42:54 +03:00
Robert Pintilii
440339dea8 ref(display-name) Change to function component (#12402)
Use makeStyles instead of withStyles
2022-10-19 10:19:40 +03:00
Jaya Allamsetty
dbb0a953c6 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1519.0.0+eb623e75...v1522.0.0+28436e57
2022-10-18 17:41:21 -04:00
Robert Pintilii
442ae6c3cb chore(TS): Create web tsconfig (#12381)
* fix(ts,connection) avoid mixing web and native code

* chore(ts) split config

The mobile part is still WIP.

* Remove default tsconfig

* Fix ts-loader - use web tsconfig

* Fix tsconfig

Use noEmit only on npm scripts (for type checking), but don't use it in webpack

* Fix

* Fix import

* Fix

Co-authored-by: Saúl Ibarra Corretgé <saghul@jitsi.org>
2022-10-18 11:21:48 -05:00
tamasdomokos
30051d2b0e feat(translation): add description for source language (#12371) 2022-10-18 14:42:51 +03:00
Robert Pintilii
9ae236a010 ref(keyboard-shortcuts) Change Dialog to function component (#12403)
Use makeStyles instead of withStyles
Fix style
2022-10-18 13:56:26 +03:00
Robert Pintilii
6f209a8139 ref(salesforce) Use new Dialog component (#12400) 2022-10-18 13:56:08 +03:00
Jaya Allamsetty
69567fb371 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1508.0.0+238dd7b2...v1519.0.0+eb623e75
2022-10-17 20:16:33 -04:00
Jaya Allamsetty
66cddddd3e fix(video-layout) Fix auto-pinning latest screenshare. 2022-10-17 16:53:27 -04:00
bogdandarie
485c875ee5 feat(config) add ability to hide speaker stats 2022-10-17 22:40:13 +02:00
Horatiu Muresan
ceb1cd9673 fix(screenshare-jwt) Disable screen share based on jwt 2022-10-17 11:01:56 -05:00
Calinteodor
4d817af060 feat(settings/native): fixed scroll inside screen (#12395)
* feat(settings): fixed scroll, bottom insets and bounce
2022-10-17 18:14:40 +03:00
Дамян Минков
a082a3fb0f feat: Updates deb install texts. (#12394)
* fix: Changes dialog txt for deb install.

* squash: Adjust jaas account creation txt.

* squash: Small update.

* squash: Small update2.
2022-10-17 09:18:31 -05:00
Robert Pintilii
2a321d6b1f ref(TS) Convert some files to TS (#12364) 2022-10-17 14:28:01 +03:00
Robert Pintilii
dd6478b3cf ref(ui-components) Use new Dialog (#12363)
Convert some files to TS
Improve Dialog component
2022-10-17 14:27:48 +03:00
Saúl Ibarra Corretgé
6274299d49 chore(ios) sync project file 2022-10-17 12:51:30 +02:00
Alex Bumbu
d77d2f0c5b fix(iOS, layout): fix iOS 16 layout
This (partially) reverts commit ddab27e292.

We're reverting this to fix the iOS 16 layout problems caused by the interaction between the app rootViewControoler and JitsiMeetViewController, with the downside that using any RN components based on native view controllers will most likely be faulty. The solution for this would be to change the SDK's entry point to a view controller, instead of JitsiMeetView.
2022-10-17 12:33:44 +02:00
Janitz
33be0dc32e fix(lang) add chat.sendButton translation 2022-10-17 12:05:59 +02:00
Robert Pintilii
44c8b31187 ref(styles) Change some withStyles to makeStyles (#12373)
Convert PreMeetingScreen to TS and transform it to function component
2022-10-17 12:28:04 +03:00
bogdandarie
1279c5b0da fix(jaas) redirect to about blank when close meeting opened in iframe 2022-10-17 09:32:18 +02:00
bogdandarie
495957104c fix(notifications) don't show self view notifications if already one is active 2022-10-17 09:03:06 +02:00
Calinteodor
b558d7936c feat(chat): fixed chat counter (#12385)
* feat(chat): fixed chat counter and updated new messages button web styles
2022-10-14 17:09:42 +03:00
Calin-Teodor
1fe2a9193f feat(conference/native): adjusted carmode ui 2022-10-14 16:13:54 +03:00
Calin-Teodor
e8e6beabab feat(prejoin/native): adjusted room name margins 2022-10-14 16:00:44 +03:00
Saúl Ibarra Corretgé
3e31e1816d fix(ios) fix mute "ping-pong" 2022-10-14 14:32:09 +02:00
kerem
eb1c3d8c56 feat(deps,rn) update React Native to version 0.68.4 (#12376)
* BREAKING: update rn to 0.68.4
2022-10-14 14:37:10 +03:00
Saúl Ibarra Corretgé
4a54f4bedc fix(rn,large-video) don't render video for the local SS 2022-10-13 19:14:40 +02:00
Calinteodor
4d84123c71 feat(prejoin/native): clear notifications when joining (#12361)
* feat(prejoin/native): clear notifications when joining
2022-10-13 17:05:21 +03:00
Saúl Ibarra Corretgé
4018e8875f fix(rn,screensharing) fix build 2022-10-13 15:19:24 +02:00
Calinteodor
be93fbd512 feat(toolbox/conference/audio-mode/chat/native): UI fixes and updates (#12375)
feat(toolbox/conference/audio-mode/chat/native): UI fixes and updates
2022-10-13 16:13:00 +03:00
Robert Pintilii
51bbc3f87f ref(ui-components) Use new Button on prejoin (#12372) 2022-10-13 13:42:39 +03:00
Robert Pintilii
f5fb402784 ref(TS) Convert some features to TS (#12366) 2022-10-13 11:26:28 +03:00
Robert Pintilii
70503d2518 ref(label) Convert to function component (#12370)
Fixes issue where Label styles would take precedence over parent styles (raised hand counter would be gray instead of yellow)
2022-10-13 10:46:00 +03:00
Дамян Минков
40e1f28fc2 fix: Fix log messages in end_conference module. (#12369)
* fix: Fix log message.

From `general error No muc_component specified` to `endconference.meet.damencho.net:end_conference error No muc_component specified`

* squash: more.
2022-10-12 13:31:06 -05:00
Calinteodor
935f95a3d5 feat(prejoin/native): ui updates (#12368)
* feat(prejoin/native): ui updates
2022-10-12 15:43:11 +03:00
Hristo Terezov
53e4f584f9 fix(remote-control): when multistream is enabled 2022-10-11 15:48:24 -05:00
Saúl Ibarra Corretgé
e218c0d3af fix(conference) fix Spot wireless screen sharing
Make sure we use the same screen-sharing flow which takes multi-stream
into consideration.
2022-10-11 18:09:50 +02: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
Saúl Ibarra Corretgé
6365b699c1 chore(deps) make sure all deps are pinned to exact versions 2022-10-11 11:16:00 +02:00
Saúl Ibarra Corretgé
768cca6162 fix(android) fix crash in Android < 10
Activity.registerActivityLifecycleCallbacks is only available in API level 29.

Ref: https://developer.android.com/reference/android/app/Activity.html#registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks)
2022-10-11 11:16:00 +02:00
Calinteodor
abdc5123eb feat(base/ui): fixed native button active style (#12353)
* feat(base/ui): fixed native button active style
2022-10-11 11:26:09 +03:00
Robert Pintilii
6423ed8fb5 ref(ui-components) Use new Dialog component (#12351)
Convert some files to TS
2022-10-11 11:24:11 +03:00
Robert Pintilii
b858496adb ref(ui-components) Use new Dialog component (#12349)
Convert some files to TS
Refactor MuteEveryone and MuteEveryonesVideo dialogs. Move shared code to abstract components. Remove unnecessary code
2022-10-10 12:12:02 +03:00
Jaya Allamsetty
68f79e52e7 fix(virtual-background) Remove unused action type VIRTUAL_BACKGROUND_TRACK_CHANGED. 2022-10-07 19:22:54 -04:00
Jaya Allamsetty
3f78de2d34 fix(virtual-backgroud) Remove desktop share as virtual background.
Its no longer supported in multi-stream mode.
2022-10-07 19:22:54 -04:00
Shawn
2029db5a59 fix(reservations): skip reservations check for breakout rooms 2022-10-07 17:07:28 -05:00
Jaya Allamsetty
6ede5c478f fix(external-api) Remove muted SS tracks from the list of participants currently screensharing.
Fixes an issue where 'contentSharingParticipantsChanged' event and 'getContentSharingParticipants' API continue to list IDs of the participants that have already stopped their screenshares.
2022-10-07 11:25:01 -04:00
Duduman Bogdan Vlad
2ba7b3acb7 fix(large-view) fix selection if local SS auto-select is true 2022-10-07 17:06:25 +02:00
robertpin
ebcd1d85f2 fix(local-recording) don't use tab audio
We have observed that participant audio is distant and garbled, so we
added the tracks individually to the mixer.

In addition, using tab audio prevents us from using preferCurrentTab due
to: https://bugs.chromium.org/p/chromium/issues/detail?id=1317964 so
losing audio effects but having better participant audio quality (in
addition to better UX) is not a bad compromise.
2022-10-07 17:04:31 +02:00
Saúl Ibarra Corretgé
4857664f15 fix(rn,display-name) fix displaying for virtual SS 2022-10-07 15:30:11 +02:00
Saúl Ibarra Corretgé
0f84b0b9fe fix(rn,thumbnail) fix not rendering indicators for virtual SS 2022-10-07 15:30:11 +02:00
Saúl Ibarra Corretgé
eda3e620d3 fix(rn,participants) fix not rendering connection info messages
Also move shouldRenderParticipantVideo to the only place it's used.
2022-10-07 15:30:11 +02:00
Saúl Ibarra Corretgé
e8df8f75a8 fix(rn,participants) fix rendering screen-sharing 2022-10-07 15:30:11 +02:00
Calin-Teodor
f2b2b02029 feat(base/modal): enable scroll for jitsi screen component 2022-10-07 16:27:40 +03:00
Avram Tudor
66769136ed fix(prejoin) show subject in prejoin if available (#12338) 2022-10-07 15:14:53 +03:00
Calin-Teodor
179647c93c feat(base/ui/native): centered button label 2022-10-07 12:21:25 +03:00
Robert Pintilii
25bd824621 ref(ui-components) Use new Dialog component (#12306)
Convert some files to TS
2022-10-07 12:16:41 +03:00
Robert Pintilii
be25ad855f ref(TS) Convert some files to TS (#12307) 2022-10-07 11:39:18 +03:00
Jaya Allamsetty
b1931de7b0 fix(screenshare): Pass _desktopSharingSourceDevice as shareOptions when available.
Fixes an issue when external cam as screensharing source fails on Spot with multi-stream enabled.
2022-10-07 07:38:21 +02:00
Horatiu Muresan
02da4a1c42 fix(hide-buttons-on-jwt) Fix getting disabled buttons (#12326) 2022-10-06 18:01:53 +03:00
damencho
5c2ec5df54 fix: Switches by default mutli-stream and through config.js.
We need that for mobile clients that are not updated.
2022-10-06 09:43:05 -05:00
Mihaela Dumitru
e30b0306f9 fix(whiteboard) account for moderation rights (#12323) 2022-10-06 16:01:45 +03:00
Mihaela Dumitru
11e13e1849 fix(whiteboard) use randomly generated room id for collaboration (#12321) 2022-10-06 15:22:48 +03:00
Calinteodor
0f7aa5a084 feat(mobile/navigation): disabled bottom tab navigator backBehavior (#12320)
* feat(mobile/navigation): disabled backBehavior in bottom tab navigator
2022-10-06 14:55:44 +03:00
Calinteodor
ad4707c660 feat(settings/native): start car mode in low bandwidth mode (#12286)
* feat(settings/native): start car mode in low bandwidth mode
2022-10-06 14:29:39 +03:00
Mihaela Dumitru
d0c22806ec ref(participants) use enum type to store fake participants (#12316) 2022-10-06 14:12:57 +03:00
tmoldovan8x8
be7f2643df fix(rn) disables joinButton while navigating 2022-10-06 13:33:26 +03:00
Robert Pintilii
6c9441fa7b ref(ui-components) Update ContextMenu and move it to base/ui (#12318) 2022-10-06 13:09:40 +03:00
Saúl Ibarra Corretgé
a2d39ca5b1 fix(rn,util) avoid 'clipboard-copy' being bundled in native
The copyText wrapper is used in the `showStartedRecordingNotification`
action, which is common for web and native. Provide a native
implementation so the right one is bundled.
2022-10-06 11:24:20 +02:00
Saúl Ibarra Corretgé
d2a36ea3a8 fix(doc) update README 2022-10-06 07:06:06 +02:00
Дамян Минков
e52c9043a5 feat: Adds some compatibility for building on windows. 2022-10-05 10:49:51 -05:00
Дамян Минков
ee5817539b fix: Fixes cert choice when pre-set in automations. (#12312)
* fix: Fixes cert choice when pre-set in automations.

* squash: fix
2022-10-05 10:49:21 -05:00
Jaya Allamsetty
da9b5a9156 fix(multi-stream): Set mediaType to screenshare on SS tracks.
Fixes an issue where camera video doesn't get requested by RN clients when the remote ep starts SS first before turning on their camera.
2022-10-05 09:50:57 -04:00
Дамян Минков
bb84c47e78 feat: Updates prosody dependency to be at least 0.11.7. 2022-10-05 08:16:43 -05:00
Дамян Минков
13f4da7855 fix: Workaround failure to install jitsi-meet-prosody Fixes #12300 2022-10-05 06:56:25 -05:00
Saúl Ibarra Corretgé
f935b29629 feat(rn,config) default to VP8 on mobile
VP9 is too resource intensive.

H.264 might be coming back for P2P but we need to fix support for
Android first, since it's not available with the default software codec
factory.
2022-10-04 22:43:51 +02:00
mbondarenko
f5f689c53d Added config option for enabling Opus DTX flag which used for reduction in the audio traffic, when a participant is silent then the audio packet won’t be transmitted. 2022-10-04 16:05:35 -04:00
Saúl Ibarra Corretgé
af4ba32803 chore(deps) react-native-webrtc@1.106.1
Last to support Plan B.

The method to embed WebRTC has changed to use CocoaPods.
2022-10-04 22:02:19 +02:00
kerem
9e11bc302b feat(deps,rn) update React Native to version 0.68.3 (#12293)
* feat(deps,rn) update React Native to version 0.68.3

Co-authored-by: keremoge <kerem.oge@albarakatech.com>
2022-10-04 19:29:23 +03:00
Saúl Ibarra Corretgé
438b3924d7 fix(ios,callkit) make sure the start call action is fulfilled 2022-10-04 16:32:46 +02:00
Horatiu Muresan
a2d0492007 feat(toolbar-buttons) Hide buttons disabled through JWT (#12261) 2022-10-04 16:02:49 +03:00
Robert Pintilii
c35d1d8d4b ref(polls) Convert files to TS (#12296) 2022-10-04 15:06:02 +03:00
Robert Pintilii
7d7bf987a1 fix(lobby) Make password hidden by default (#12295) 2022-10-04 13:52:37 +03:00
Robert Pintilii
3e744c5ffe ref(TS) Convert some files to TS (#12289) 2022-10-04 13:52:09 +03:00
Robert Pintilii
f4f8808d95 ref(ui-components) Update some dialogs to use the new component (#12288)
Improve Dialog component to auto close on cancel or on submit
Change logic to determine whether a dialog is using the new component
Convert some files to TS
2022-10-04 12:44:48 +03:00
Robert Pintilii
21bcbdc12f feat(local-recording) Change tab title to help identifying it (#12294) 2022-10-04 11:59:19 +03:00
Saúl Ibarra Corretgé
090433b6e8 feat(ci) cache npm package data
Ref: https://github.com/actions/setup-node#caching-global-packages-data
2022-10-03 13:13:53 +02:00
Saúl Ibarra Corretgé
230cbfac1e feat(ci) move linting to its own step
This allows it to run in parallel, and should make the overall run
faster.
2022-10-03 13:13:53 +02:00
Horatiu Muresan
c56c5bd145 fix(polls) Fix autoscroll for polls causing layout issues 2022-10-03 12:39:08 +03:00
Tamas Domokos
f5a4fd4bc2 fix (translation) remove unused i18n import 2022-10-03 11:15:12 +02:00
Calin-Teodor
cb881311e7 feat(mobile/navigation): updated translations for screen headers 2022-10-03 12:04:06 +03:00
Nakorn
ac2698f829 12272 2022-10-01 07:16:37 +02:00
Nakorn
5fafb5d29e Update Chinese translations 2022-10-01 07:16:37 +02:00
Saúl Ibarra Corretgé
fbcdb250f4 fix(ts) fix build on macOS
Why this line fails is a mystery, but it's only reproducible on macOS.
2022-09-30 15:43:40 -05:00
Saúl Ibarra Corretgé
ba8529d72b feat(ci) run GHA also on macOS 2022-09-30 15:43:40 -05:00
Mihaela Dumitru
1230cebde2 fix(avatar) support icons alongside cors avatars (#12280) 2022-09-30 17:51:16 +03:00
Mihaela Dumitru
93406bb12c feat(whiteboard) add initial implementation (#12185) 2022-09-30 17:50:45 +03:00
dependabot[bot]
d43eea91cf chore(deps): bump nth-check and @svgr/webpack
Bumps [nth-check](https://github.com/fb55/nth-check) to 2.1.1 and updates ancestor dependency [@svgr/webpack](https://github.com/gregberge/svgr). These dependencies need to be updated together.


Updates `nth-check` from 1.0.2 to 2.1.1
- [Release notes](https://github.com/fb55/nth-check/releases)
- [Commits](https://github.com/fb55/nth-check/compare/v1.0.2...v2.1.1)

Updates `@svgr/webpack` from 4.3.2 to 6.3.1
- [Release notes](https://github.com/gregberge/svgr/releases)
- [Changelog](https://github.com/gregberge/svgr/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gregberge/svgr/compare/v4.3.2...v6.3.1)

---
updated-dependencies:
- dependency-name: nth-check
  dependency-type: indirect
- dependency-name: "@svgr/webpack"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-30 11:08:45 +02:00
Robert Pintilii
7364c7f27b ref(TS) Remove unnecessary ts-ignores 2022-09-30 11:08:03 +02:00
Calinteodor
2de2500080 feat(mobile/navigation/welcome): welcome page tabs translations 2022-09-30 11:07:00 +02:00
TTG
349e4bfb57 fix(lang) update Chinese translations & fix typo 2022-09-30 09:08:34 +02:00
Christoph Settgast
4f92811263 fix(lang) update German translation (#12277) 2022-09-29 22:10:01 +02:00
abora8x8
a4e35f81cf fix(polls) refactor message handling 2022-09-29 19:28:24 +02:00
Alexandru Petrus
7aefc3b94a feat(invite-dialog) Add limit message for invite dialog 2022-09-29 19:06:14 +03:00
Avram Tudor
3c180d3932 ref(join) remove overlay shown for a slow gUM flow (#12268) 2022-09-29 16:55:31 +03:00
Saúl Ibarra Corretgé
c523c07cb7 fix(config) drop debug lefover 2022-09-29 13:47:43 +02:00
Robert Pintilii
5c77f61037 ref(gifs) Convert feature to TS (#12264) 2022-09-29 14:45:34 +03:00
tamasdomokos
8162ae4dbe fix(translation) translation button visibility for users, add missing languages 2022-09-29 13:44:59 +02:00
Calin-Teodor
69e0a37529 feat(base/ui): added autofocus prop 2022-09-29 13:31:20 +03:00
Robert Pintilii
bfa88f13dc feat(ui-components) Add Dialog Component (#12260) 2022-09-29 13:26:34 +03:00
Robert Pintilii
0d917df1fb ref(feedback) Use new Input component (#12265)
Remove @atlaskit/field-text-area dep
2022-09-29 12:40:16 +03:00
Jaya Allamsetty
95a3a8de0b fix(face-landmarks): Check mute state from redux before starting detection. 2022-09-28 11:48:13 -04:00
Bogdan Duduman
f4985d8028 increase heap node for build 2022-09-28 06:27:31 -05:00
William Liang
5d6aec3f3c fix(speaker-stats) decouple sort order from speaker stats (#12197) 2022-09-28 10:51:53 +03:00
Shawn Chin
2e6f14f872 feat(reservations) start lobby and set password from reservation (#12215)
* feat(reservations) support enabling lobby and password based on reservations data

* Add warning about unhandled use case

* feat(lobby) Support automated activation of lobby
2022-09-27 14:59:30 -05:00
TTG
90b17046f6 fix(lang) remove non-existent languages (#12258)
* Remove Thai from all language.json

* Remove Azerbaijani from all language.json
2022-09-27 14:50:37 -05:00
Saúl Ibarra Corretgé
86ab2be65e chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1506.0.0+3fc03265...v1508.0.0+238dd7b2
2022-09-27 21:43:58 +02:00
Saúl Ibarra Corretgé
11f138d28f feat(room-metadata) add module for generic room metadata storage 2022-09-27 20:50:41 +02:00
damencho
e163d6438b chore(deps) update js-utils
Updates dict.
2022-09-27 12:44:53 -05:00
TTG
24cb07b830 lang: Update Chinese translations (#12104)
* lang: Update Chinese translation

* lang: Remove nonexistent language

* Update main-zhTW.json

* Update main-zhCN.json

* Update main-zhTW.json

* Update languages-zhTW.json

* Delete languages.json

* Revert "Delete languages.json"

This reverts commit 7f96a19ba7.

* Update languages.json

* Update languages-zhCN.json

* Update languages-zhTW.json

* Add newline at end of file

* Update languages.json

* Update languages-zhCN.json
2022-09-27 12:44:34 -05:00
Bogdan Duduman
53df3a7b55 fix: fix copyText import 2022-09-27 11:43:29 -05:00
Horatiu Muresan
ca54533153 fix(audio-configs) Fix startWithAudioMuted overrriding startSilent (#12251) 2022-09-27 15:56:59 +03:00
Saúl Ibarra Corretgé
02f5987187 feat(rn,conference) show participants pane in the top bar
Replace the invite button, which is accessible within the participants
pane.

Show the screen-sharing button in the toolbox when space allows, and fix
it so it's rendered when outside the overflow menu.
2022-09-27 13:21:08 +02:00
Horatiu Muresan
ce96b71bfa fix(config) Update link to to UI tokens 2022-09-27 13:32:32 +03:00
Saúl Ibarra Corretgé
a32d237d54 chore(deps,eslint) update eslint-config-jitsi to 4.1.4 2022-09-27 11:22:36 +02:00
Bogdan Duduman
48db099134 feat: include sort members eslint changes 2022-09-27 10:25:20 +02:00
Robert Pintilii
1106a86ba7 ref(connection-indicator) Convert to TS (#12239) 2022-09-27 10:42:30 +03:00
Jaya Allamsetty
54346c065d feat(large-video) Show SS on large-video instead of camera tile.
This is helpful in live streaming scenarios when AUTO_PIN_LATEST_SCREEN_SHARE is disabled and multi-stream is enabled. Dominant speaker's SS tile (if available) will be on stage instead of their camera tile. Fixes https://github.com/jitsi/jitsi-meet/issues/10869.
2022-09-26 16:57:11 -04:00
Filip Rejmus
c3ebde18df fix(helpers) move copyText function to web.js file
It gets bundled on mobile for no reason otherwise.
2022-09-26 19:31:06 +02:00
José Luís Andrade
c613082ce1 lang: Update Portuguese translation (#12241) 2022-09-26 11:26:49 -05:00
Saúl Ibarra Corretgé
eee096e0c0 fix(ts,build) fix TS error in web build 2022-09-26 09:47:35 -05:00
Robert Pintilii
9c6119606f ref(chat) Convert some files to TS (#12238) 2022-09-26 12:54:22 +03:00
Robert Pintilii
077afecdba fix(external-api) Fix pin function (#12236)
Make pin function work with stage filmstrip
2022-09-26 12:13:32 +03:00
Дамян Минков
1b4bbcba3d fix: Fixes jaas and cert choice when package configure is reordered. (#12234)
* fix: Fixes jaas and cert choice when package configure is reordered.

* squash: Checks for jaas-choice before asking.
2022-09-24 08:24:18 -05:00
Jaya Allamsetty
32b8c62ec9 fix(face-landmarks) Do not start detection on muted tracks 2022-09-23 14:26:40 -04:00
Дамян Минков
a9bc83db03 feat: Set LE as default choice when installing. (#12232)
* feat: Set LE as default choice when installing.

* squash: Text updates.
2022-09-23 13:10:06 -05:00
Horatiu Muresan
90bcbebedb fix(carmode) Don`t show rec/live labels after rec/ls finished 2022-09-23 15:26:33 +03:00
Robert Pintilii
c06d456ae6 fix(external-api) Fix start recording (#12227)
Check recording is enabled before start
2022-09-23 13:22:37 +03:00
Saúl Ibarra Corretgé
fe0c804cc0 feat(android) add logcat helper script 2022-09-23 11:56:49 +02:00
Robert Pintilii
4ee77b1f65 ref(TS) Convert some base files to TS (#12226) 2022-09-23 12:03:25 +03:00
Shawn Chin
7cbb377a66 feat(external-api) start/stop local recording (#12210) 2022-09-23 11:46:54 +03:00
Robert Pintilii
0bccda2c9e ref(TS) Convert more base files to TS (#12222) 2022-09-23 11:13:32 +03:00
Robert Pintilii
3426960d5a ref(TS) Convert base/tracks to TS (#12219) 2022-09-23 10:48:20 +03:00
Horatiu Muresan
fb2cfaa204 fix(carmode) Force portrait when in carmode 2022-09-22 17:17:19 +03:00
Дамян Минков
d61d47fae3 fix: Fixes LE script on existing cert. (#12223)
* fix: Fixes LE script on existing cert.

Updates jaas shown message.

* squash: Make sure .well-known folder exists.

* squash: Fix LE when running apt commands with sudo.

Forces acme.sh to work when it detects sudo.

* squash: Change jaas message on install.

* squash: Uses issue return code to check for existing cert.
2022-09-22 09:08:32 -05:00
Gabriel Borlea
2cb9596536 feat(rtc-stats): send face landmarks detection off timestamp to service (#12183)
* feat(rtc-stats): send camera off timestamp to service

* code review

* improve error handling

* improve rtcstats middleware and complete typescript types
2022-09-22 13:06:31 +03:00
Robert Pintilii
62a10e6587 fix(giphy) Allow space in input (#12221)
Fixes: space closes gif menu
2022-09-22 11:34:46 +03:00
damencho
e38f9a293b fix: Fixes postinst after pull/12213. 2022-09-21 17:28:02 -04:00
Дамян Минков
eba7cfcec5 feat: Adds automatic jaas account creation. (#12213)
* feat: Adds automatic jaas account creation.

* squash: Prints return data if any.

* squash: Moves jitsi-challenge.txt to /usr/share/jitsi-meet/.well-known.
2022-09-21 13:57:30 -05:00
Jaya Allamsetty
ae70370a38 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1505.0.0+f49afde5...v1506.0.0+3fc03265
2022-09-21 14:00:48 -04:00
Jaya Allamsetty
45c67142e9 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1504.0.0+85fb01c0...v1505.0.0+f49afde5
2022-09-21 10:43:18 -04:00
Jaya Allamsetty
6a03e49b9e update config.js 2022-09-21 10:15:38 -04:00
Jaya Allamsetty
25e7b79237 feat(multi-stream) Enable multi-stream by default (if not disabled explicitly). 2022-09-21 10:15:38 -04:00
Robert Pintilii
779ecd6da6 feat(ui-components) Add Tabs component (#12199) 2022-09-21 14:57:59 +03:00
Robert Pintilii
dd4d49a591 fix(filmstrip) Fix stage filmstrip (#12209)
Use new settings action to determine when max has been reduced
2022-09-21 14:57:40 +03:00
Robert Pintilii
63b6b5a72d ref(TS) Convert some files to TS (#12204) 2022-09-21 11:32:50 +03:00
George Politis
df9185f92a ref(callstats): Removes redundant config.js option. 2022-09-20 16:54:25 +03:00
Saúl Ibarra Corretgé
9bb0decb30 fix(build) speed up webpack dev build by 4x
Skip type checking, only do it in prod builds (the CI will check those).

Main bundle build times:

- Before: 255101ms
- After: 58463ms
2022-09-20 08:40:34 +02:00
Saúl Ibarra Corretgé
e18240cfc6 chore(build) rename option for clarity 2022-09-20 08:40:34 +02:00
Jaya Allamsetty
1703ed8b23 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1502.0.0+62b0e5c4...v1504.0.0+85fb01c0
2022-09-19 12:43:05 -04:00
Saúl Ibarra Corretgé
945eda680c chore(ios) sync Podfile.lock 2022-09-19 15:39:32 +02:00
Saúl Ibarra Corretgé
a378ba7827 feat(ios) Xcode 14 compatibility
Bitcode is no longer supported, so remove it. The M106 WebRTC version no
longer contains bitcode either, but it embeds dSYMs.
2022-09-19 15:01:47 +02:00
Saúl Ibarra Corretgé
73ab43ac0c feat(android) disable volume logger thread 2022-09-19 15:01:47 +02:00
Saúl Ibarra Corretgé
3f5fa1e663 feat(rn,deps) update WebRTC to M106 2022-09-19 15:01:47 +02:00
Robert Pintilii
e05ad18ee4 fix(prejoin) Remove no longer needed hack 2022-09-19 14:57:57 +02:00
Robert Pintilii
6dd04136de ref(TS Convert some files to TS (#12191) 2022-09-19 10:40:03 +03:00
Jaya Allamsetty
ffe005ba0a chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1500.0.0+d96dad72...v1502.0.0+62b0e5c4
2022-09-16 15:30:41 -04:00
Jaya Allamsetty
7393c20ed8 fix(testing): Fixes for multi-stream torture tests to work. 2022-09-16 14:31:41 -04:00
tmoldovan8x8
7509b520f3 fix(e2ee) check if e2ee is supported before playing the sound 2022-09-16 14:28:36 +03:00
Robert Pintilii
4c9f3d287a fix(prejoin) Fix focus stealing in settings (#12188)
Remove ref focus from InputField component
Replace input component in GifsMenu and add ref focus
2022-09-16 13:05:15 +03:00
TTG
fef562d767 fix(lang) remove unused language lists 2022-09-16 10:58:28 +02:00
Saúl Ibarra Corretgé
d9bbf35466 fix(settings) fix not storing maxStageParticipants 2022-09-15 23:30:44 +02:00
Saúl Ibarra Corretgé
1cd80a33c6 fix(config) fix check for filmstrip property
The whole object might be undefined.
2022-09-15 19:43:33 +02:00
Robert Pintilii
2d6e181a13 feat(ui-components) Add Select component (#12182)
Remove @atlaskit/dropdown
Convert some files to TS
2022-09-15 15:20:11 +03:00
Robert Pintilii
f5e60a7ca4 fix(filmstrip) Save stage filmstrip in settings (#12170)
Add config for stage participants number
Enable stage filmstrip by default
2022-09-15 10:57:48 +03:00
Hristo Terezov
f0a45a9976 feat: Handle dominant speaker silence 2022-09-14 12:13:41 -05:00
Hristo Terezov
81f5e68382 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1498.0.0+bc3aae02...v1500.0.0+d96dad72
2022-09-14 12:13:16 -05:00
Alex Bumbu
e68ede65e1 feat(iOS): callkit objc implementation 2022-09-14 18:52:39 +02:00
damencho
8c0de928ab fix: Set default choice for jaas, keeps old behavior. 2022-09-14 10:15:49 -05:00
Horatiu Muresan
9d57c8e058 fix(external-api) Add email to local participant info 2022-09-14 17:57:08 +03:00
Horatiu Muresan
35442c6094 fix(external-api) Fix notify audio muted/audio available 2022-09-14 16:39:03 +03:00
Gabriel Borlea
d6f3c2a0f4 ref(face-landmarks): convert to typescript and add detector class (#12144)
* fix(face-landmarks): stop recognition when imageCapture error

* ref(face-landmarks): convert files in typescript

fix: lint issues

* code review

* ref(face-landmarks): move detection part to a class

* ref(face-landmarks): make FaceLandmarksDetector singleton

* fix typo and ts-ignore problematic types

* fix linting issues
2022-09-14 15:42:46 +03:00
tmoldovan8x8
b83c55e9c4 fix(rn) fixes typo in functions.native 2022-09-14 14:49:13 +03:00
Robert Pintilii
a1d20dc188 ref(TS) Convert some features to TS (#12149)
Convert AV Moderation and Breakout Rooms to TS
2022-09-14 14:32:58 +03:00
Robert Pintilii
95084e1004 ref(TS) Convert some base features to TS (#12138) 2022-09-14 10:54:56 +03:00
Saúl Ibarra Corretgé
5502601fb3 fix(subtitles) web components must not be used in generic action files 2022-09-13 16:17:10 +02:00
Saúl Ibarra Corretgé
3fa72c99bc fix(rn,conference) fix mobile build
Looks like Metro is confused by these imports.
2022-09-13 16:17:10 +02:00
Дамян Минков
079a2a505d feat: Adds LE choice when installing debian package. (#12154)
* feat: Adds LE choice when installing debian package.

* Update debian/jitsi-meet-web-config.templates

Co-authored-by: raluca8x8 <raluca.tocmag@8x8.com>

* squash: Print in the console the JaaS link everytime.

* squash: Note that JaaS does not support self-signed certs.

* squash: Fix message.

* squash: Moves acme.sh stuff into a script, so it is easy to re-run.

Co-authored-by: raluca8x8 <raluca.tocmag@8x8.com>
2022-09-13 07:55:00 -05:00
Robert Pintilii
139884fbe7 ref(dep) Upgrade MUI (#12089) 2022-09-13 10:36:00 +03:00
Misha
3ef3233242 ref(conn-indicator): remove E2E RTT (#12139)
There was a fundamental change in how e2e pings work in lib-jitsi-meet where it does few pings at the beginning, pushes metrics and shuts the whole thing down, so there are no more e2ertt updates after that. Plus it's disabled by default. @paweldomas have decided with @bgrozev to remove that instead of trying to adjust. Even if e2e pings are enabled the data is not feed correctly to the indicators, what's wrong there is as soon as the pings stop going the new data does not arrive and then all you get is N/A if the UI component is recreated.
2022-09-12 15:57:15 -05:00
JohnProv
443f4e4feb fix(lang) update Dutch translation 2022-09-12 19:28:25 +02:00
Alexandru Petrus
21a1d52753 fix(large-video) disable screen-sharing placeholder on Spot
Temporary hack, this should likely be configurable.
2022-09-12 18:00:02 +02:00
Bogdan Duduman
0f63e560b0 feat(external_api) add adbility to resize the filmstrip 2022-09-12 14:08:55 +02:00
Horatiu Muresan
43bea201e6 fix(prejoin) Hide conference name based on config 2022-09-12 10:35:37 +03:00
Horatiu Muresan
6e1e6df952 fix(prejoin) Fix roomname showing for 3rd party prejoin app (#12155)
* fix(prejoin) Fix roomname showing for 3rd party prejoin app

* fix: Do not convert roomName to string when undefined.

Co-authored-by: damencho <damencho@jitsi.org>
2022-09-09 12:10:50 -05:00
Saúl Ibarra Corretgé
8ce1423373 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1496.0.0+e1ca2f5a...v1498.0.0+bc3aae02
2022-09-09 16:57:08 +02:00
Saúl Ibarra Corretgé
ede97584f2 fix(ios) fix lite SDK release process 2022-09-09 13:37:08 +02:00
Robert Pintilii
247c54b6c6 ref(TS) Convert constants tiles to TS (#12148)
Remove unnecessary ts-ignores
2022-09-09 12:22:30 +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
Artur Shepilko
e296008d95 lang: update Ukrainian translation 2022-09-07 18:33:00 -05:00
Jaya Allamsetty
01001d6438 fix(large-video) Update large-video when the streamingStatus of the attached track changes.
This fixes an issue where screenshare appears on the thumbnail but not on the large-video.
2022-09-07 18:31:23 -04:00
damencho
fce15b491d feat: Adds jaas choice when installing. 2022-09-07 08:21:12 -05:00
damencho
cf37ba8771 feat: Drops prosody 0.10 checks. 2022-09-07 08:21:12 -05:00
damencho
0350f18e68 feat: Drops migration from jetty deployments. 2022-09-07 08:21:12 -05:00
Robert Pintilii
c9bbc6c762 ref(TS) Remove unnecessary ts-ignores (#12136) 2022-09-07 11:20:05 +03:00
Christoph Settgast
fa942e9f3b fix(lang) update German translation (#12122)
Signed-off-by: Christoph Settgast <csett86@web.de>
2022-09-07 09:13:19 +02:00
Robert Pintilii
fd67fb652b fix(analytics) Fix lint error (#12135) 2022-09-07 09:54:31 +03:00
Ali Alhaidary
a87d4f4a1d fix(lang) updated Arabic translation 2022-09-06 19:32:47 +02:00
Robert Pintilii
efb69d5382 ref: Improve TS files (#12130)
Remove unnecessary ts-ignores
Change any to actual types
Fix eslint rule
2022-09-06 20:32:20 +03:00
Flying-Light
db988f6e62 fix(lang) improve Arabic translation
Modify some translations for their difficulty for the user.
Add some missing translations like "ask to unmute"
2022-09-06 19:27:44 +02:00
Robert Pintilii
f4b46128bc ref(analytics) Convert to TS (#12099) 2022-09-06 15:51:50 +03:00
Gabriel Borlea
9323b86e3c feat(rtc-stats): support for react native and breakout rooms (#11835)
* feat(rtc-stats): mobile flow

* fix(rtc-stats): create websocket connection event

* feat(rtc-stats): separate middlewares and filter callstats pcs

* fix: linting problems

* fix: linting problems 2

* fix(rtc-stats): middlewares

* ref(rtc-stats): rewrite in typescript

* remove blank line and flow tag

* fix: linting problems

* remove redundant comment

* remove index file

* fix: sort interface keys

* feat(rtc-stats): support for breakout rooms

* ref(rtc-stats): send isBreakoutRoom flag when connecting to rtc stats

* code review

* fix(rtc-stats): rebase issues

* remove empty lines

* chore(rtc-stats): update rtc-stats to latest version

* fix: linting issues
2022-09-06 10:42:59 +03:00
Saúl Ibarra Corretgé
06842c724a fix(rn,video-layout) fix mobile
In adcd9a501b a call to getCurrentLayout
was introduced, which is not mobile-friendly :-(
2022-09-06 09:27:47 +02:00
Duduman Bogdan Vlad
5f62acc67c fix(external_api): Fix number of participants in meeting (#12052) 2022-09-06 09:51:38 +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
Alexey Matveev
f18f8c1061 fix(lang) update Russian translation 2022-09-05 10:22:13 +02:00
Saúl Ibarra Corretgé
b535b8c583 fix(lobby) fix opening lobby chat after API change 2022-09-01 14:21:32 -05:00
Hristo Terezov
adcd9a501b ref(receiver-constraints): Refactor and fixes. 2022-09-01 13:22:09 -05:00
Saúl Ibarra Corretgé
cfb1fef162 fix(breakout-rooms) fix broadcast timer 2022-09-01 18:19:29 +02:00
Saúl Ibarra Corretgé
8b4f2495dc fixup! 2022-09-01 17:13:33 +02:00
Saúl Ibarra Corretgé
7e7107d45a feat(build,ljm) don't expose jquery
lib-jitsi-meet no longer requires it.
2022-09-01 17:13:33 +02:00
Saúl Ibarra Corretgé
45c0597aff chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1494.0.0+c9be46e2...v1496.0.0+e1ca2f5a
2022-09-01 17:12:50 +02:00
Calinteodor
c77e2c8301 feat(settings/native): fixes and updates (#12094)
feat(settings/native): fixes and updates
2022-09-01 15:05:14 +03:00
Robert Pintilii
3403d7bec2 ref: Convert reducers to TS (#12101) 2022-09-01 14:00:49 +03:00
Robert Pintilii
c4557c66aa chore(dep) Update caniuse-lite (#12109) 2022-09-01 11:32:11 +03:00
Robert Pintilii
cfda02ee10 ref(shared-video) Merge web and native reducers (#12108)
Convert reducer to TS
2022-09-01 11:32:01 +03:00
JohnProv
575ab1f1cb fix(lang) update Dutch translation 2022-09-01 09:19:29 +02:00
tamasdomokos
b4f98e7386 feat(translation) enable cc translation (#12046)
* feat(translation) enable cc translation

* Refactor translation for ListItem.

* fix language file sorting

* fix translation order

* change import order
2022-08-31 10:57:31 -05:00
Calin-Teodor
e8de9b4d66 feat(prejoin/native): update react-native-video dep and unmount LargeVideo is Prejoin is not focused 2022-08-31 12:55:02 +03:00
damencho
6fe353cfa4 fix: Fixes lua log lines.
When using directly log( the log lines come from `general` not from the module itself.
`Aug 29 19:38:08 general	info	Starting speakerstats for conference...`
2022-08-30 11:24:28 -05:00
Stefan Weil
882d343e8b chore(typos) fix some typos 2022-08-30 16:21:58 +02:00
Hristo Terezov
cc3a8b7b8d fix(stage-filmstrip): Pinning
Pinning participant was not working for stage filmstrip and
screen sharing filmstirp layouts
2022-08-30 08:41:38 -05:00
Saúl Ibarra Corretgé
104bfe7339 fix(rn,thumbnail) show SS indicator on the local thumbnail 2022-08-30 14:13:17 +02:00
Saúl Ibarra Corretgé
fb9d35a991 fix(rn,tracks) fix muting local screenshare when remote is muted
A "is local" check was missing.
2022-08-30 14:13:17 +02:00
Saúl Ibarra Corretgé
8fabba1679 fix(shared-video) fix exception on mobile
Also use the "standardized" way of instantiating loggers.
2022-08-30 14:13:17 +02:00
Saúl Ibarra Corretgé
5fbf741278 fix(rn,filmstrip) avoid "red" screen sharing tile
Mobile does not render screen-shares in tiles for performance reasons.
This coincidentally fixes the "red" tile that was attempted to be
rendered when the local partitipant started screen-sharing.
2022-08-30 14:13:17 +02:00
Saúl Ibarra Corretgé
bebcc8234f fix(rn,multi-stream) don't send multiple streams on mobile
Mobile does not do multiple local video streams for performance reasons,
so avoid creating the local fake participant.

WIP
2022-08-30 14:13:17 +02:00
Avram Tudor
1e9f599a35 ref(config) move defaultLogoUrl to config object (#12087)
* ref(config) move defaultLogoUrl to config object

* code review changes
2022-08-30 14:52:36 +03:00
Horatiu Muresan
cc5a3e499f feat(aot-prejoin) Add support for showing AOT on prejoin 2022-08-30 11:42:29 +03:00
Calin-Teodor
dbcbafe088 feat(polls/native): fixed scroll inside screen 2022-08-29 17:09:50 +03:00
José Luís Andrade
b034cf27cb lang: Update Portuguese translation (#12081) 2022-08-29 08:08:14 -05:00
Calin-Teodor
126dba8070 feat(security/native): options available only if participant is moderator 2022-08-29 15:30:36 +03:00
Calin-Teodor
a7c1aa4900 feat(settings/native): updated placeholder and placeholder text color 2022-08-29 15:21:50 +03:00
Saúl Ibarra Corretgé
206215c7c1 feat(ios) add generated Swift interface header
We need it for the RN module since it won't be (re)generated. It has not
changed in 4 years, so I guess it's safe to assume it'll stay that way.
2022-08-29 12:49:07 +02:00
Jaya Allamsetty
f38c5f39d2 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1493.0.0+3cf3db1a...v1494.0.0+c9be46e2
2022-08-26 15:12:56 -04:00
wfleischer
09efaecc41 feat(conference) add end conference
Add the ability (for moderators) to end the meeting for everyone.
2022-08-26 20:25:04 +02:00
Saúl Ibarra Corretgé
3bb581c8d9 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1487.0.0+f3f922a8...v1493.0.0+3cf3db1a
2022-08-26 20:24:08 +02:00
Nils Ohlmeier
96099a06a8 feature(rtcstats): expose sendSdp as config option (#12072)
* feature(rtcstats): expose sendSdp as config option

* fixed linting error
2022-08-26 13:03:08 -05:00
Saúl Ibarra Corretgé
4ef5da6c82 fix(ts) fix build 2022-08-26 08:01:59 -05:00
George Politis
289ece42df feat(logging): Store JS console logs in RTCStats.
With this commit JS console logs can optionally be sent to the RTCstats server
for storage and processing.

The functionality is off by default and can be enabled by setting to `true` the
config.js option

    config.analytics.rtcstatsStoreLogs: false // off by default

Obviously, if rtcstats is disabled/not configured nothing will be sent to the
rtcstats backend, even if this setting is set to `true`.

This commit also adds a config.js option that can be used to disable sending the
logs back to callstats:

    config.callstatsStoreLogs: true // on by default

Obviously, if callstats is disabled nothing would be sent in the first place,
but if callstats is enabled and this new configuration parameter is set to
`false`, then callstats will be kept active but no logs will be sent to
callstats.
2022-08-26 14:19:48 +03:00
Saúl Ibarra Corretgé
7dba5f8a7e fix(prejoin) use the conference display name instead of the room name
The room name could be a UUID and the conference display name an actual
name, using the subject.
2022-08-26 12:21:01 +02:00
Robert Pintilii
1010955393 ref: Convert some reducers to TS (#12065) 2022-08-26 12:54:16 +03:00
Robert Pintilii
3bd3be4df0 ref: Convert files to TS (#12007)
Convert files that use material-ui to TS (needed for material-ui upgrade)
2022-08-26 12:54:03 +03:00
Duduman Bogdan Vlad
fc60ab8383 feat(conference) send leave reasons on switching room and when errors occur 2022-08-26 11:53:32 +02:00
Rokixy
85d2123fac fix(chore) fix typo 2022-08-26 10:11:08 +02:00
Дамян Минков
5790742d53 fix(debian) add missing dependency of lua-inspect 2022-08-26 09:31:11 +02:00
bogdandarie
be1752c162 Feat (chat) add new message badge (#11987)
Change scroll to bottom when receive a new message with:
- scroll to bottom if scroll was at the bottom before getting a new message
- keep the scroll in his original position when the scroll position was not at the bottom
- scroll to bottom when open first time the chat
2022-08-26 09:21:41 +03:00
Gabriel Borlea
b9aeb19379 fix(face-landmarks): not sending duplicate expressions when recognition stops (#12067)
fix(facelandmarks): do not perform stop recognition if it is not active
2022-08-25 16:52:03 +03:00
Jaya Allamsetty
7951dc3ce7 fix(audio-only) Do not enable video automatically when audio-only is disabled (#12056)
* fix(audio-only) Do not enable video automatically when audio-only is disabled.
2022-08-25 08:40:32 -04:00
Robert Pintilii
dfb2a07cfa ref: Convert material-ui files to TS (#12013)
Convert files that use material-ui to TS (needed for material-ui upgrade)
2022-08-25 14:35:19 +03:00
Calinteodor
94dc6309de feat(base/native): Switch thumb track color (#12066)
* feat(base/native): Switch thumbColor and trackColor default props
2022-08-25 14:25:13 +03:00
Rokixy
3f2018a1de fix(chore) fix typo 2022-08-25 11:30:39 +02:00
Calin-Teodor
cd4ab8a5f1 feat(polls/native): added thumbColor for android 2022-08-25 10:57:34 +03:00
Hristo Terezov
594f9dfcdd fix(follow-me): SS not visible
The remote screen shares stored in redux were not updated when follow
me is active. Therefore the receiver constraints were not correct.
2022-08-24 16:42:51 -05:00
Robert Pintilii
8dd71a921b ref(ui-components) Improve native and web Switch (#12061)
Bring Switch component more in line
Convert some files to TS
2022-08-24 12:46:22 +03:00
Calinteodor
6d39d13af7 feat(lobby/prejoin): added room name title (#12054)
* feat(lobby/prejoin): added room name title
2022-08-24 12:43:28 +03:00
Robert Pintilii
372c2cb0f9 fix(participant) Avoid unnecessary unpin calls (#12060) 2022-08-24 11:26:09 +03:00
Calin-Teodor
5b41d68d39 feat(settings): changed switch enabled track color 2022-08-24 11:10:26 +03:00
JohnProv
1b9870dade Update main-nl.json 2022-08-23 13:13:27 -05:00
Mariusz Krzaczkowski
38eff2ba24 lang: Update for Polish (#12053)
* [i18n] Update for Polish

* [i18n] Update for Polish

* [i18n] Update for Polish
2022-08-23 09:54:50 -05:00
apetrus20
11f6b442fe feat (screen-share) Added logs and emit iframe event for video and audio sharing (#12051) 2022-08-23 15:17:18 +03:00
Calinteodor
e458eed931 feat(recording): StartRecordingDialogContent web and native (#12009)
* feat(recording): StartRecordingDialogContent web and native
2022-08-23 11:56:02 +03:00
Avram Tudor
f07bd4a0d6 feat(prejoin) add room name to premeeting screen (#12049) 2022-08-22 16:26:35 +03:00
Robert Pintilii
40637aa3dc ref(ui-components) Improve Button component (#12015)
Bring web and native more in line
2022-08-22 12:40:59 +03:00
Jaya Allamsetty
2f10d80184 fix(logging) Add more info logs for device switching. 2022-08-18 21:59:03 -04:00
Artur Shepilko
739c060018 lang: add Ukrainian to more languages 2022-08-18 13:20:02 -05:00
damencho
41a6cbd3fc fix: Jwt context.features to work without context.user. Fixes #12005 2022-08-18 12:01:20 -05:00
Calin-Teodor
61df6f6794 feat(media): added extra percentage padding right to screen share view fit 2022-08-18 18:07:35 +03:00
Artur Shepilko
d44cbb6d1e lang: update Ukrainian translation 2022-08-17 15:46:12 -05:00
Nils Ohlmeier
06ed0e43ad update(rtcstats): fix one more left over comment around poll intervall (#12036) 2022-08-17 12:58:09 -07:00
Calin-Teodor
eb911ec9b5 feat(participants-pane/native): fixed undefined error 2022-08-17 18:21:30 +03:00
Calin-Teodor
e8cdf38fda native ui fixes 2022-08-17 15:45:23 +03:00
Saúl Ibarra Corretgé
e578f6c30f feat(logging) migrate logging to config.js 2022-08-17 14:32:40 +02:00
Saúl Ibarra Corretgé
77d687952d feat(jwt) deprecate and remove enableFeaturesBasedOnToken
The new behavior is as follows:

IF a user has a token and `features` is not set, we treat it as if the
feature was enabled.

IF a user has a token and `features` is set, we check if the feature
name has a value of "true".

`isJwtFeatureEnabled` also provides a way to specify the default value
in case there is no token.
2022-08-17 11:17:29 +02:00
Saúl Ibarra Corretgé
bf222c5094 fix(highlight) check for JaaS features before opening the dialog 2022-08-17 11:17:14 +02:00
Saúl Ibarra Corretgé
08f9dc5e83 fix(participants-pane) fix button impport
Fixes: https://community.jitsi.org/t/navigation-link-in-participants-button-broken-after-usage-of-lobby-chat/116606
2022-08-17 10:34:33 +02:00
Nils Ohlmeier
9c83831b2c update(rtcstats): adjusted poll intervals in comments to match default value 2022-08-16 13:10:20 -05:00
Jaya Allamsetty
97bc41f644 fix(filmstrip) Push dominant speaker to the top of the active speaker list.
The active speaker list in redux is alpha sorted, we need to ensure dominant speaker is at the top otherwise it can get truncated based on the available number of visible slots in the filmstrip.
2022-08-16 14:05:48 -04:00
Nils Ohlmeier
f70ed9cb8a fix(rtcstats): Fix rtcstats poll interval typo and increase default value (#12024)
* fix(rtcstats): fixed typo in rtcstats pollInterval

* fix(rtcstats): set rtcstats default poll interval value to 10s
2022-08-16 10:37:04 -07:00
Saúl Ibarra Corretgé
123ab32e75 chore(config,known-domains) remove legacy code 2022-08-16 17:18:04 +02:00
Saúl Ibarra Corretgé
3c370eb6ca chore(recent-list) remove legacy compatibility code 2022-08-16 17:18:04 +02:00
Saúl Ibarra Corretgé
3e6c988c30 chore(redux) remove legacy compatibility code 2022-08-16 17:18:04 +02:00
Saúl Ibarra Corretgé
649ace1f44 chore(config) remove legacy comment 2022-08-16 17:18:04 +02:00
Saúl Ibarra Corretgé
57f27b4234 chore(analytics) remove lagacy backwards compatibility code 2022-08-16 17:18:04 +02:00
Saúl Ibarra Corretgé
2ae4ba3875 feat(ios) add lite SDK target 2022-08-16 09:58:37 +02:00
Saúl Ibarra Corretgé
0bfa1027a9 fix(virtual-backgrounds) cache loaded model
There is no need to fetch and apply the model every time we want to
createe the effect since it doesn't change.
2022-08-16 08:20:58 +02:00
emrah
f412ff7f11 fix(config) add a missing comma in json list 2022-08-14 11:25:20 +02:00
Jaya Allamsetty
3975db7a68 fix(fimstrip): Do not re-sort the active speakers if dominant speaker is visible.
Fixes a case where re-sorting doesn't happen even when dominant speaker is currently not visible.
2022-08-12 14:18:37 -04:00
Werner Fleischer
02e4d2b902 fix(participants-pane): leave breakout room button appearance 2022-08-12 13:08:49 +02:00
Jaya Allamsetty
ca095240b9 fix(audio-only-ss): Attach a track stopped handler to the audioDesktop track only for audio-only sharing case.
There will be an audio desktop track for regular screensahring when a tab is selected. We do not have to toggle screensharing again when that track is killed.
2022-08-11 16:59:57 -04:00
Jaya Allamsetty
3d60773963 Add debugging for SS streaming issues 2022-08-11 16:59:57 -04:00
Saúl Ibarra Corretgé
895ce56e8d chore(deps) style-loader@3.3.1 2022-08-11 17:54:16 +02:00
Saúl Ibarra Corretgé
d12860082c chore(deps) run npm audit fix 2022-08-11 17:54:16 +02:00
Saúl Ibarra Corretgé
4e03f20a51 chore(deps) update react-native-svg@12.4.3 2022-08-11 17:54:16 +02:00
Robert Pintilii
0435c3cc64 ref(ui-components) Use new input and button in chat (#12000) 2022-08-11 16:32:44 +03:00
Alex Bumbu
ea4be6cb30 fix(iOS): script for enabling multitasking camera access for release build 2022-08-11 14:34:20 +02:00
damencho
fa39c10766 feat: Updates the local stats to match remote for 'connected to'. 2022-08-10 21:13:12 -05:00
tmoldovan8x8
82c047707f fix(mobile externalApi) suppress participant joined and left events for virtual screenshare 2022-08-10 16:34:18 +03:00
Robert Pintilii
00221b7482 ref: Convert some reducers to TS (#12002) 2022-08-10 12:56:24 +03:00
Hristo Terezov
8266d55cb9 chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1484.0.0+6d5ca18b...v1487.0.0+f3f922a8
2022-08-10 11:48:42 +03:00
Robert Pintilii
b2396ff809 ref(ui-components) Replace livestream input (#11997) 2022-08-10 10:22:24 +03:00
Robert Pintilii
fb20786b65 ref(ui-components) Replace inputs with new component (#11964) 2022-08-10 09:25:31 +03:00
Saúl Ibarra Corretgé
f5649efa49 fix(dropbox) fix signing out when switching rec providers 2022-08-09 10:23:05 -05:00
Saúl Ibarra Corretgé
7b361b3e23 fix(dropbox) fix incorrect button labels and click on web
The web and mobile Button components are not implemented the same way
and this came to bite us.

This is a stopgap fix, the real fix needs to be to make them have
exactly the same shared props and behavior.
2022-08-09 08:25:44 -05:00
Robert Pintilii
05fdd5f31f ref: Convert some reducers to TS (#11994) 2022-08-09 15:22:18 +03:00
Дамян Минков
5c52ee97ed fix: Adds missing notification in example config.
Add missing 'notify.videoMutedRemotelyTitle'.
2022-08-08 15:58:50 -05:00
Дамян Минков
3626e51c24 feat: Adds a jaas reference when installing. 2022-08-08 10:50:02 -05:00
Saúl Ibarra Corretgé
ef748c576d fix(face-landmarks) fix createImageBitMap polyfill on Safari 14
The polyfill returns an Image object instead of an ImageBitmap. The
latter has a close method, however, which we call.

Make sure we provide a dummy close method to avoid errors.
2022-08-08 17:03:48 +02:00
Saúl Ibarra Corretgé
dd044ad252 fix(settings) fix not showing the more tab
It used to only contain 3 sets of options, so we'd check if any of them
were set before showing it, but it now contains more options, so always
show it if the user requested it.
2022-08-08 14:26:04 +02: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
43578474a0 ref: Convert base/participants to TS (#11978)
Remove unnecessary ts-ignores
2022-08-08 11:12:22 +03:00
José Luís Andrade
6dbf283f3d Update Portuguese translation 2022-08-07 12:07:39 +02:00
Jaya Allamsetty
a1e0a46bad fix(audio-only SS) Stop audio-only SS when user stops share from the browser's share in progress window. 2022-08-05 14:30:49 -04:00
Hristo Terezov
627027b167 fix(remote-control): when multistream is enabled
The remote control controller events were sent for the camera
participant instead of the screen sharing one.
2022-08-05 19:04:52 +03:00
Jaya Allamsetty
4d41d36020 fix(remote-control): fix remote-control when multi-stream is enabled. 2022-08-05 09:35:52 -04:00
Robert Pintilii
0f57c37d6a feat(ui-components) Add clickable icon component (#11976) 2022-08-05 15:07:44 +03:00
Robert Pintilii
5b34068435 ref(ui-components) Use new input component (#11965) 2022-08-05 15:07:28 +03:00
apetrus20
52ce9a86ed feat(large-video/web) Add screen share placeholder (#11971)
* feat(large-video/web) new ScreenSharePlaceholder component
2022-08-05 12:11:09 +03:00
Andrei Gavrilescu
bdff92397b fix(noise-suppression): remove no track warning on share audio flow (#11966)
* remove no track warning on share audio flow

* remove unused import
2022-08-04 16:51:13 +03:00
Andrei Gavrilescu
1abc6b1e4a feat(noise-suppression): add toggle noise-suppression API (#11968)
* add toggle noise-suppression API

* switch NS API from toggle to set
2022-08-04 15:47:49 +03:00
Дамян Минков
ca259287be fix: Applies AV moderation checks on screen sharing with multistream on.
Guests trying to screenshare see the notification but also the dialog for choosing content.
2022-08-04 14:28:43 +03:00
Robert Pintilii
5601a62b60 ref(ui-components) Use new Button component (#11969)
Remove atlaskit deps
2022-08-04 13:39:22 +03:00
Robert Pintilii
d3c7b074d4 ref: Convert some files to TS (#11947) 2022-08-04 11:51:33 +03:00
Robert Pintilii
0fa0e99ffa ref(ui-components) Replace Recording dialog switch with new component (#11963)
The additional component is needed because the dialog is shared between native and web
2022-08-04 11:32:00 +03:00
Robert Pintilii
002d0fed42 ref(security-dialog) Use new input component for password (#11946) 2022-08-04 11:26:13 +03:00
Jaya Allamsetty
873cdbb404 fix(external-api) Fix toggleShareScreen in multi-stream mode.
Fixes https://github.com/jitsi/jitsi-meet/issues/11916.
2022-08-03 11:28:09 -04:00
Filip Rejmus
91cbeb0b3f fix(ios) use the RN logger in RN modules
The eventual RN SDK doesn't need to depend on our logger. When the native SDK i used the RN logger is diverted to ours anyway.
2022-08-03 15:16:43 +02:00
Robert Pintilii
3a87282e26 ref(ui-components) Replace Switch with new components (#11956) 2022-08-03 14:24:44 +03:00
Дамян Минков
fa5ee32720 fix: Fixes tenants in default configuration. 2022-08-03 14:06:38 +03:00
Дамян Минков
03c91de5c1 fix(breakout): Do not load token_verification for breakout rooms.
The token verification is not needed for the breakout muc component as we verify the token for the main room and there are other checks for breakoutrooms.
2022-08-03 14:06:38 +03:00
Robert Pintilii
2ec82c371c fix(polls) Fix CSS 2022-08-03 12:57:24 +02:00
Robert Pintilii
abc9d36c4c ref(ui-components) Replace all Checkboxes with new component (#11948)
Remove atlaskit/checkbox dependency
2022-08-03 11:41:26 +03:00
Robert Pintilii
efa0a132c4 fix(config) Fix recording config backwards compatibility (#11953)
Overwrite the new flag with the old one only if the new one is not set
Fix hideStorageWarning config
2022-08-03 10:31:00 +03:00
Jaya Allamsetty
083b009eba chore(deps) lib-jitsi-meet@latest
https://github.com/jitsi/lib-jitsi-meet/compare/v1481.0.0+7ed3be3b...v1484.0.0+6d5ca18b
2022-08-02 15:10:51 -04:00
Calin-Teodor
f0ba37e605 feat(recording/native): added new Button component 2022-08-02 18:19:52 +03:00
Saúl Ibarra Corretgé
a2c3bdf05f fix(lobby) fix not being able to type password
Autoofocus Strikes Back...
2022-08-02 17:30:16 +03:00
Robert Pintilii
22a52dafca fix(i18n) Fix translate Typescript (#11949) 2022-08-02 14:41:12 +03:00
Robert Pintilii
3960b59765 feat(ui-components) Add Checkbox component (#11927)
Replace all checkboxes in the Settings Dialog
Convert some dialog tabs to TS
2022-08-02 13:51:42 +03:00
Robert Pintilii
db54c45b13 feat(ui-components) Add toggle component (#11933) 2022-08-02 13:31:11 +03:00
3591 changed files with 171119 additions and 164047 deletions

View File

@@ -0,0 +1,15 @@
{
"name": "Jitsi Meet Dev Container",
"image": "mcr.microsoft.com/devcontainers/universal:2",
"features": {
"ghcr.io/devcontainers/features/node:1": {
"version": "16"
}
},
"hostRequirements": {
"cpus": 4,
"memory": "8gb",
"storage": "32gb"
},
"postCreateCommand": "bash -i -c 'nvm use && npm install && cp tsconfig.web.json tsconfig.json'"
}

View File

@@ -9,5 +9,8 @@ indent_style = space
max_line_length = 80
trim_trailing_whitespace = true
[*.md]
trim_trailing_whitespace = false
[Makefile]
indent_style = tab

View File

@@ -1,5 +1,6 @@
module.exports = {
'extends': [
'@jitsi/eslint-config'
]
],
'ignorePatterns': [ '*.d.ts' ]
};

25
.github/workflows/ci-lua.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: Lua CI
on: [pull_request]
jobs:
luacheck:
name: Luacheck
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install luarocks
run: sudo apt-get --install-recommends -y install luarocks
- name: Install luacheck
run: sudo luarocks install luacheck
- name: Check lua codes
run: |
set -o pipefail && luacheck . | awk -F: '
{
print $0
printf "::warning file=%s,line=%s,col=%s::%s\n", $1, $2, $3, $4
}
'

View File

@@ -3,14 +3,15 @@ name: Simple CI
on: [pull_request]
jobs:
run-ci:
name: Build Frontend
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '16.x'
node-version: 16
cache: 'npm'
- run: npm install
- name: Check git status
run: git status
@@ -18,8 +19,48 @@ jobs:
run: npm run lang-sort
- name: Check if the git repository is clean
run: $(exit $(git status --porcelain --untracked-files=no | head -255 | wc -l)) || (echo "Dirty git tree"; git diff; exit 1)
- run: npm run lint
- run: for file in lang/*.json; do npx --yes jsonlint -q $file || exit 1; done
- env:
NODE_OPTIONS: '--max-old-space-size=4096'
run: make
- run: npm run lint:ci
linux-build:
name: Build Frontend (Linux)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
cache: 'npm'
- run: npm install
- run: make
macos-ci:
name: Build Frontend (macOS)
runs-on: macOS-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
cache: 'npm'
- run: npm install
- run: make
android-build:
name: Build mobile bundle (Android)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
cache: 'npm'
- run: npm install
- run: npx react-native bundle --entry-file react/index.native.js --platform android --bundle-output /tmp/android.bundle --reset-cache
ios-build:
name: Build mobile bundle (iOS)
runs-on: macOS-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
cache: 'npm'
- run: npm install
- run: npx react-native bundle --entry-file react/index.native.js --platform ios --bundle-output /tmp/ios.bundle --reset-cache

1
.gitignore vendored
View File

@@ -92,3 +92,4 @@ twa/*.apk
twa/*.aab
twa/assetlinks.json
tsconfig.json

8
.luacheckrc Normal file
View File

@@ -0,0 +1,8 @@
global = false
unused = false
redefined = false
ignore = { "581" }
max_line_length = false
color = false
formatter = "plain"
quiet = 1

View File

@@ -141,7 +141,7 @@ react/features/sample/
```
The middleware must be imported in `react/features/app/` specifically
in `middlewares.any`, `middlewares.native.js` or `middlewares.web.js` where appropriate.
in `middlewares.any.ts`, `middlewares.native.ts` or `middlewares.web.ts` where appropriate.
Likewise for the reducer.
An `index.js` file must not be provided for exporting actions, action types and

View File

@@ -5,6 +5,8 @@ LIBJITSIMEET_DIR = node_modules/lib-jitsi-meet
OLM_DIR = node_modules/@matrix-org/olm
TF_WASM_DIR = node_modules/@tensorflow/tfjs-backend-wasm/dist/
RNNOISE_WASM_DIR = node_modules/@jitsi/rnnoise-wasm/dist
EXCALIDRAW_DIR = node_modules/@jitsi/excalidraw/dist/excalidraw-assets
EXCALIDRAW_DIR_DEV = node_modules/@jitsi/excalidraw/dist/excalidraw-assets-dev
TFLITE_WASM = react/features/stream-effects/virtual-background/vendor/tflite
MEET_MODELS_DIR = react/features/stream-effects/virtual-background/vendor/models
FACE_MODELS_DIR = node_modules/@vladmandic/human-models/models
@@ -14,19 +16,25 @@ OUTPUT_DIR = .
STYLES_BUNDLE = css/all.bundle.css
STYLES_DESTINATION = css/all.css
STYLES_MAIN = css/main.scss
WEBPACK = ./node_modules/.bin/webpack
WEBPACK_DEV_SERVER = ./node_modules/.bin/webpack serve --mode development
ifeq ($(OS),Windows_NT)
WEBPACK = .\node_modules\.bin\webpack
WEBPACK_DEV_SERVER = .\node_modules\.bin\webpack serve --mode development
else
WEBPACK = ./node_modules/.bin/webpack
WEBPACK_DEV_SERVER = ./node_modules/.bin/webpack serve --mode development
endif
all: compile deploy clean
compile:
NODE_OPTIONS=--max-old-space-size=8192 \
$(WEBPACK)
clean:
rm -fr $(BUILD_DIR)
.NOTPARALLEL:
deploy: deploy-init deploy-appbundle deploy-rnnoise-binary deploy-tflite deploy-meet-models deploy-lib-jitsi-meet deploy-olm deploy-tf-wasm deploy-css deploy-local deploy-face-landmarks
deploy: deploy-init deploy-appbundle deploy-rnnoise-binary deploy-excalidraw deploy-tflite deploy-meet-models deploy-lib-jitsi-meet deploy-olm deploy-tf-wasm deploy-css deploy-local deploy-face-landmarks
deploy-init:
rm -fr $(DEPLOY_DIR)
@@ -36,12 +44,8 @@ deploy-appbundle:
cp \
$(BUILD_DIR)/app.bundle.min.js \
$(BUILD_DIR)/app.bundle.min.js.map \
$(BUILD_DIR)/do_external_connect.min.js \
$(BUILD_DIR)/do_external_connect.min.js.map \
$(BUILD_DIR)/external_api.min.js \
$(BUILD_DIR)/external_api.min.js.map \
$(BUILD_DIR)/dial_in_info_bundle.min.js \
$(BUILD_DIR)/dial_in_info_bundle.min.js.map \
$(BUILD_DIR)/alwaysontop.min.js \
$(BUILD_DIR)/alwaysontop.min.js.map \
$(OUTPUT_DIR)/analytics-ga.js \
@@ -59,11 +63,7 @@ deploy-appbundle:
deploy-lib-jitsi-meet:
cp \
$(LIBJITSIMEET_DIR)/dist/umd/lib-jitsi-meet.min.js \
$(LIBJITSIMEET_DIR)/dist/umd/lib-jitsi-meet.min.map \
$(LIBJITSIMEET_DIR)/dist/umd/lib-jitsi-meet.e2ee-worker.js \
$(LIBJITSIMEET_DIR)/connection_optimization/external_connect.js \
$(LIBJITSIMEET_DIR)/modules/browser/capabilities.json \
$(LIBJITSIMEET_DIR)/dist/umd/lib-jitsi-meet.* \
$(DEPLOY_DIR)
deploy-olm:
@@ -86,6 +86,16 @@ deploy-tflite:
$(TFLITE_WASM)/*.wasm \
$(DEPLOY_DIR)
deploy-excalidraw:
cp -R \
$(EXCALIDRAW_DIR) \
$(DEPLOY_DIR)/
deploy-excalidraw-dev:
cp -R \
$(EXCALIDRAW_DIR_DEV) \
$(DEPLOY_DIR)/
deploy-meet-models:
cp \
$(MEET_MODELS_DIR)/*.tflite \
@@ -108,12 +118,12 @@ deploy-local:
([ ! -x deploy-local.sh ] || ./deploy-local.sh)
.NOTPARALLEL:
dev: deploy-init deploy-css deploy-rnnoise-binary deploy-tflite deploy-meet-models deploy-lib-jitsi-meet deploy-olm deploy-tf-wasm deploy-face-landmarks
dev: deploy-init deploy-css deploy-rnnoise-binary deploy-tflite deploy-meet-models deploy-lib-jitsi-meet deploy-olm deploy-tf-wasm deploy-excalidraw-dev deploy-face-landmarks
$(WEBPACK_DEV_SERVER)
source-package:
mkdir -p source_package/jitsi-meet/css && \
cp -r *.js *.html resources/*.txt connection_optimization favicon.ico fonts images libs static sounds LICENSE lang source_package/jitsi-meet && \
cp -r *.js *.html resources/*.txt favicon.ico fonts images libs static sounds LICENSE lang source_package/jitsi-meet && \
cp css/all.css source_package/jitsi-meet/css && \
(cd source_package ; tar cjf ../jitsi-meet.tar.bz2 jitsi-meet) && \
rm -rf source_package

View File

@@ -18,7 +18,6 @@ Amongst others here are the main features Jitsi Meet offers:
* Web and native SDKs for integration
* HD audio and video
* Content sharing
* End-to-End Encryption
* Raise hand and reactions
* Chat with private conversations
* Polls

View File

@@ -76,7 +76,7 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'androidx.appcompat:appcompat:1.5.1'
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'

View File

@@ -7,7 +7,6 @@
android:extractNativeLibs="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:name=".MainApplication"
android:networkSecurityConfig="@xml/network_security_config"
android:theme="@style/AppTheme">
<meta-data

View File

@@ -1,47 +0,0 @@
/*
* Copyright @ 2022-present 8x8, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jitsi.meet;
import android.app.Application;
import android.util.Log;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactNativeHost;
import org.jitsi.meet.sdk.JitsiReactNativeHost;
/**
* Application class for Jitsi Meet. The only reason why this exists is for Detox
* to believe our app is a "greenfield" app. SDK users need not use this.
*/
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost = new JitsiReactNativeHost(this);
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
@Override
public void onCreate() {
super.onCreate();
// Initialize RN
Log.d(this.getClass().getCanonicalName(), "app onCreate");
getReactNativeHost().getReactInstanceManager();
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 659 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 960 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,70 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="262.91376dp"
android:height="262.91376dp"
android:viewportWidth="262.91376"
android:viewportHeight="262.91376">
<group android:scaleX="0.75" android:scaleY="0.75" android:translateX="35" android:translateY="35">
<clip-path
android:pathData="m0,0 l262.914,-0L262.914,262.914 0,262.914 0,0Z"/>
<path
android:pathData="m142.646,105.099c0.117,0.026 0.255,0.036 0.406,0.036 3.186,-0 10.297,-4.615 11.617,-6.721l0.1,-0.17 0.153,-0.135c0.451,-0.441 1.746,-2.773 2.374,-4.17 -6.751,-2.023 -7.49,-5.677 -8.153,-8.919 -0.069,-0.376 -0.138,-0.717 -0.204,-1.019 -0.074,-0.397 -0.153,-0.8 -0.226,-1.112C138.668,86.221 135.593,88.094 133.921,89.483 133.056,90.201 132.542,92.251 135.042,97.926 136.323,100.816 140.727,104.733 142.646,105.099"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m115.413,146.042c5.934,-0 18.464,-3.543 26.748,-5.887 1.21,-0.336 2.33,-0.66 3.351,-0.944 0.166,-0.046 0.321,-0.091 0.472,-0.124 -0.463,-0.461 -1.239,-1.159 -2.497,-2.216 -5.521,-3.741 -10.736,-5.484 -16.403,-5.484 -1.237,-0 -2.522,0.071 -3.923,0.231 -4.801,0.55 -8.8,1.69 -10.722,2.237 -0.967,0.284 -1.263,0.366 -1.567,0.366 -0.58,-0 -1.079,-0.341 -1.273,-0.878 -0.194,-0.534 -0.027,-1.121 0.425,-1.507l0.024,-0.011c3.316,-2.784 9.489,-7.951 21.198,-10.256 2.027,-0.401 4.202,-0.605 6.454,-0.605 5.242,-0 10.67,1.086 16.125,3.219 7.436,2.899 12.521,6.625 16.602,9.62 2.199,1.609 4.105,3.007 5.755,3.771 0.421,0.2 0.637,0.255 0.746,0.265 0.074,-0.095 0.23,-0.365 0.474,-1.069 0.066,-0.185 0.529,-2.161 -2.806,-13.374 -1.931,-6.51 -4.264,-13.156 -5.479,-16.104 -2.356,-5.711 -1.778,-9.76 -1.051,-12.125 -1.999,0.735 -4.033,1.87 -6.174,3.446L161.758,98.711C160.694,99.506 159.599,100.404 158.426,101.454 151.517,107.64 146.344,110.864 143.035,111.04l-0.093,0.004 -0.093,-0.009c-2.912,-0.245 -7.324,-4.489 -9.133,-6.634 -0.373,-0.251 -0.8,-0.366 -1.366,-0.366 -0.564,-0 -1.202,0.116 -1.82,0.235C130.086,104.354 129.623,104.441 129.167,104.489 127.708,104.632 125.668,105.106 123.694,105.561 122.746,105.777 121.762,106.005 120.864,106.189 120.851,106.19 120.463,106.272 119.774,106.454 114.903,107.891 111.228,109.55 109.432,111.111 109.414,111.127 109.352,111.174 109.266,111.242 108.048,112.105 105.124,114.567 104.248,118.762L104.237,118.795C102.398,126.516 105.187,136.087 108.892,141.554 110.636,144.125 112.513,145.727 114.048,145.959 114.437,146.015 114.891,146.042 115.413,146.042"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m90.093,173.175c-1.252,-1.472 -1.783,-3.324 -1.574,-5.521 0.884,-10.642 -0.329,-13.215 -0.891,-13.829 -0.131,-0.144 -0.207,-0.144 -0.265,-0.144 -0.022,-0 -0.041,0.003 -0.064,0.003 -1.044,0.248 -8.066,5.002 -9.615,19.171 -0.749,6.845 0.561,15.63 1.679,20.974 0.897,-3.155 2.314,-6.624 5.057,-10.204 2.556,-3.326 5.345,-5.955 8.801,-8.253C92.143,174.93 90.991,174.235 90.093,173.175"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m94.906,156.389c-0.03,2.229 -0.326,4.36 -0.61,6.445 -0.151,1.119 -0.314,2.286 -0.434,3.46 -0.161,2.341 0.346,3.166 0.571,3.406 0.127,0.136 0.326,0.287 0.76,0.287 0.339,-0 0.741,-0.091 1.161,-0.268 4.202,-1.756 8.195,-4.815 10.115,-6.515C103.522,161.892 98.995,159.058 94.906,156.389"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m154.002,81.595c-0.031,0.074 -0.065,0.148 -0.101,0.216 -0.821,2.403 0.306,5.664 2.419,6.898 0.561,0.327 1.106,0.526 1.624,0.596 0.072,0.006 0.148,0.009 0.219,0.009 1.645,-0 2.971,-1.199 3.961,-3.561C162.752,83.959 162.836,81.827 162.37,79.904 162.003,78.409 161.057,76.627 160.453,75.738 159.332,76.509 157.111,78.207 155.585,79.553 154.518,80.582 154.136,81.229 154.002,81.595"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="M148.97,77.699C153.957,73.194 156.988,65.754 158.253,61.334 153.915,65.513 148.633,67.758 145.25,69.198 144.084,69.695 143.08,70.124 142.477,70.476 142.224,70.623 141.965,70.77 141.708,70.919 139.654,72.109 136.55,73.905 136.1,75.011l-0.012,0.036 -0.012,0.034c-1.406,2.956 -2.199,7.401 -2.457,9.95 3.266,-1.99 6.625,-3.322 9.416,-4.42C145.628,79.585 147.863,78.703 148.97,77.699"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m164.464,51.921c-0.84,5.539 -2.205,10.799 -4.751,16.347 2.781,-3.144 4.396,-6.568 4.941,-10.401C164.886,56.275 165.097,54.756 164.464,51.921"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="M148.749,142.639C148.718,142.598 148.684,142.56 148.658,142.519 148.523,142.539 148.307,142.584 147.972,142.683l-0.14,0.04c-1.726,0.644 -4.899,1.708 -8.556,2.946 -4.396,1.479 -9.365,3.154 -13.526,4.649 -5.297,1.975 -7.021,2.755 -7.557,3.024 -0.098,0.266 -0.203,0.599 -0.327,0.965 -1.254,3.816 -4.125,12.541 -18.276,18.653 2.928,2.956 9.289,8.27 21.809,8.27 1.082,-0 2.21,-0.036 3.341,-0.12 9.451,-0.666 18.342,-4.855 25.026,-11.78 6.087,-6.291 9.538,-14.136 9.585,-21.7C157.876,147.509 155.367,147.135 153.043,146.033 153.014,146.02 150.361,144.745 148.749,142.639"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m189.478,117.853c-0.523,9.749 -2.122,18.424 -4.744,25.8 -2.128,5.988 -4.94,11.134 -8.356,15.316 -5.676,6.931 -11.555,9.256 -12.804,9.304 -0.866,-0 -1.313,-0.309 -3.046,-1.528 -0.17,-0.114 -0.37,-0.252 -0.581,-0.4 -3.313,5.953 -8.505,11.097 -15.065,14.959 -7.079,4.144 -15.297,6.423 -23.157,6.423 -9.078,-0 -17.13,-2.924 -23.341,-8.456 -7.467,4.799 -12.31,9.074 -16.267,27.005l-1.363,6.17 -2.971,-5.564c-0.424,-0.786 -1.929,-3.731 -3.332,-8.887 -1.934,-7.104 -2.86,-15.181 -2.758,-24.01 0.117,-10.049 3.154,-16.526 5.68,-20.186 2.98,-4.314 6.837,-6.994 10.076,-6.994 0.216,-0 0.428,0.006 0.616,0.035 5.159,0.575 8.435,2.75 14.396,6.686l1.899,1.252c2.059,1.344 4.481,2.7 5.259,2.989 0.54,-0.284 1.749,-2.3 2.155,-5.271l0.069,-0.451c0.005,-0.045 0.009,-0.091 0.014,-0.131 -0.036,-0.02 -0.065,-0.029 -0.094,-0.041 -4.008,-1.375 -9.539,-7.7 -12.364,-17.134 -2.684,-9.382 -2.129,-17.185 1.644,-23.193 6.12,-9.736 19.198,-11.974 23.466,-12.702 1.331,-0.266 2.716,-0.511 4.041,-0.717 0.255,-0.061 0.469,-0.121 0.642,-0.168 -0.031,-0.126 -0.071,-0.265 -0.114,-0.43 -0.108,-0.417 -0.23,-0.891 -0.354,-1.447 -1.345,-6.035 -0.664,-11.069 0.181,-15.193 0.928,-4.546 1.489,-7.287 3.747,-9.936 3.029,-4.165 8.319,-5.936 11.479,-6.991 0.746,-0.249 1.511,-0.509 1.894,-0.689 8.988,-4.31 11.82,-8.739 12.615,-11.694 0.656,-2.451 1.699,-8.884 1.251,-13.335 -0.085,-0.805 0.129,-1.521 0.621,-2.065 0.45,-0.505 1.101,-0.794 1.778,-0.794 1.515,-0 2.82,-0 7.511,14.598 2.481,7.698 0.645,14.903 -5.45,21.424l-0.226,0.231c0.024,0.044 0.049,0.09 0.08,0.144 2.57,4.236 3.963,9.54 3.553,13.51 -0.099,0.906 -0.265,1.775 -0.419,2.549 -0.003,0.01 -0.003,0.016 -0.004,0.029 0.516,-0.032 1.119,-0.055 1.775,-0.055 3.052,-0 7.435,0.474 10.989,2.735 2.135,1.352 4.845,3.439 6.835,7.615C189.223,102.942 190.076,109.575 189.478,117.853m4.77,-23.191c-2.916,-6.1 -6.989,-9.177 -9.793,-10.96 -2.355,-1.494 -5.064,-2.584 -8.077,-3.24l-0.676,-0.146 -0.111,-0.689c-0.339,-2.119 -0.918,-4.275 -1.715,-6.406l-0.185,-0.49 0.292,-0.434c5.095,-7.594 6.323,-16.17 3.54,-24.802 -2.191,-6.824 -3.895,-11.211 -5.341,-13.799 -2.954,-5.305 -7.006,-6.417 -9.891,-6.417 -2.964,-0 -5.8,1.261 -7.789,3.457 -2.043,2.254 -2.993,5.207 -2.678,8.31 0.316,3.134 -0.494,8.516 -1.014,10.439 -0.04,0.117 -0.975,2.929 -8.201,6.428 -0.162,0.056 -0.512,0.179 -1.053,0.359 -3.729,1.246 -10.666,3.571 -15.258,9.64 -3.465,4.205 -4.332,8.441 -5.338,13.346 -0.586,2.865 -1.236,6.744 -1.079,11.344l0.026,0.841 -0.824,0.188c-11.646,2.585 -20.025,7.835 -24.909,15.605 -5.054,8.04 -5.919,18.055 -2.543,29.853 0.063,0.204 0.126,0.407 0.189,0.615l0.527,1.608 -1.665,-0.286c-0.561,-0.101 -1.135,-0.18 -1.729,-0.241 -0.493,-0.06 -1.001,-0.082 -1.509,-0.082 -5.633,-0 -11.663,3.585 -16.128,9.592 -3.451,4.641 -7.588,12.849 -7.735,25.601 -0.114,9.573 0.906,18.401 3.038,26.228 1.581,5.795 3.326,9.329 4.004,10.577l13.306,24.94 6.096,-27.619c2.454,-11.09 4.864,-15.262 7.725,-18.111l0.561,-0.563 0.679,0.411c6.605,3.977 14.466,6.084 22.73,6.084 9.286,-0 18.965,-2.682 27.259,-7.551 5.38,-3.16 9.974,-7.036 13.649,-11.531l0.45,-0.369 0.85,-0.02c2.156,-0.068 5.16,-1.164 8.222,-3.004 2.6,-1.555 6.543,-4.428 10.501,-9.262 3.997,-4.884 7.274,-10.854 9.716,-17.734 2.876,-8.073 4.625,-17.489 5.204,-28.004 0.689,-9.668 -0.434,-17.641 -3.327,-23.704"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m180.026,98.414c-1.67,-2.596 -3.771,-4.206 -5.475,-4.206 -0.313,-0 -0.613,0.051 -0.895,0.161 -0.911,0.361 -2.356,4.532 -1.714,7.566 0.434,2.066 2.938,9.04 4.151,12.394 0.456,1.281 0.68,1.91 0.754,2.142 0.064,0.183 0.145,0.448 0.256,0.774 0.97,2.971 3.467,10.586 4.206,16.761 1.549,-6.579 2.424,-14.512 2.085,-23.997C183.235,105.662 182.04,101.538 180.026,98.414"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="M168.088,142.604C169.896,142.111 171.33,141.705 172.398,141.395 170.213,139.874 167.689,137.979 164.247,135.304c-8.418,-6.546 -17.449,-9.87 -26.839,-9.87 -5.135,-0 -9.611,0.991 -13.156,2.186 0.882,-0.05 1.779,-0.079 2.7,-0.079 1.1,-0 2.247,0.04 3.411,0.119 3.652,0.246 13.061,1.901 21.565,12.047 1.714,2.039 3.559,3.73 8.794,3.73 1.873,-0 4.051,-0.207 6.662,-0.645C167.544,142.751 167.793,142.678 168.088,142.604"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
<path
android:pathData="m164.3,147.583c-0.122,1.563 -0.376,4.509 -0.782,6.76 -0.495,2.719 -1.31,5.02 -1.791,6.226 0.85,0.786 1.694,1.553 2.247,2.043 2.214,-1.447 9.47,-6.96 14.483,-19.474C176.847,144.229 174.59,145.178 171.671,146.018 168.701,146.861 165.82,147.357 164.3,147.583"
android:fillColor="#ffffff"
android:strokeColor="#00000000"
android:fillType="nonZero"/>
</group>
</vector>

View File

@@ -2,4 +2,5 @@
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background"/>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
</adaptive-icon>

View File

@@ -2,4 +2,5 @@
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@color/ic_launcher_background"/>
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
</adaptive-icon>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#17A0DB</color>
<color name="colorPrimaryDark">#1081B2</color>
<color name="navigationBarColor">#161618</color>
</resources>

View File

@@ -2,7 +2,7 @@
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:editTextBackground">@drawable/rn_edit_text_material</item>
<item name="android:forceDarkAllowed">false</item>
<item name="android:navigationBarColor">@color/colorPrimaryDark</item>
<item name="android:navigationBarColor">@color/navigationBarColor</item>
<item name="android:windowDisablePreview">true</item>
</style>
</resources>

View File

@@ -1,5 +1,4 @@
import groovy.json.JsonSlurper
import org.apache.tools.ant.taskdefs.condition.Os
import org.gradle.util.VersionNumber
// Top-level build file where you can add configuration options common to all
@@ -12,25 +11,21 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.4'
classpath 'com.google.gms:google-services:4.3.10'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
classpath 'com.google.gms:google-services:4.3.14'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
}
}
ext {
buildToolsVersion = "31.0.0"
compileSdkVersion = 31
minSdkVersion = 23
targetSdkVersion = 31
compileSdkVersion = 32
minSdkVersion = 24
targetSdkVersion = 32
supportLibVersion = "28.0.0"
if (System.properties['os.arch'] == "aarch64") {
// For M1 Users we need to use the NDK 24 which added support for aarch64
ndkVersion = "24.0.8215888"
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
// For Android Users, we need to use NDK 23, otherwise the build will
// fail due to paths longer than the OS limit
ndkVersion = "23.1.7779620"
} else {
// Otherwise we default to the side-by-side NDK version from AGP.
ndkVersion = "21.4.7075529"

11
android/scripts/logcat.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/bash
PKG_NAME=${1:-org.jitsi.meet}
APP_PID=$(adb shell ps | grep $PKG_NAME | awk '{print $2}')
if [[ -z "$APP_PID" ]]; then
echo "App is not running"
exit 1
fi
exec adb logcat --pid=$APP_PID

View File

@@ -76,7 +76,7 @@ dependencies {
implementation project(':react-native-get-random-values')
implementation project(':react-native-immersive')
implementation project(':react-native-keep-awake')
implementation project(':react-native-masked-view_masked-view')
implementation project(':react-native-orientation-locker')
implementation project(':react-native-pager-view')
implementation project(':react-native-performance')
implementation project(':react-native-safe-area-context')

View File

@@ -22,6 +22,8 @@ import android.os.Build;
import android.telecom.CallAudioState;
import androidx.annotation.RequiresApi;
import com.facebook.react.bridge.ReactContext;
import java.util.HashSet;
import java.util.Set;
@@ -49,6 +51,8 @@ class AudioDeviceHandlerConnectionService implements
*/
private AudioModeModule module;
private RNConnectionService rcs;
/**
* Converts any of the "DEVICE_" constants into the corresponding
* {@link android.telecom.CallAudioState} "ROUTE_" number.
@@ -141,8 +145,8 @@ class AudioDeviceHandlerConnectionService implements
JitsiMeetLogger.i("Using " + TAG + " as the audio device handler");
module = audioModeModule;
rcs = module.getContext().getNativeModule(RNConnectionService.class);
RNConnectionService rcs = ReactInstanceManagerHolder.getNativeModule(RNConnectionService.class);
if (rcs != null) {
rcs.setCallAudioStateListener(this);
} else {
@@ -152,9 +156,9 @@ class AudioDeviceHandlerConnectionService implements
@Override
public void stop() {
RNConnectionService rcs = ReactInstanceManagerHolder.getNativeModule(RNConnectionService.class);
if (rcs != null) {
rcs.setCallAudioStateListener(null);
rcs = null;
} else {
JitsiMeetLogger.w(TAG + " Couldn't set call audio state listener, module is null");
}

View File

@@ -26,10 +26,13 @@ import com.facebook.react.bridge.Arguments;
import com.facebook.react.bridge.Promise;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.bridge.WritableArray;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.module.annotations.ReactModule;
import com.facebook.react.modules.core.DeviceEventManagerModule;
import org.jitsi.meet.sdk.log.JitsiMeetLogger;
@@ -196,7 +199,7 @@ class AudioModeModule extends ReactContextBaseJavaModule {
deviceInfo.putBoolean("selected", device.equals(selectedDevice));
data.pushMap(deviceInfo);
}
ReactInstanceManagerHolder.emitEvent(DEVICE_CHANGE_EVENT, data);
getContext().getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class).emit(DEVICE_CHANGE_EVENT, data);
JitsiMeetLogger.i(TAG + " Updating audio device list");
}
});
@@ -212,6 +215,10 @@ class AudioModeModule extends ReactContextBaseJavaModule {
return NAME;
}
public ReactContext getContext(){
return this.getReactApplicationContext();
}
/**
* Initializes the audio device handler module. This function is called *after* all Catalyst
* modules have been created, and that's why we use it, because {@link AudioDeviceHandlerConnectionService}

View File

@@ -15,6 +15,7 @@
*/
package org.jitsi.meet.sdk;
import android.app.Application;
import android.content.Context;
import android.util.Log;
@@ -22,6 +23,7 @@ import androidx.annotation.NonNull;
import androidx.startup.Initializer;
import com.facebook.soloader.SoLoader;
import org.wonday.orientation.OrientationActivityLifecycle;
import java.util.Collections;
import java.util.List;
@@ -37,6 +39,10 @@ public class JitsiInitializer implements Initializer<Boolean> {
// Register our uncaught exception handler.
JitsiMeetUncaughtExceptionHandler.register();
// Register activity lifecycle handler for the orientation locker module.
((Application) context).registerActivityLifecycleCallbacks(OrientationActivityLifecycle.getInstance());
return true;
}

View File

@@ -16,11 +16,13 @@
package org.jitsi.meet.sdk;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.res.Configuration;
import android.net.Uri;
import android.os.Bundle;
@@ -86,6 +88,14 @@ public class JitsiMeetActivity extends AppCompatActivity
// Overrides
//
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
Intent intent = new Intent("onConfigurationChanged");
intent.putExtra("newConfig", newConfig);
this.sendBroadcast(intent);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -168,8 +178,11 @@ public class JitsiMeetActivity extends AppCompatActivity
}
protected void leave() {
Intent hangupBroadcastIntent = BroadcastIntentHelper.buildHangUpIntent();
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(hangupBroadcastIntent);
if (this.jitsiView != null) {
this.jitsiView.abort();
} else {
JitsiMeetLogger.w("Cannot leave, view is null");
}
}
private @Nullable
@@ -286,6 +299,7 @@ public class JitsiMeetActivity extends AppCompatActivity
JitsiMeetActivityDelegate.requestPermissions(this, permissions, requestCode, listener);
}
@SuppressLint("MissingSuperCall")
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
JitsiMeetActivityDelegate.onRequestPermissionsResult(requestCode, permissions, grantResults);

View File

@@ -81,6 +81,8 @@ public class JitsiMeetView extends FrameLayout {
result.putBoolean(key, (Boolean)bValue);
} else if (valueType.contentEquals("String")) {
result.putString(key, (String)bValue);
} else if (valueType.contentEquals("Integer")) {
result.putInt(key, (int)bValue);
} else if (valueType.contentEquals("Bundle")) {
result.putBundle(key, mergeProps((Bundle)aValue, (Bundle)bValue));
} else {
@@ -155,6 +157,14 @@ public class JitsiMeetView extends FrameLayout {
setProps(options != null ? options.asProps() : new Bundle());
}
/**
* Internal method which aborts running RN by passing empty props.
* This is only meant to be used from the enclosing Activity's onDestroy.
*/
public void abort() {
setProps(new Bundle());
}
/**
* Creates the {@code ReactRootView} for the given app name with the given
* props. Once created it's set as the view of this {@code FrameLayout}.
@@ -206,7 +216,7 @@ public class JitsiMeetView extends FrameLayout {
// by leaving the conference. However, React and, respectively,
// appProperties/initialProperties are declarative expressions i.e. one
// and the same URL will not trigger an automatic re-render in the
// JavaScript source code. The workaround implemented bellow introduces
// JavaScript source code. The workaround implemented below introduces
// "imperativeness" in React Component props by defining a unique value
// per setProps() invocation.
props.putLong("timestamp", System.currentTimeMillis());

View File

@@ -1,41 +0,0 @@
package org.jitsi.meet.sdk;
import android.app.Application;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import java.util.List;
/**
* This is the minimal implementation of ReactNativeHost that will make things like the
* Detox testing framework believe we are a "greenfield" app.
*
* Generally speaking, apps using the SDK (other than the Jitsi Meet app itself) should not
* need to use this because the
*/
public class JitsiReactNativeHost extends ReactNativeHost {
public JitsiReactNativeHost(Application application) {
super(application);
}
@Override
public boolean getUseDeveloperSupport() {
// Unused since we override `createReactInstanceManager`.
return false;
}
@Override
protected List<ReactPackage> getPackages() {
// Unused since we override `createReactInstanceManager`.
return null;
}
@Override
protected ReactInstanceManager createReactInstanceManager() {
ReactInstanceManagerHolder.initReactInstanceManager(this.getApplication());
return ReactInstanceManagerHolder.getReactInstanceManager();
}
}

View File

@@ -193,7 +193,7 @@ class RNConnectionService extends ReactContextBaseJavaModule {
* Called by the JS side to update the call's state.
*
* @param callUUID - the call's UUID.
* @param callState - the map which carries infor about the current call's
* @param callState - the map which carries info about the current call's
* state. See static fields in {@link ConnectionService.ConnectionImpl}
* prefixed with "KEY_" for the values supported by the Android
* implementation.

View File

@@ -17,7 +17,6 @@
package org.jitsi.meet.sdk;
import android.app.Activity;
import android.app.Application;
import android.util.Log;
import androidx.annotation.Nullable;
@@ -31,18 +30,18 @@ import com.facebook.react.common.LifecycleState;
import com.facebook.react.jscexecutor.JSCExecutorFactory;
import com.facebook.react.modules.core.DeviceEventManagerModule;
import com.facebook.react.uimanager.ViewManager;
import com.oney.WebRTCModule.RTCVideoViewManager;
import com.oney.WebRTCModule.WebRTCModule;
import com.oney.WebRTCModule.EglUtils;
import com.oney.WebRTCModule.WebRTCModuleOptions;
import com.oney.WebRTCModule.webrtcutils.H264AndSoftwareVideoDecoderFactory;
import com.oney.WebRTCModule.webrtcutils.H264AndSoftwareVideoEncoderFactory;
import org.devio.rn.splashscreen.SplashScreenModule;
import org.webrtc.SoftwareVideoDecoderFactory;
import org.webrtc.SoftwareVideoEncoderFactory;
import org.webrtc.audio.AudioDeviceModule;
import org.webrtc.audio.JavaAudioDeviceModule;
import org.webrtc.EglBase;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
class ReactInstanceManagerHolder {
@@ -73,34 +72,17 @@ class ReactInstanceManagerHolder {
new SplashScreenModule(reactContext),
new PictureInPictureModule(reactContext),
new ProximityModule(reactContext),
new WiFiStatsModule(reactContext),
new org.jitsi.meet.sdk.net.NAT64AddrInfoModule(reactContext)));
if (AudioModeModule.useConnectionService()) {
nativeModules.add(new RNConnectionService(reactContext));
}
// Initialize the WebRTC module by hand, since we want to override some
// initialization options.
WebRTCModule.Options options = new WebRTCModule.Options();
AudioDeviceModule adm = JavaAudioDeviceModule.builder(reactContext)
.createAudioDeviceModule();
options.setAudioDeviceModule(adm);
options.setVideoDecoderFactory(new SoftwareVideoDecoderFactory());
options.setVideoEncoderFactory(new SoftwareVideoEncoderFactory());
nativeModules.add(new WebRTCModule(reactContext, options));
return nativeModules;
}
private static List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
return Arrays.<ViewManager>asList(
// WebRTC, see createNativeModules for details.
new RTCVideoViewManager()
);
return Collections.emptyList();
}
static List<ReactPackage> getReactNativePackages() {
@@ -117,17 +99,18 @@ class ReactInstanceManagerHolder {
new com.oblador.performance.PerformancePackage(),
new com.reactnativecommunity.slider.ReactSliderPackage(),
new com.brentvatne.react.ReactVideoPackage(),
new org.reactnative.maskedview.RNCMaskedViewPackage(),
new com.reactnativecommunity.webview.RNCWebViewPackage(),
new com.kevinresol.react_native_default_preference.RNDefaultPreferencePackage(),
new com.learnium.RNDeviceInfo.RNDeviceInfo(),
new com.swmansion.gesturehandler.react.RNGestureHandlerPackage(),
new com.oney.WebRTCModule.WebRTCModulePackage(),
new com.swmansion.gesturehandler.RNGestureHandlerPackage(),
new org.linusu.RNGetRandomValuesPackage(),
new com.rnimmersive.RNImmersivePackage(),
new com.swmansion.rnscreens.RNScreensPackage(),
new com.zmxv.RNSound.RNSoundPackage(),
new com.th3rdwave.safeareacontext.SafeAreaContextPackage(),
new com.horcrux.svg.SvgPackage(),
new org.wonday.orientation.OrientationPackage(),
new ReactPackageAdapter() {
@Override
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
@@ -237,35 +220,6 @@ class ReactInstanceManagerHolder {
return reactInstanceManager;
}
/**
* Internal method to initialize the React Native instance manager. We
* create a single instance in order to load the JavaScript bundle a single
* time. All {@code ReactRootView} instances will be tied to the one and
* only {@code ReactInstanceManager}.
*
* This method is only meant to be called when integrating with {@code JitsiReactNativeHost}.
*
* @param app {@code Application} current running Application.
*/
static void initReactInstanceManager(Application app) {
if (reactInstanceManager != null) {
return;
}
Log.d(TAG, "initializing RN with Application");
reactInstanceManager
= ReactInstanceManager.builder()
.setApplication(app)
.setBundleAssetName("index.android.bundle")
.setJSMainModulePath("index.android")
.setJavaScriptExecutorFactory(getReactNativeJSFactory())
.addPackages(getReactNativePackages())
.setUseDeveloperSupport(BuildConfig.DEBUG)
.setInitialLifecycleState(LifecycleState.BEFORE_CREATE)
.build();
}
/**
* Internal method to initialize the React Native instance manager. We
* create a single instance in order to load the JavaScript bundle a single
@@ -279,7 +233,15 @@ class ReactInstanceManagerHolder {
return;
}
Log.d(ReactInstanceManagerHolder.class.getCanonicalName(), "initializing RN with Activity");
// Initialize the WebRTC module options.
WebRTCModuleOptions options = WebRTCModuleOptions.getInstance();
EglBase.Context eglContext = EglUtils.getRootEglBaseContext();
options.videoDecoderFactory = new H264AndSoftwareVideoDecoderFactory(eglContext);
options.videoEncoderFactory = new H264AndSoftwareVideoEncoderFactory(eglContext);
Log.d(TAG, "initializing RN with Activity");
reactInstanceManager
= ReactInstanceManager.builder()

View File

@@ -1,203 +0,0 @@
/*
* Copyright @ 2017-present Atlassian Pty Ltd
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jitsi.meet.sdk;
import android.content.Context;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import com.facebook.react.bridge.Promise;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.module.annotations.ReactModule;
import org.jitsi.meet.sdk.log.JitsiMeetLogger;
import org.json.JSONArray;
import org.json.JSONObject;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Enumeration;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
* Module exposing WiFi statistics.
*
* Gathers rssi, signal in percentage, timestamp and the addresses of the wifi
* device.
*/
@ReactModule(name = WiFiStatsModule.NAME)
class WiFiStatsModule
extends ReactContextBaseJavaModule {
public static final String NAME = "WiFiStats";
/**
* The {@code Log} tag {@code WiFiStatsModule} is to log messages with.
*/
static final String TAG = NAME;
/**
* The scale used for the signal value. A level of the signal, given in the
* range of 0 to SIGNAL_LEVEL_SCALE-1 (both inclusive).
*/
public final static int SIGNAL_LEVEL_SCALE = 101;
/**
* {@link ExecutorService} for running all operations on a dedicated thread.
*/
private static final ExecutorService executor
= Executors.newSingleThreadExecutor();
/**
* Initializes a new module instance. There shall be a single instance of
* this module throughout the lifetime of the application.
*
* @param reactContext the {@link ReactApplicationContext} where this module
* is created.
*/
public WiFiStatsModule(ReactApplicationContext reactContext) {
super(reactContext);
}
/**
* Gets the name for this module to be used in the React Native bridge.
*
* @return a string with the module name.
*/
@Override
public String getName() {
return NAME;
}
/**
* Returns the {@link InetAddress} represented by this int.
*
* @param value the int representation of the ip address.
* @return the {@link InetAddress}.
* @throws UnknownHostException - if IP address is of illegal length.
*/
public static InetAddress toInetAddress(int value)
throws UnknownHostException {
return InetAddress.getByAddress(
new byte[] {
(byte) value,
(byte) (value >> 8),
(byte) (value >> 16),
(byte) (value >> 24)
});
}
/**
* Public method to retrieve WiFi stats.
*
* @param promise a {@link Promise} which will be resolved if WiFi stats are
* retrieved successfully, and it will be rejected otherwise.
*/
@ReactMethod
public void getWiFiStats(final Promise promise) {
Runnable r = new Runnable() {
@Override
public void run() {
try {
Context context
= getReactApplicationContext().getApplicationContext();
WifiManager wifiManager
= (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
if (!wifiManager.isWifiEnabled()) {
promise.reject(new Exception("Wifi not enabled"));
return;
}
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
if (wifiInfo.getNetworkId() == -1) {
promise.reject(new Exception("Wifi not connected"));
return;
}
int rssi = wifiInfo.getRssi();
int signalLevel
= WifiManager.calculateSignalLevel(
rssi, SIGNAL_LEVEL_SCALE);
JSONObject result = new JSONObject();
result.put("rssi", rssi)
.put("signal", signalLevel)
.put("timestamp", System.currentTimeMillis());
JSONArray addresses = new JSONArray();
InetAddress wifiAddress
= toInetAddress(wifiInfo.getIpAddress());
try {
Enumeration<NetworkInterface> e
= NetworkInterface.getNetworkInterfaces();
while (e.hasMoreElements()) {
NetworkInterface networkInterface = e.nextElement();
boolean found = false;
// first check whether this is the desired interface
Enumeration<InetAddress> as
= networkInterface.getInetAddresses();
while (as.hasMoreElements()) {
InetAddress a = as.nextElement();
if(a.equals(wifiAddress)) {
found = true;
break;
}
}
if (found) {
// interface found let's put addresses
// to the result object
as = networkInterface.getInetAddresses();
while (as.hasMoreElements()) {
InetAddress a = as.nextElement();
if (a.isLinkLocalAddress())
continue;
addresses.put(a.getHostAddress());
}
}
}
} catch (SocketException e) {
JitsiMeetLogger.e(e, TAG + " Unable to NetworkInterface.getNetworkInterfaces()");
}
result.put("addresses", addresses);
promise.resolve(result.toString());
JitsiMeetLogger.d(TAG + " WiFi stats: " + result.toString());
} catch (Throwable e) {
JitsiMeetLogger.e(e, TAG + " Failed to obtain wifi stats");
promise.reject(
new Exception("Failed to obtain wifi stats"));
}
}
};
executor.execute(r);
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 699 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -31,8 +31,8 @@ include ':react-native-immersive'
project(':react-native-immersive').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-immersive/android')
include ':react-native-keep-awake'
project(':react-native-keep-awake').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-keep-awake/android')
include ':react-native-masked-view_masked-view'
project(':react-native-masked-view_masked-view').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-masked-view/masked-view/android')
include ':react-native-orientation-locker'
project(':react-native-orientation-locker').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-orientation-locker/android')
include ':react-native-pager-view'
project(':react-native-pager-view').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-pager-view/android')
include ':react-native-performance'

19
app.js
View File

@@ -1,6 +1,10 @@
/* application specific logic */
import 'jquery';
// Re-export jQuery
// FIXME: Remove this requirement from torture tests.
import $ from 'jquery';
window.$ = window.jQuery = $;
import '@matrix-org/olm';
@@ -14,7 +18,6 @@ import './react/features/base/jitsi-local-storage/setup';
import conference from './conference';
import API from './modules/API';
import UI from './modules/UI/UI';
import keyboardshortcut from './modules/keyboardshortcut/keyboardshortcut';
import translation from './modules/translation/translation';
// Initialize Olm as early as possible.
@@ -29,23 +32,11 @@ window.APP = {
API,
conference,
// Used by do_external_connect.js if we receive the attach data after
// connect was already executed. status property can be 'initialized',
// 'ready', or 'connecting'. We are interested in 'ready' status only which
// means that connect was executed but we have to wait for the attach data.
// In status 'ready' handler property will be set to a function that will
// finish the connect process when the attach data or error is received.
connect: {
handler: null,
status: 'initialized'
},
// Used for automated performance tests.
connectionTimes: {
'index.loaded': window.indexLoadedTime
},
keyboardshortcut,
translation,
UI
};

File diff suppressed because it is too large Load Diff

373
config.js
View File

@@ -1,10 +1,29 @@
/* eslint-disable comma-dangle, no-unused-vars, no-var */
/* eslint-disable comma-dangle, no-unused-vars, no-var, prefer-template, vars-on-top */
/*
* NOTE: If you add a new option please remember to document it here:
* https://jitsi.github.io/handbook/docs/dev-guide/dev-guide-configuration
*/
var subdir = '<!--# echo var="subdir" default="" -->';
var subdomain = '<!--# echo var="subdomain" default="" -->';
if (subdomain) {
subdomain = subdomain.substr(0, subdomain.length - 1).split('.')
.join('_')
.toLowerCase() + '.';
}
// In case of no ssi provided by the webserver, use empty strings
if (subdir.startsWith('<!--')) {
subdir = '';
}
if (subdomain.startsWith('<!--')) {
subdomain = '';
}
var enableJaaS = false;
var config = {
// Connection
//
@@ -23,20 +42,33 @@ var config = {
// focus: 'focus.jitsi-meet.example.com',
// XMPP MUC domain. FIXME: use XEP-0030 to discover it.
muc: 'conference.jitsi-meet.example.com',
muc: 'conference.' + subdomain + 'jitsi-meet.example.com',
},
// BOSH URL. FIXME: use XEP-0156 to discover it.
bosh: '//jitsi-meet.example.com/http-bind',
bosh: 'https://jitsi-meet.example.com/' + subdir + 'http-bind',
// Websocket URL
// websocket: 'wss://jitsi-meet.example.com/xmpp-websocket',
// Websocket URL (XMPP)
// websocket: 'wss://jitsi-meet.example.com/' + subdir + 'xmpp-websocket',
// The real JID of focus participant - can be overridden here
// Do not change username - FIXME: Make focus username configurable
// https://github.com/jitsi/jitsi-meet/issues/7376
// focusUserJid: 'focus@auth.jitsi-meet.example.com',
// Options related to the bridge (colibri) data channel
bridgeChannel: {
// If the backend advertises multiple colibri websockets, this options allows
// to filter some of them out based on the domain name. We use the first URL
// which does not match ignoreDomain, falling back to the first one that matches
// ignoreDomain. Has no effect if undefined.
// ignoreDomain: 'example.com',
// Prefer SCTP (WebRTC data channels over the media path) over a colibri websocket.
// If SCTP is available in the backend it will be used instead of a WS. Defaults to
// false (SCTP is used only if available and no WS are available).
// preferSctp: false
},
// Testing / experimental features.
//
@@ -46,10 +78,6 @@ var config = {
// issues related to insertable streams.
// disableE2EE: false,
// Enables/disables thumbnail reordering in the filmstrip. It is enabled by default unless explicitly
// disabled by the below option.
// enableThumbnailReordering: true,
// Enables XMPP WebSocket (as opposed to BOSH) for the given amount of users.
// mobileXmppWsThreshold: 10, // enable XMPP WebSockets on mobile for 10% of the users
@@ -64,40 +92,12 @@ var config = {
// This is useful when the client runs on a host with limited resources.
// noAutoPlayVideo: false,
// Enable / disable 500 Kbps bitrate cap on desktop tracks. When enabled,
// simulcast is turned off for the desktop share. If presenter is turned
// on while screensharing is in progress, the max bitrate is automatically
// adjusted to 2.5 Mbps. This takes a value between 0 and 1 which determines
// the probability for this to be enabled. This setting has been deprecated.
// desktopSharingFrameRate.max now determines whether simulcast will be enabled
// or disabled for the screenshare.
// capScreenshareBitrate: 1, // 0 to disable - deprecated.
// Whether to use fake constraints (height: 99999, width: 99999) when calling getDisplayMedia on
// Chromium based browsers. This is intended as a workaround for
// https://bugs.chromium.org/p/chromium/issues/detail?id=1056311
// setScreenSharingResolutionConstraints: true,
// Enable callstats only for a percentage of users.
// This takes a value between 0 and 100 which determines the probability for
// the callstats to be enabled.
// callStatsThreshold: 5, // enable callstats for 5% of the users.
},
// Feature Flags.
flags: {
// Enables source names in the signaling.
// sourceNameSignaling: false,
// Enables sending multiple video streams, i.e., camera and desktop tracks can be shared in the conference
// separately as two different streams instead of one composite stream.
// sendMultipleVideoStreams: false,
// Signal that this client supports receiving multiple video streams. Without this flag jicofo will enable
// multi-stream backward compatibility.
receiveMultipleVideoStreams: true,
},
// Disables moderator indicators.
// disableModeratorIndicator: false,
@@ -139,9 +139,6 @@ var config = {
// Media
//
// Enable unified plan implementation support on Chromium based browsers.
// enableUnifiedOnChrome: false,
// Audio
// Disable measuring of audio levels.
@@ -189,9 +186,28 @@ var config = {
// Specify audio quality stereo and opusMaxAverageBitrate values in order to enable HD audio.
// Beware, by doing so, you are disabling echo cancellation, noise suppression and AGC.
// Specify enableOpusDtx to enable support for opus-dtx where
// audio packets wont be transmitted while participant is silent or muted.
// audioQuality: {
// stereo: false,
// opusMaxAverageBitrate: null, // Value to fit the 6000 to 510000 range.
// enableOpusDtx: false,
// },
// Noise suppression configuration. By default rnnoise is used. Optionally Krisp
// can be used by enabling it below, but the Krisp JS SDK files must be supplied in your
// installation. Specifically, these files are needed:
// - https://meet.example.com/libs/krisp/krisp.mjs
// - https://meet.example.com/libs/krisp/models/model_8.kw
// - https://meet.example.com/libs/krisp/models/model_16.kw
// - https://meet.example.com/libs/krisp/models/model_32.kw
// NOTE: Krisp JS SDK v1.0.9 was tested.
// noiseSuppression: {
// krisp: {
// enabled: false,
// logProcessStats: false,
// debugLogs: false,
// },
// },
// Video
@@ -202,9 +218,29 @@ var config = {
// Specifies whether the raised hand will hide when someone becomes a dominant speaker or not
// disableRemoveRaisedHandOnFocus: false,
// speakerStats: {
// // Specifies whether the speaker stats is enable or not.
// disabled: false,
// // Specifies whether there will be a search field in speaker stats or not.
// disableSearch: false,
// // Specifies whether participants in speaker stats should be ordered or not, and with what priority.
// // 'role', <- Moderators on top.
// // 'name', <- Alphabetically by name.
// // 'hasLeft', <- The ones that have left in the bottom.
// order: [
// 'role',
// 'name',
// 'hasLeft',
// ],
// },
// DEPRECATED. Please use speakerStats.disableSearch instead.
// Specifies whether there will be a search field in speaker stats or not
// disableSpeakerStatsSearch: false,
// DEPRECATED. Please use speakerStats.order .
// Specifies whether participants in speaker stats should be ordered or not, and with what priority
// speakerStatsOrder: [
// 'role', <- Moderators on top
@@ -234,12 +270,6 @@ var config = {
// Enable / disable simulcast support.
// disableSimulcast: false,
// Enable / disable layer suspension. If enabled, endpoints whose HD layers are not in use will be suspended
// (no longer sent) until they are requested again. This is enabled by default. This must be enabled for screen
// sharing to work as expected on Chrome. Disabling this might result in low resolution screenshare being sent
// by the client.
// enableLayerSuspension: false,
// Every participant after the Nth will start video muted.
// startVideoMuted: 10,
@@ -247,17 +277,6 @@ var config = {
// applied locally. FIXME: having these 2 options is confusing.
// startWithVideoMuted: false,
// If set to true, prefer to use the H.264 video codec (if supported).
// Note that it's not recommended to do this because simulcast is not
// supported when using H.264. For 1-to-1 calls this setting is enabled by
// default and can be toggled in the p2p section.
// This option has been deprecated, use preferredCodec under videoQuality section instead.
// preferH264: true,
// If set to true, disable H.264 video codec by stripping it out of the
// SDP.
// disableH264: false,
// Desktop sharing
// Optional desktop sharing frame rate options. Default value: min:5, max:5.
@@ -356,6 +375,14 @@ var config = {
// // Whether the feature should be enabled or not.
// enabled: false,
// // Translation languages.
// // Available languages can be found in
// // ./src/react/features/transcribing/translation-languages.json.
// translationLanguages: ['en', 'es', 'fr', 'ro'],
// // Important languages to show on the top of the language list.
// translationLanguagesHead: ['en'],
// // If true transcriber will use the application language.
// // The application language is either explicitly set by participants in their settings or automatically
// // detected based on the environment, e.g. if the app is opened in a chrome instance which
@@ -395,28 +422,6 @@ var config = {
// value will be used when the quality level is selected using "Manage Video Quality" slider.
// startLastN: 1,
// Provides a way to use different "last N" values based on the number of participants in the conference.
// The keys in an Object represent number of participants and the values are "last N" to be used when number of
// participants gets to or above the number.
//
// For the given example mapping, "last N" will be set to 20 as long as there are at least 5, but less than
// 29 participants in the call and it will be lowered to 15 when the 30th participant joins. The 'channelLastN'
// will be used as default until the first threshold is reached.
//
// lastNLimits: {
// 5: 20,
// 30: 15,
// 50: 10,
// 70: 5,
// 90: 2,
// },
// Provides a way to translate the legacy bridge signaling messages, 'LastNChangedEvent',
// 'SelectedEndpointsChangedEvent' and 'ReceiverVideoConstraint' into the new 'ReceiverVideoConstraints' message
// that invokes the new bandwidth allocation algorithm in the bridge which is described here
// - https://github.com/jitsi/jitsi-videobridge/blob/master/doc/allocation.md.
// useNewBandwidthAllocationStrategy: false,
// Specify the settings for video quality optimizations on the client.
// videoQuality: {
// // Provides a way to prevent a video codec from being negotiated on the JVB connection. The codec specified
@@ -477,9 +482,6 @@ var config = {
// 720: 'high',
// },
//
// // Provides a way to resize the desktop track to 720p (if it is greater than 720p) before creating a canvas
// // for the presenter mode (camera picture-in-picture mode with screenshare).
// resizeDesktopForPresenter: false,
// },
// Notification timeouts
@@ -544,12 +546,15 @@ var config = {
// Disables responsive tiles.
// disableResponsiveTiles: false,
// Hides lobby button
// DEPRECATED. Please use `securityUi?.hideLobbyButton` instead.
// Hides lobby button.
// hideLobbyButton: false,
// DEPRECATED. Please use `lobby?.autoKnock` instead.
// If Lobby is enabled starts knocking automatically.
// autoKnockLobby: false,
// DEPRECATED. Please use `lobby?.enableChat` instead.
// Enable lobby chat.
// enableLobbyChat: true,
@@ -560,9 +565,38 @@ var config = {
// Require users to always specify a display name.
// requireDisplayName: true,
// Enables webhid functionality for Audio.
// enableWebHIDFeature: false,
// DEPRECATED! Use 'welcomePage.disabled' instead.
// Whether to use a welcome page or not. In case it's false a random room
// will be joined when no room is specified.
enableWelcomePage: true,
// enableWelcomePage: true,
// Configs for welcome page.
// welcomePage: {
// // Whether to disable welcome page. In case it's disabled a random room
// // will be joined when no room is specified.
// disabled: false,
// // If set,landing page will redirect to this URL.
// customUrl: ''
// },
// Configs for the lobby screen.
// lobby {
// // If Lobby is enabled, it starts knocking automatically. Replaces `autoKnockLobby`.
// autoKnock: false,
// // Enables the lobby chat. Replaces `enableLobbyChat`.
// enableChat: true,
// },
// Configs for the security related UI elements.
// securityUi: {
// // Hides the lobby button. Replaces `hideLobbyButton`.
// hideLobbyButton: false,
// // Hides the possibility to set and enter a lobby password.
// disableLobbyPassword: false,
// },
// Disable app shortcuts that are registered upon joining a conference
// disableShortcuts: false,
@@ -601,9 +635,6 @@ var config = {
// Hides the email section under profile settings.
// hideEmailInSettings: false,
// Whether or not some features are checked based on token.
// enableFeaturesBasedOnToken: false,
// When enabled the password used for locking a room is restricted to up to the number of digits specified
// default: roomPasswordNumberOfDigits: false,
// roomPasswordNumberOfDigits: 10,
@@ -684,7 +715,6 @@ var config = {
// 'chat',
// 'closedcaptions',
// 'desktop',
// 'dock-iframe'
// 'download',
// 'embedmeeting',
// 'etherpad',
@@ -712,20 +742,20 @@ var config = {
// 'stats',
// 'tileview',
// 'toggle-camera',
// 'undock-iframe',
// 'videoquality',
// 'whiteboard',
// ],
// Holds values related to toolbar visibility control.
// toolbarConfig: {
// // Moved from interfaceConfig.INITIAL_TOOLBAR_TIMEOUT
// // The initial numer of miliseconds for the toolbar buttons to be visible on screen.
// // The initial number of milliseconds for the toolbar buttons to be visible on screen.
// initialTimeout: 20000,
// // Moved from interfaceConfig.TOOLBAR_TIMEOUT
// // Number of miliseconds for the toolbar buttons to be visible on screen.
// // Number of milliseconds for the toolbar buttons to be visible on screen.
// timeout: 4000,
// // Moved from interfaceConfig.TOOLBAR_ALWAYS_VISIBLE
// // Whether toolbar should be always visible or should hide after x miliseconds.
// // Whether toolbar should be always visible or should hide after x milliseconds.
// alwaysVisible: false,
// // Indicates whether the toolbar should still autohide when chat is open
// autoHideWhileChatIsOpen: false,
@@ -749,11 +779,13 @@ var config = {
// 'desktop',
// 'download',
// 'embedmeeting',
// 'end-meeting',
// 'etherpad',
// 'feedback',
// 'filmstrip',
// 'fullscreen',
// 'hangup',
// 'hangup-menu',
// 'help',
// {
// key: 'invite',
@@ -786,12 +818,21 @@ var config = {
// key: 'add-passcode',
// preventExecution: false
// },
// 'whiteboard',
// ],
// List of pre meeting screens buttons to hide. The values must be one or more of the 5 allowed buttons:
// 'microphone', 'camera', 'select-background', 'invite', 'settings'
// hiddenPremeetingButtons: [],
// An array with custom option buttons for the participant context menu
// type: Array<{ icon: string; id: string; text: string; }>
// customParticipantMenuButtons: [],
// An array with custom option buttons for the toolbar
// type: Array<{ icon: string; id: string; text: string; }>
// customToolbarButtons: [],
// Stats
//
@@ -808,6 +849,7 @@ var config = {
// Application ID and Secret.
// callStatsID: '',
// callStatsSecret: '',
// callStatsApplicationLogsDisabled: false,
// The callstats initialize config params as described in the API:
// https://docs.callstats.io/docs/javascript#callstatsinitialize-with-app-secret
@@ -882,9 +924,6 @@ var config = {
// connection.
enabled: true,
// Enable unified plan implementation support on Chromium for p2p connection.
// enableUnifiedOnChrome: false,
// Sets the ICE transport policy for the p2p connection. At the time
// of this writing the list of possible values are 'all' and 'relay',
// but that is subject to change in the future. The enum is defined in
@@ -893,18 +932,10 @@ var config = {
// If not set, the effective value is 'all'.
// iceTransportPolicy: 'all',
// If set to true, it will prefer to use H.264 for P2P calls (if H.264
// is supported). This setting is deprecated, use preferredCodec instead.
// preferH264: true,
// Provides a way to set the video codec preference on the p2p connection. Acceptable
// codec values are 'VP8', 'VP9' and 'H264'.
// preferredCodec: 'H264',
// If set to true, disable H.264 video codec by stripping it out of the
// SDP. This setting is deprecated, use disabledCodec instead.
// disableH264: false,
// Provides a way to prevent a video codec from being negotiated on the p2p connection.
// disabledCodec: '',
@@ -944,14 +975,19 @@ var config = {
// PeerConnection states along with getStats metrics polled at the specified
// interval.
// rtcstatsEnabled: false,
// rtcstatsStoreLogs: false,
// In order to enable rtcstats one needs to provide a endpoint url.
// rtcstatsEndpoint: wss://rtcstats-server-pilot.jitsi.net/,
// The interval at which rtcstats will poll getStats, defaults to 1000ms.
// The interval at which rtcstats will poll getStats, defaults to 10000ms.
// If the value is set to 0 getStats won't be polled and the rtcstats client
// will only send data related to RTCPeerConnection events.
// rtcstatsPolIInterval: 1000,
// rtcstatsPollInterval: 10000,
// This determines if rtcstats sends the SDP to the rtcstats server or replaces
// all SDPs with an empty string instead.
// rtcstatsSendSdp: false,
// Array of script URLs to load as lib-jitsi-meet "analytics handlers".
// scriptURLs: [
@@ -1045,7 +1081,7 @@ var config = {
// maxConferenceSize: 200,
//
// // The maximum number of e2e ping messages per second for the whole conference to aim for.
// // This is used to contol the pacing of messages in order to reduce the load on the backend.
// // This is used to control the pacing of messages in order to reduce the load on the backend.
// maxMessagesPerSecond: 250,
// },
@@ -1056,10 +1092,71 @@ var config = {
// use only.
// _desktopSharingSourceDevice: 'sample-id-or-label',
// DEPRECATED! Use deeplinking.disabled instead.
// If true, any checks to handoff to another application will be prevented
// and instead the app will continue to display in the current browser.
// disableDeepLinking: false,
// The deeplinking config.
// For information about the properties of
// deeplinking.[ios/android].dynamicLink check:
// https://firebase.google.com/docs/dynamic-links/create-manually
// deeplinking: {
//
// // The desktop deeplinking config.
// desktop: {
// appName: 'Jitsi Meet'
// },
// // If true, any checks to handoff to another application will be prevented
// // and instead the app will continue to display in the current browser.
// disabled: false,
// // whether to hide the logo on the deep linking pages.
// hideLogo: false,
// // The ios deeplinking config.
// ios: {
// appName: 'Jitsi Meet',
// // Specify mobile app scheme for opening the app from the mobile browser.
// appScheme: 'org.jitsi.meet',
// // Custom URL for downloading ios mobile app.
// downloadLink: 'https://itunes.apple.com/us/app/jitsi-meet/id1165103905',
// dynamicLink: {
// apn: 'org.jitsi.meet',
// appCode: 'w2atb',
// customDomain: undefined,
// ibi: 'com.atlassian.JitsiMeet.ios',
// isi: '1165103905'
// }
// },
// // The android deeplinking config.
// android: {
// appName: 'Jitsi Meet',
// // Specify mobile app scheme for opening the app from the mobile browser.
// appScheme: 'org.jitsi.meet',
// // Custom URL for downloading android mobile app.
// downloadLink: 'https://play.google.com/store/apps/details?id=org.jitsi.meet',
// // Android app package name.
// appPackage: 'org.jitsi.meet',
// fDroidUrl: 'https://f-droid.org/en/packages/org.jitsi.meet/',
// dynamicLink: {
// apn: 'org.jitsi.meet',
// appCode: 'w2atb',
// customDomain: undefined,
// ibi: 'com.atlassian.JitsiMeet.ios',
// isi: '1165103905'
// }
// }
// },
// // The terms, privacy and help centre URL's.
// legalUrls: {
// helpCentre: 'https://web-cdn.jitsi.net/faq/meet-faq.html',
// privacy: 'https://jitsi.org/meet/privacy',
// terms: 'https://jitsi.org/meet/terms'
// },
// A property to disable the right click context menu for localVideo
// the menu has option to flip the locally seen video for local presentations
// disableLocalVideoFlip: false,
@@ -1141,7 +1238,7 @@ var config = {
// For a list of all possible theme tokens and their current defaults, please check:
// https://github.com/jitsi/jitsi-meet/tree/master/resources/custom-theme/custom-theme.json
// For a short explanations on each of the tokens, please check:
// https://github.com/jitsi/jitsi-meet/blob/master/react/features/base/ui/Tokens.js
// https://github.com/jitsi/jitsi-meet/blob/master/react/features/base/ui/Tokens.ts
// IMPORTANT!: This is work in progress so many of the various tokens are not yet applied in code
// or they are partially applied.
customTheme: {
@@ -1152,7 +1249,6 @@ var config = {
ui03: "violet",
ui04: "magenta",
ui05: "blueviolet",
field02Hover: 'red',
action01: 'green',
action01Hover: 'lightgreen',
disabled01: 'beige',
@@ -1267,11 +1363,6 @@ var config = {
// {"countryCode":"US","tollFree":false,"formattedNumber":"+1 123-456-7890"}
// dialInConfCodeUrl is the conference mapper converting a meeting id to a PIN used for dial-in
// or the other way around (more info in resources/cloud-api.swagger)
//
// For JaaS customers the default values are:
// dialInNumbersUrl: 'https://conference-mapper.jitsi.net/v1/access/dids',
// dialInConfCodeUrl: 'https://conference-mapper.jitsi.net/v1/access',
//
// List of undocumented settings used in jitsi-meet
/**
@@ -1281,9 +1372,9 @@ var config = {
deploymentInfo
dialOutAuthUrl
dialOutCodesUrl
dialOutRegionUrl
disableRemoteControl
displayJids
externalConnectUrl
e2eeLabels
firefox_fake_device
googleApiApplicationClientID
@@ -1307,7 +1398,6 @@ var config = {
/**
_peerConnStatusOutOfLastNTimeout
_peerConnStatusRtcMuteTimeout
abTesting
avgRtpStatsN
callStatsConfIDNamespace
callStatsCustomScriptUrl
@@ -1316,6 +1406,7 @@ var config = {
disableAGC
disableAP
disableHPF
disableLocalStats
disableNS
enableTalkWhileMuted
forceJVB121Ratio
@@ -1372,6 +1463,7 @@ var config = {
// 'notify.leftTwoMembers', // show when two participants left simultaneously
// 'notify.leftThreePlusMembers', // show when more than 2 participants left simultaneously
// 'notify.grantedTo', // shown when moderator rights were granted to a participant
// 'notify.hostAskedUnmute', // shown to participant when host asks them to unmute
// 'notify.invitedOneMember', // shown when 1 participant has been invited
// 'notify.invitedThreePlusMembers', // shown when 3+ participants have been invited
// 'notify.invitedTwoMembers', // shown when 2 participants have been invited
@@ -1392,7 +1484,7 @@ var config = {
// 'notify.raisedHand', // shown when a partcipant used raise hand,
// 'notify.startSilentTitle', // shown when user joined with no audio
// 'notify.unmute', // shown to moderator when user raises hand during AV moderation
// 'notify.hostAskedUnmute', // shown to participant when host asks them to unmute
// 'notify.videoMutedRemotelyTitle', // shown when user's video is muted by a remote party,
// 'prejoin.errorDialOut',
// 'prejoin.errorDialOutDisconnected',
// 'prejoin.errorDialOutFailed',
@@ -1423,6 +1515,10 @@ var config = {
// // (displaying multiple participants on stage besides the vertical filmstrip)
// disableStageFilmstrip: false,
// // Default number of participants that can be displayed on stage.
// // The user can change this in settings. Number must be between 1 and 6.
// stageFilmstripParticipants: 1,
// // Disables the top panel (only shown when a user is sharing their screen).
// disableTopPanel: false,
@@ -1452,7 +1548,50 @@ var config = {
// // - chat: show the GIF as a message in chat
// // - all: all of the above. This is the default option
// displayMode: 'all',
// // How long the GIF should be displayed on the tile (in miliseconds).
// // How long the GIF should be displayed on the tile (in milliseconds).
// tileTime: 5000,
// // Limit results by rating: g, pg, pg-13, r. Default value: g.
// rating: 'pg',
// // The proxy server url for giphy requests in the web app.
// proxyUrl: 'https://giphy-proxy.example.com',
// },
// Logging
// logging: {
// // Default log level for the app and lib-jitsi-meet.
// defaultLogLevel: 'trace',
// // Option to disable LogCollector (which stores the logs on CallStats).
// //disableLogCollector: true,
// // Individual loggers are customizable.
// loggers: {
// // The following are too verbose in their logging with the default level.
// 'modules/RTC/TraceablePeerConnection.js': 'info',
// 'modules/statistics/CallStats.js': 'info',
// 'modules/xmpp/strophe.util.js': 'log',
// },
// Application logo url
// defaultLogoUrl: 'images/watermark.svg',
// Settings for the Excalidraw whiteboard integration.
// whiteboard: {
// // Whether the feature is enabled or not.
// enabled: true,
// // The server used to support whiteboard collaboration.
// // https://github.com/jitsi/excalidraw-backend
// collabServerBaseUrl: 'https://excalidraw-backend.example.com',
// },
};
// Temporary backwards compatibility with old mobile clients.
config.flags = config.flags || {};
config.flags.sourceNameSignaling = true;
config.flags.sendMultipleVideoStreams = true;
config.flags.receiveMultipleVideoStreams = true;
// Set the default values for JaaS customers
if (enableJaaS) {
config.dialInNumbersUrl = 'https://conference-mapper.jitsi.net/v1/access/dids';
config.dialInConfCodeUrl = 'https://conference-mapper.jitsi.net/v1/access';
config.roomPasswordNumberOfDigits = 10; // skip re-adding it (do not remove comment)
}

View File

@@ -10,16 +10,16 @@ import {
connectionEstablished,
connectionFailed,
constructOptions
} from './react/features/base/connection/actions';
} from './react/features/base/connection/actions.web';
import { openDialog } from './react/features/base/dialog/actions';
import { setJWT } from './react/features/base/jwt';
import { setJWT } from './react/features/base/jwt/actions';
import {
JitsiConnectionErrors,
JitsiConnectionEvents
} from './react/features/base/lib-jitsi-meet';
import { isFatalJitsiConnectionError } from './react/features/base/lib-jitsi-meet/functions';
import { getCustomerDetails } from './react/features/jaas/actions.any';
import { isVpaasMeeting, getJaasJWT } from './react/features/jaas/functions';
import { getJaasJWT, isVpaasMeeting } from './react/features/jaas/functions';
import {
setPrejoinDisplayNameRequired
} from './react/features/prejoin/actions';
@@ -32,54 +32,6 @@ const logger = Logger.getLogger(__filename);
*/
export const DISCO_JIBRI_FEATURE = 'http://jitsi.org/protocol/jibri';
/**
* Checks if we have data to use attach instead of connect. If we have the data
* executes attach otherwise check if we have to wait for the data. If we have
* to wait for the attach data we are setting handler to APP.connect.handler
* which is going to be called when the attach data is received otherwise
* executes connect.
*
* @param {string} [id] user id
* @param {string} [password] password
* @param {string} [roomName] the name of the conference.
*/
function checkForAttachParametersAndConnect(id, password, connection) {
if (window.XMPPAttachInfo) {
APP.connect.status = 'connecting';
// When connection optimization is not deployed or enabled the default
// value will be window.XMPPAttachInfo.status = "error"
// If the connection optimization is deployed and enabled and there is
// a failure the value will be window.XMPPAttachInfo.status = "error"
if (window.XMPPAttachInfo.status === 'error') {
connection.connect({
id,
password
});
return;
}
const attachOptions = window.XMPPAttachInfo.data;
if (attachOptions) {
connection.attach(attachOptions);
delete window.XMPPAttachInfo.data;
} else {
connection.connect({
id,
password
});
}
} else {
APP.connect.status = 'ready';
APP.connect.handler
= checkForAttachParametersAndConnect.bind(
null,
id, password, connection);
}
}
/**
* Try to open connection using provided credentials.
* @param {string} [id]
@@ -182,7 +134,10 @@ export async function connect(id, password) {
APP.store.dispatch(setPrejoinDisplayNameRequired());
}
checkForAttachParametersAndConnect(id, password, connection);
connection.connect({
id,
password
});
});
}
@@ -212,7 +167,7 @@ export function openConnection({ id, password, retry, roomName }) {
password = passwordOverride; // eslint-disable-line no-param-reassign
}
return connect(id, password, roomName).catch(err => {
return connect(id, password).catch(err => {
if (retry) {
const { jwt } = APP.store.getState()['features/base/jwt'];

View File

@@ -1,3 +0,0 @@
module.exports = {
'extends': '../react/.eslintrc.js'
};

View File

@@ -1,86 +0,0 @@
/* global config, createConnectionExternally */
import getRoomName from '../react/features/base/config/getRoomName';
import { parseURLParams } from '../react/features/base/util/parseURLParams';
/**
* Implements external connect using createConnectionExternally function defined
* in external_connect.js for Jitsi Meet. Parses the room name and JSON Web
* Token (JWT) from the URL and executes createConnectionExternally.
*
* NOTE: If you are using lib-jitsi-meet without Jitsi Meet, you should use this
* file as reference only because the implementation is Jitsi Meet-specific.
*
* NOTE: For optimal results this file should be included right after
* external_connect.js.
*/
if (typeof createConnectionExternally === 'function') {
// URL params have higher priority than config params.
// Do not use external connect if websocket is enabled.
let url
= parseURLParams(window.location, true, 'hash')[
'config.externalConnectUrl']
|| config.websocket ? undefined : config.externalConnectUrl;
const isRecorder
= parseURLParams(window.location, true, 'hash')['config.iAmRecorder'];
let roomName;
if (url && (roomName = getRoomName()) && !isRecorder) {
url += `?room=${roomName}`;
const token = parseURLParams(window.location, true, 'search').jwt;
if (token) {
url += `&token=${token}`;
}
createConnectionExternally(
url,
connectionInfo => {
// Sets that global variable to be used later by connect method
// in connection.js.
window.XMPPAttachInfo = {
status: 'success',
data: connectionInfo
};
checkForConnectHandlerAndConnect();
},
errorCallback);
} else {
errorCallback();
}
} else {
errorCallback();
}
/**
* Check if connect from connection.js was executed and executes the handler
* that is going to finish the connect work.
*
* @returns {void}
*/
function checkForConnectHandlerAndConnect() {
window.APP
&& window.APP.connect.status === 'ready'
&& window.APP.connect.handler();
}
/**
* Implements a callback to be invoked if anything goes wrong.
*
* @param {Error} error - The specifics of what went wrong.
* @returns {void}
*/
function errorCallback(error) {
// The value of error is undefined if external connect is disabled.
error && console.warn(error);
// Sets that global variable to be used later by connect method in
// connection.js.
window.XMPPAttachInfo = {
status: 'error'
};
checkForConnectHandlerAndConnect();
}

View File

@@ -1,117 +0,0 @@
/**
* Mixins that mimic the way Atlaskit fills the screen with modals at low screen widths.
*/
@mixin full-size-modal-positioner() {
height: 100%;
left: 0;
position: fixed;
top: 0;
max-width: 100%;
width: 100%;
}
@mixin full-size-modal-dialog() {
height: 100%;
max-height: 100%;
border-radius: 0;
}
/**
* Move the @atlaskit/flag container up a little bit so it does not cover the
* toolbar with the first notification.
*/
.atlaskit-portal > #notifications-container {
bottom: calc(#{$newToolbarSizeWithPadding}) !important;
}
/**
* Keep overflow menu within screen vertical bounds and make it scrollable.
*/
.toolbox-button-wth-dialog > div:nth-child(2) {
background: $menuBG;
max-height: calc(100vh - #{$newToolbarSizeWithPadding} - 46px);
margin-bottom: 4px;
padding: 0;
overflow-y: auto;
}
/**
* Remove background color and box-shadow for the context menu container.
*/
.toolbox-button-wth-dialog.context-menu > div:nth-child(2) {
background: transparent;
box-shadow: none;
overflow-y: initial;
}
.audio-preview > div:nth-child(2),
.video-preview > div:nth-child(2) {
margin-bottom: 4px;
outline: none;
padding: 0;
}
/**
* The following selectors keep the chat modal full-size anywhere between 100px
* and 580px for desktop or 680px for mobile.
*/
@media (min-width: 100px) and (max-width: 320px) {
.smiley-input {
display: none;
}
.shift-right .focus-lock > div > div {
@include full-size-modal-positioner();
}
.shift-right .focus-lock [role="dialog"] {
@include full-size-modal-dialog();
}
}
@media (min-width: 480px) and (max-width: 580px) {
.shift-right .focus-lock > div > div {
@include full-size-modal-positioner();
}
.shift-right .focus-lock [role="dialog"] {
@include full-size-modal-dialog();
}
}
@media (max-width: 580px) {
// Override Atlaskit inline style for the modal background.
// Important is unfortunately needed for that.
.shift-right .focus-lock [role="dialog"][style] {
background-color: $chatBackgroundColor !important;
}
// Remove Atlaskit padding from the chat dialog.
.shift-right .focus-lock [role="dialog"] > div:first-child > div:nth-child(2) {
padding: 0;
}
}
div.Tooltip {
color: #fff;
font-size: 12px;
line-height: 14px;
padding: 8px;
}
// make modal full screen on landscape orientation
@media (max-height: 420px) {
.atlaskit-portal {
.css-1oc7v0j {
height: 100%;
padding: 0;
max-width: 100%;
top: 0;
width: 100%;
&> div {
height: 100%;
}
}
}
}

View File

@@ -1,192 +0,0 @@
.audio-preview {
display: inline-block;
&-content {
background: $menuBG;
border-radius: 3px;
font-size: 14px;
line-height: 24px;
max-height: 456px;
overflow: auto;
width: 300px;
&-ul {
margin:0;
padding:0;
list-style-type: none;
}
}
&-header {
color: #fff;
align-items: center;
display: flex;
margin-top: 8px;
padding: 8px 16px;
&-icon {
display: inline-block;
svg {
fill: #fff;
}
}
&--bordered {
border-bottom: 1px solid #4C4D50;
}
&-text {
margin-left: 12px;
}
}
&-entry {
align-items: center;
color: #fff;
cursor: pointer;
display: flex;
padding: 8px 0;
margin-left: 48px;
&--selected {
background: #131519;
cursor: initial;
margin-left: 0;
padding-left: 18px;
}
&-text {
color: #fff;
display: inline-block;
line-height: 24px;
text-overflow: ellipsis;
max-width: 213px;
overflow: hidden;
white-space: nowrap;
}
}
&-speaker {
position: relative;
&-ul {
margin:0;
padding:0;
list-style-type: none;
}
&:hover, &:focus-within, &:focus {
.audio-preview-entry {
background: #36383C;
margin-left: 0;
padding-left: 48px;
&--selected {
padding-left: 18px;
background: $newToolbarBackgroundColor;
}
}
.audio-preview-test-button {
display: inline-block;
}
.audio-preview-entry-text {
max-width: 178px;
}
}
&:last-child {
padding-bottom: 8px;
}
.audio-preview-entry-text {
max-width: 238px;
}
}
&-microphone {
position: relative;
&:hover {
.audio-preview-entry {
background: #36383C;
margin-left: 0;
padding-left: 48px;
&--selected {
background: $newToolbarBackgroundColor;
padding-left: 18px;
}
}
}
&--nometer {
.audio-preview-entry-text {
max-width: 238px;
}
}
&--withmeter {
.audio-preview-entry-text {
max-width: 178px;
}
}
}
&-icon {
border-radius: 50%;
display: inline-block;
width: 14px;
& svg {
fill: #1C2025;
}
&--check {
background: #31B76A;
margin-right: 16px;
}
&--exclamation {
margin-left: 6px;
& svg {
fill: #E54B4B;
}
}
}
&-hr {
border-top: 1px solid #4C4D50;
border-bottom: 0;
}
&-test-button {
display: none;
background: #FFF;
border: 1px solid #D1DBE8;
border-radius: 3px;
color: #1C2025;
cursor: pointer;
font-weight: 600;
font-size: 0.8rem;
line-height: 24px;
padding: 2px 8px;
position: absolute;
right: 16px;
top: 5px;
}
&-meter-mic {
position: absolute;
right: 16px;
top: 14px;
}
// Override @atlaskit/InlineDialog container which is made with styled components
& > div:nth-child(2) {
outline: none;
padding: 0;
}
}

View File

@@ -126,6 +126,12 @@ form {
background-size: contain;
}
.leftwatermarknomargin {
background-position: center left;
background-repeat: no-repeat;
background-size: contain;
}
.rightwatermark {
right: 32px;
top: 32px;
@@ -182,3 +188,8 @@ form {
background: rgba(0, 0, 0, .5);
border-radius: 4px;
}
/* Necessary for the new icons to work properly. */
.jitsi-icon svg path {
fill: inherit !important;
}

View File

@@ -22,7 +22,7 @@
display: flex;
flex-direction: column;
// extract header + tabs height
height: calc(100% - 102px);
height: calc(100% - 119px);
}
.chat-panel-no-tabs {
@@ -30,12 +30,18 @@
height: calc(100% - 70px);
}
#chat-conversation-container {
// extract message input height
height: calc(100% - 64px);
overflow: hidden;
position: relative;
}
#chatconversation {
box-sizing: border-box;
flex: 1;
font-size: 10pt;
// extract message input height
height: calc(100% - 68px);
height: 100%;
line-height: 20px;
overflow: auto;
padding: 16px;
@@ -68,31 +74,9 @@
a:active {
color: black;
}
}
#chat-recipient {
align-items: center;
background-color: $chatPrivateMessageBackgroundColor;
display: flex;
flex-direction: row;
font-weight: 100;
padding: 10px;
span {
color: white;
display: flex;
flex: 1;
}
div {
svg {
cursor: pointer;
fill: white;
}
}
&.lobby-chat-recipient {
background-color: $chatLobbyMessageBackgroundColor;
&::-webkit-scrollbar-corner {
background: #3a3a3a;
}
}
@@ -118,64 +102,18 @@
}
.chat-input-container {
padding: 0 16px 16px;
&.populated {
#chat-input {
.send-button {
background: #1B67EC;
cursor: pointer;
margin-left: 0.3rem;
@media (hover: hover) and (pointer: fine) {
&:hover {
background: #3D82FB;
}
}
&:active {
background: #0852D4;
}
path {
fill: #fff;
}
}
}
}
padding: 0 16px 24px;
}
#chat-input {
border: 1px solid $chatInputSeparatorColor;
display: flex;
padding: 4px;
border-radius: 3px;
&:focus-within {
border: 1px solid #619CF4;
}
* {
background-color: transparent;
}
align-items: flex-end;
position: relative;
}
.send-button-container {
display: flex;
align-items: center;
}
.send-button {
display: flex;
align-items: center;
justify-content: center;
height: 40px;
width: 40px;
border-radius: 3px;
path {
fill: $chatInputSeparatorColor;
}
.chat-input {
flex: 1;
margin-right: 8px;
}
.smiley-button {
@@ -302,15 +240,6 @@
-webkit-user-select: text;
user-select: text;
}
.display-name {
font-size: 12px;
font-weight: 600;
margin-bottom: 5px;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
}
.sr-only {
@@ -327,24 +256,11 @@
}
.chatmessage {
background-color: $chatRemoteMessageBackgroundColor;
border-radius: 0px 6px 6px 6px;
box-sizing: border-box;
color: white;
margin-top: 3px;
max-width: 100%;
position: relative;
&.localuser {
background-color: $chatLocalMessageBackgroundColor;
border-radius: 6px 0px 6px 6px;
}
.usermessage {
white-space: pre-wrap;
font-size: 14px;
}
&.error {
border-radius: 0px;
@@ -359,22 +275,12 @@
}
}
.privatemessagenotice {
font-size: 11px;
font-weight: 100;
}
.messagecontent {
margin: 8px;
max-width: 100%;
overflow: hidden;
}
}
.timestamp {
color: #757575;
}
#smileys {
font-size: 20pt;
margin: auto;
@@ -395,7 +301,9 @@
.smiley-input {
display: flex;
position: relative;
position: absolute;
top: 0;
left: 0;
}
.smileys-panel {
@@ -403,7 +311,7 @@
box-sizing: border-box;
background-color: rgba(0, 0, 0, .6) !important;
height: auto;
display: none;
display: flex;
overflow: hidden;
position: absolute;
width: calc(#{$sidebarWidth} - 32px);
@@ -418,11 +326,6 @@
*/
transition: max-height 0.3s;
&.show-smileys {
display: flex;
max-height: 500%;
}
#smileysContainer {
background-color: $chatBackgroundColor;
border-top: 1px solid $chatInputSeparatorColor;
@@ -451,24 +354,9 @@
}
.chat-message-group {
display: flex;
flex-direction: column;
&.local {
align-items: flex-end;
.chatmessage {
background-color: $chatLocalMessageBackgroundColor;
border-radius: 6px 0px 6px 6px;
&.privatemessage {
background-color: $chatPrivateMessageBackgroundColor;
}
&.lobbymessage {
background-color: $chatLobbyMessageBackgroundColor;
}
}
.display-name {
display: none;
}
@@ -479,58 +367,10 @@
}
&.error {
.chatmessage {
background-color: $defaultWarningColor;
border-radius: 0px;
font-weight: 100;
}
.display-name {
display: none;
}
}
.chatmessage-wrapper {
max-width: 100%;
.replywrapper {
display: flex;
flex-direction: row;
align-items: center;
.messageactions {
align-self: stretch;
border-left: 1px solid $chatActionsSeparatorColor;
display: flex;
flex-direction: column;
justify-content: center;
padding: 5px;
&.lobbychatmessageactions {
border-left-color: $chatLobbyActionsSeparatorColor;
}
.toolbox-icon {
cursor: pointer;
}
}
}
}
.chatmessage {
background-color: $chatRemoteMessageBackgroundColor;
border-radius: 0px 6px 6px 6px;
display: inline-block;
margin-top: 3px;
color: white;
&.privatemessage {
background-color: $chatPrivateMessageBackgroundColor;
}
&.lobbymessage {
background-color: $chatLobbyMessageBackgroundColor;
}
}
}
.chat-dialog {
@@ -573,41 +413,3 @@
background: #36383C;
border-radius: 3px;
}
.chat-tabs-container {
width: 100%;
border-bottom: thin solid #292929;
display: flex;
justify-content: space-around;
}
.chat-tab {
font-size: 1.2em;
padding-bottom: 0.5em;
width: 50%;
text-align: center;
color: #8B8B8B;
cursor: pointer;
}
.chat-tab-focus {
border-bottom-style: solid;
color: #FFF;
}
.chat-tab-title {
margin-right: 8px;
}
.chat-tab-badge {
background-color: #165ecc;
border-radius: 50%;
box-sizing: border-box;
font-weight: 700;
overflow: hidden;
text-align: center;
text-overflow: ellipsis;
vertical-align: middle;
padding: 0 4px;
color: #FFF;
}

View File

@@ -1,75 +0,0 @@
.cpick {
border: 1px solid #A4B8D1;
color: #fff;
display: flex;
font-size: 15px;
height: 38px;
line-height: 24px;
&-selector {
align-items: center;
background-color: #283447;
border-right: 1px solid #A4B8D1;
cursor: pointer;
display: flex;
padding: 8px 10px;
position: relative;
width: 88px;
}
&-icon {
margin-right: 8px;
position: absolute;
right: 0;
top: 12px;
& > svg {
fill: #fff;
}
}
&-input {
padding: 8px;
background: #1C2025;
border: 0;
margin: 0;
color: #fff;
caret-color: #0376DA;
flex-grow: 1;
}
&-dropdown {
height: 190px;
overflow-y: auto;
width: 343px;
}
&-dropdown-entry {
align-items: center;
cursor: pointer;
display: flex;
height: 40px;
padding: 0 10px;
&:hover {
background-color: #66768b;
}
&-text {
color: #fff;
flex-grow: 1;
font-size: 15px;
line-height: 24px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
}
// Override @Atlaskit/inline-dialog styles
.cpick-container > div:nth-child(2) {
outline: none;
padding: 8px 0 0 0;
}

View File

@@ -24,8 +24,6 @@
}
.drawer-menu {
background: #242528;
border-radius: 16px 16px 0 0;
overflow-y: auto;
margin-bottom: env(safe-area-inset-bottom, 0);
width: 100%;

View File

@@ -82,6 +82,7 @@
}
.left-column {
order: -1;
display: flex;
flex-direction: column;
flex-grow: 0;
@@ -92,6 +93,7 @@
.right-column {
display: flex;
flex-direction: column;
align-items: flex-start;
flex-grow: 1;
padding-left: 16px;
padding-top: 13px;
@@ -99,11 +101,11 @@
}
.title {
font-size: 12px;
font-weight: 600;
line-height: 16px;
padding-bottom: 4px;
}
font-size: 12px;
font-weight: 600;
line-height: 16px;
margin-bottom: 4px;
}
.subtitle {
color: #5E6D7A;
@@ -125,8 +127,7 @@
cursor: pointer;
}
&.with-click-handler:hover,
&.with-click-handler:focus {
&.with-click-handler:hover {
background-color: #c7ddff;
}

View File

@@ -3,28 +3,28 @@
display: inline-block;
& > svg {
fill: #4E5E6C;
fill: #525252;
width: 38px;
}
}
&.metr--disabled {
& > svg {
fill: #4E5E6C;
fill: #525252;
}
}
}
.metr-l-0 {
rect:first-child {
fill: #31B76A;
fill: #1EC26A;
}
}
@for $i from 1 through 7 {
.metr-l-#{$i} {
rect:nth-child(-n+#{$i+1}) {
fill: #31B76A;
fill: #1EC26A;
}
}
}

View File

@@ -1,23 +0,0 @@
.notification-appear, .notification-enter {
opacity: 0;
position: relative;
left: -200px;
transition: all .2s !important; // !important needed to overwrite atlaskit default style
&-active {
opacity: 1;
left: 0;
}
}
.notification-exit {
opacity: 1;
position: relative;
left: 0;
transition: all .2s !important; // !important needed to overwrite atlaskit default style
&-active {
opacity: 0;
left: -200px;
}
}

View File

@@ -1,369 +1,3 @@
.poll-dialog {
font-size: 14px;
font-weight: 400;
line-height: 20px;
h1, span, li, strong {
color: #bce;
}
ol {
margin: 0;
}
}
.poll-question-field {
padding: 8px 16px;
padding-bottom: 24px;
border-bottom: 1px solid #525252;
}
.poll-header {
margin-bottom: 8px;
}
.poll-creator {
color: #C2C2C2;
font-weight: 600;
margin: 4px 0 16px 0;
}
.poll-answer-container {
background: #3D3D3D;
border-radius: 3px;
margin-bottom: 8px;
@media (max-width: 580px) {
&> span {
padding: 8px 0;
}
svg {
margin-top: 6px;
}
}
}
.poll-answer-option {
font-weight: 400;
display: block;
margin: 4px;
@media (max-width: 580px) {
font-size: 16px;
margin: 11px 8px
}
}
.poll-answer-field-list, .poll-answer-list, .poll-result-list {
list-style-type: none;
padding: 0;
margin: 0;
}
.poll-answer-field-list {
padding: 0 16px;
}
ol.poll-result-list {
margin-bottom: 1.5em;
}
.poll-result-list > li {
margin-bottom: 16px;
}
.poll-answer-field {
flex-direction: column;
align-items: stretch;
margin-bottom: 16;
}
.poll-answer-field:last-child {
margin-bottom: 0;
}
.poll-create-option-row {
display: 'flex';
margin-bottom: 4;
}
// Needed to override atlaskit default blue color
.poll-create-container .jsYMHu {
background: #292929;
border-color: #808090;
color: #fff // #808090
}
.poll-add-button {
display: flex;
justify-content: center;
padding: 8px 16px;
}
.poll-remove-option-button {
background: 0 0;
border: none;
color: #E04757;
padding-left: 0;
}
.poll-create-add-option {
border: none;
background-color: #292929;
padding: 3px;
width: 100%;
}
.poll-icon-button, .poll-drag-handle {
.jitsi-icon svg {
fill: #929292;
}
}
.poll-drag-handle {
background-color: transparent;
border: none;
cursor: grab;
padding-left: 8;
padding-top: 8px;
display: flex;
}
.poll-dragged {
opacity: 0.5;
* {
cursor: grabbing !important;
}
}
.poll-question {
font-size: 16px;
font-weight: 600;
line-height: 26px;
}
.poll-answer-voters {
font-weight: lighter;
list-style-type: none;
border: #616161 solid 1px;
border-radius: 3px;
padding: 2px 6px;
margin: 4px 0px 12px;
background-color: #616161;
}
.poll-answer-header {
display: flex;
justify-content: space-between;
}
.poll-answer-vote-name {
flex-shrink: 1;
overflow-wrap: anywhere
}
.poll-answer-vote-count-container{
display: flex;
}
.poll-answer-vote-count {
margin-left: 10px;
white-space: nowrap;
flex: 1;
text-align: right;
}
.poll-answer-short-results{
display: flex;
min-width: 10em;
justify-content: space-between;
align-items: center;
}
.poll-bar-container, .poll-bar {
border-radius: 3px;
height: 6px;
}
.poll-bar-container {
background-color: #616161;
max-width: 160px;
margin-top: 3px;
flex: 1;
}
.poll-bar {
background-color: #246FE5;
}
.poll-message-footer {
display: flex;
justify-content: space-between;
align-items: center;
font-size: 12px;
margin-top: 5px;
}
.poll-notice {
font-weight: 100;
margin-right: 10px;
}
.poll-show-details {
background-color: transparent;
border: none;
&:hover {
text-decoration: underline;
}
}
.poll-result-links {
display: flex;
flex-direction: row;
justify-content: space-between;
a.poll-detail-link, a.poll-change-vote-link {
color: #669AEC;
cursor: pointer;
font-weight: 600;
text-decoration: none;
&:hover {
color: #669AEC;
}
&:visited {
color: #669AEC;
}
}
}
.polls-pane-content {
height: 100%;
position: relative;
}
.pane-content{
display: flex;
flex-direction: column;
height: 100%;
justify-content: center;
align-items: center;
width: 100%;
}
.empty-pane-icon {
width: 50%;
padding: 24px;
}
.empty-pane-icon svg {
fill: #3D3D3D;
width: 100%;
height: auto;
}
.empty-pane-message {
color: #fff;
padding: 0 16px;
text-align: center;
}
.poll-results, .poll-answer {
background: #292929;
border-radius: 8px;
border: 1px solid #666666;
margin: 16px;
padding: 16px;
word-break: break-word;
}
.poll-results {
color: #fff;
}
.poll-answer {
h1, strong ,span {
color: #fff;
}
button > span {
color: inherit;
}
}
.poll-create-label {
color: #C2C2C2;
display: flex;
font-weight: 400;
margin-bottom: 4;
}
.expandable-input{
line-height: 18px;
resize: none;
width: 100%;
height: 40px;
box-sizing: border-box;
overflow: hidden;
border: 1px solid #666666;
background-color: #141414;
color: #FFF;
border-radius: 6px;
padding: 10px 16px;
}
#polls-panel {
height: calc(100% - 102px);
}
.poll-container {
font-size: 14px;
font-weight: 600;
height: calc(100% - 88px);
line-height: 20px;
overflow-y: auto;
position: relative;
& > * + *:not(.ignore-child) {
margin-top: 16px;
}
@media (max-width: 580px) {
height: calc(100% - 102px);
}
}
.poll-create-header {
color: #fff;
font-size: 20px;
line-height: 28px;
margin: 20px 16px;
font-weight: 600;
}
.poll-create-container {
padding: 8px 0;
}
.poll-create-footer {
background-color: #141414;
bottom: 0;
position: absolute;
width: calc(100% - 32px);
}
.poll-footer {
display: flex;
justify-content: space-between;
padding: 0 16px 16px 16px;
}
.poll-answer-footer {
padding: 8px 0 0 0;
.polls-panel {
height: calc(100% - 119px);
}

View File

@@ -1,47 +1,35 @@
/**
* Mousemove padding styles are used to add invisible elements to the popover
* to allow mouse movement from the popover trigger to the popover itself
* without triggering a mouseleave event.
*/
%vertical-popover-padding {
height: 100%;
position: absolute;
top: 0;
width: 20px;
padding: 20px 0;
top: -20px;
}
%horizontal-popover-padding {
height: 25px;
position: absolute;
right: 0;
width: 100%;
padding: 0 35px;
left: -35px;
}
.popover-mousemove-padding-left {
@extend %vertical-popover-padding;
left: -35px;
}
.popover-mousemove-padding-right {
@extend %vertical-popover-padding;
right: -35px;
}
.popover-mousemove-padding-bottom {
@extend %horizontal-popover-padding;
bottom: -40px;
}
.popover-mousemove-padding-top {
@extend %horizontal-popover-padding;
top: -40px;
}
.popover {
margin: -16px -24px;
z-index: $popoverZ;
.popover-content {
position: relative;
}
&.hover {
margin: -16px -24px;
.popover-content {
margin: 16px 24px;
&.top {
bottom: 8px;
}
&.bottom {
top: 4px;
}
&.left {
right: 4px;
}
&.right {
left: 4px;
}
}
}
}
.excalidraw .popover {
margin: 0;
}

View File

@@ -5,15 +5,15 @@
.popupmenu__contents {
.popupmenu__volume-slider {
&::-webkit-slider-runnable-track {
background-color: $popupSliderColor;
background-color: #246FE5;
}
&::-moz-range-track {
background-color: $popupSliderColor;
background-color: #246FE5;
}
&::-ms-fill-lower {
background-color: $popupSliderColor;
background-color: #246FE5;
}
}
}

View File

@@ -4,7 +4,7 @@
width: 280px;
background: $menuBG;
box-shadow: 0px 3px 16px rgba(0, 0, 0, 0.6), 0px 0px 4px 1px rgba(0, 0, 0, 0.25);
border-radius: 3px;
border-radius: 6px;
padding: 16px;
&.with-gif {
@@ -104,10 +104,6 @@
}
}
.reactions-menu-container {
padding-bottom: 6px;
}
.reactions-animations-container {
position: absolute;
width: 20%;

View File

@@ -18,6 +18,7 @@
align-items: center;
font-size: 14px;
margin-left: 16px;
max-width: 70%;
}
&.space-top {
@@ -82,7 +83,7 @@
background-color: #FFFFFF;
border-radius: 4px;
height: 40px;
width: 56px;
width: 40px;
}
.jitsi-content-recording-icon-container-without-switch {
@@ -196,14 +197,6 @@
padding-bottom: 10px;
}
.helper-link {
cursor: pointer;
font-weight: bold;
display: inline-block;
flex-shrink: 0;
margin-left: auto;
}
.warning-text {
color:#FFD740;
font-size: 12px;

View File

@@ -3,38 +3,37 @@
display: block;
#enter_room {
position: relative;
height: 42px;
.welcome-page-button {
font-size: 16px;
left: 0;
position: absolute;
top: 68px;
text-align: center;
width: 100%;
font-size: 16px;
left: 0;
text-align: center;
width: 100%;
}
}
.header {
background-color: #002637;
.insecure-room-name-warning {
width: 100%;
}
#enter_room {
width: 100%;
.join-meeting-container {
padding: 0;
flex-direction: column;
background: transparent;
}
.enter-room-input-container {
padding-right: 0;
}
.warning-without-link,
.warning-with-link {
top: 120px;
margin-bottom: 10px;
}
}
}
.welcome-tabs {
display: none;
}
.header-text-title {
text-align: center;
}
@@ -56,13 +55,6 @@
.welcome-footer-row-block {
display: block;
}
.welcome-badge {
margin-right: 16px;
}
.welcome-footer {
display: none;
}
}
}

View File

@@ -25,29 +25,29 @@
box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25), 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
border-radius: 3px;
cursor: pointer;
padding: 4px;
padding: 1px;
position: absolute;
right: -4px;
top: -3px;
&:hover {
&:hover {
background: #F2F3F4;
box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25), 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
&> svg {
fill: #000;
& svg {
fill: #040404;
}
&.settings-button-small-icon--disabled {
background: #36383C;
&> svg {
fill: #929292;
}
& svg {
fill: #929292;
}
}
}
&> svg {
& svg {
fill: #fff;
}
@@ -55,7 +55,7 @@
background-color: #36383c;
cursor: default;
&> svg {
& svg {
fill: #929292;
}
}

View File

@@ -12,7 +12,6 @@
&#autoHide.with-always-on {
overflow: hidden;
animation: hideSubject forwards .6s ease-out;
margin-left: 4px;
& > .subject-info-container {
justify-content: flex-start;
@@ -43,42 +42,6 @@
height: 28px;
}
.subject-text {
background: rgba(0, 0, 0, 0.6);
border-radius: 3px 0px 0px 3px;
box-sizing: border-box;
font-size: 14px;
line-height: 28px;
padding: 0 16px;
height: 28px;
max-width: 324px;
@media (max-width: 300px) {
display: none;
}
&--content {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
.subject-timer {
background: rgba(0, 0, 0, 0.8);
border-radius: 0px 3px 3px 0px;
box-sizing: border-box;
font-size: 12px;
line-height: 28px;
min-width: 34px;
padding: 0 8px;
height: 28px;
@media (max-width: 300px) {
display: none;
}
}
.details-container {
width: 100%;
display: flex;

View File

@@ -120,12 +120,34 @@
margin: 8px 0;
}
.hangup-button {
background-color: $hangupColor;
div.hangup-button {
background-color: #CB2233;
@media (hover: hover) and (pointer: fine) {
&:hover {
background-color: $hangupHoverColor;
background-color: #E04757;
}
&:active {
background-color: #A21B29;
}
}
svg {
fill: #fff;
}
}
div.hangup-menu-button {
background-color: #CB2233;
@media (hover: hover) and (pointer: fine) {
&:hover {
background-color: #E04757;
}
&:active {
background-color: #A21B29;
}
}

View File

@@ -4,9 +4,6 @@
* Style variables
*/
$baseFontFamily: -apple-system, BlinkMacSystemFont, 'open_sanslight', 'Helvetica Neue', Helvetica, Arial, sans-serif;
$hangupColor:#DD3849;
$hangupHoverColor: #F25363;
$hangupFontSize: 2em;
/**
* Size variables.
@@ -43,7 +40,6 @@ $newToolbarSizeMobile: 60px;
$newToolbarSizeWithPadding: calc(#{$newToolbarSize} + 24px);
$toolbarTitleFontSize: 19px;
$overflowMenuItemColor: #fff;
$overflowMenuItemBackground: #36383C;
/**
@@ -79,14 +75,13 @@ $modalTextColor: #333;
$chatActionsSeparatorColor: rgb(173, 105, 112);
$chatBackgroundColor: #131519;
$chatInputSeparatorColor: #A4B8D1;
$chatLobbyMessageBackgroundColor: #6A50D3;
$chatLobbyActionsSeparatorColor: #6A50D3;
$chatLocalMessageBackgroundColor: #484A4F;
$chatPrivateMessageBackgroundColor: rgb(153, 69, 77);
$chatRemoteMessageBackgroundColor: #242528;
$sidebarWidth: 315px;
/**
/**
* Misc.
*/
$borderRadius: 4px;
@@ -101,8 +96,6 @@ $zindex0: 0;
$zindex1: 1;
$zindex2: 2;
$zindex3: 3;
$toolbarBackgroundZ: 4;
$labelsZ: 5;
$subtitlesZ: 7;
$popoverZ: 8;
$reloadZ: 20;
@@ -111,10 +104,7 @@ $ringingZ: 300;
$sideToolbarContainerZ: 300;
$toolbarZ: 250;
$drawerZ: 351;
$tooltipsZ: 401;
$dropdownMaskZ: 900;
$dropdownZ: 901;
$centeredVideoLabelZ: 1010;
$overlayZ: 1016;
// Place filmstrip videos over toolbar in order
// to make connection info visible.
@@ -171,12 +161,13 @@ $welcomePageHeaderBackground: linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0,
$welcomePageHeaderBackgroundPosition: center;
$welcomePageHeaderBackgroundRepeat: none;
$welcomePageHeaderBackgroundSize: cover;
$welcomePageHeaderPaddingBottom: 0px;
$welcomePageHeaderPaddingBottom: 15px;
$welcomePageHeaderTitleMaxWidth: initial;
$welcomePageHeaderTextAlign: center;
$welcomePageHeaderContainerMarginTop: 104px;
$welcomePageHeaderContainerDisplay: flex;
$welcomePageHeaderContainerMargin: 104px 32px 0 32px;
$welcomePageHeaderContainerMargin: $welcomePageHeaderContainerMarginTop auto 0;
$welcomePageHeaderTextTitleMarginBottom: 0;
$welcomePageHeaderTextTitleFontSize: 42px;
@@ -210,11 +201,6 @@ $deepLinkingDialInConferenceIdPadding: inherit;
$deepLinkingDialInConferenceIdBackgroundColor: inherit;
$deepLinkingDialInConferenceIdBorderRadius: inherit;
$deepLinkingDialInConferenceNameFontSize: inherit;
$deepLinkingDialInConferenceNameLineHeight: inherit;
$deepLinkingDialInConferenceNameMarginBottom: none;
$deepLinkingDialInConferenceNameFontWeight: inherit;
$deepLinkingDialInConferenceDescriptionFontSize: 0.8em;
$deepLinkingDialInConferenceDescriptionLineHeight: inherit;
$deepLinkingDialInConferenceDescriptionMarginBottom: none;
@@ -248,7 +234,6 @@ $chromeExtensionBannerRightInMeeeting: 10px;
/**
* media type thresholds
*/
$smallScreen: 700px;
$verySmallScreen: 500px;
/**

View File

@@ -1,86 +0,0 @@
.video-preview {
background: none;
display: inline-block;
&-container {
max-height: 344px;
background: $menuBG;
border-radius: 3px;
overflow: auto;
padding: 8px;
}
&-entry {
cursor: pointer;
height: 168px;
margin-bottom: 8px;
position: relative;
width: 284px;
&:last-child {
margin-bottom: 0;
}
&--selected {
border: 3px solid #31B76A;
border-radius: 3px;
cursor: default;
height: 162px;
width: 278px;
}
}
&-video {
border-radius: 3px;
height: 100%;
object-fit: cover;
width: 100%;
}
&-overlay {
background: rgba(42, 58, 75, 0.6);
height: 100%;
position: absolute;
width: 100%;
z-index: 1;
}
&-error {
align-items: center;
display: flex;
height: 100%;
justify-content: center;
position: absolute;
width: 100%;
}
&-label {
bottom: 8px;
color: #fff;
position: absolute;
width: 100%;
z-index: 2;
&-container {
margin: 0 16px;
}
&-text {
background-color: #131519;
border-radius: 3px;
padding: 2px 8px;
font-size: 13px;
line-height: 20px;
margin: 0 auto;
max-width: calc(100% - 16px);
overflow: hidden;
text-overflow: ellipsis;
width: fit-content;
white-space: nowrap;
}
}
// Override @atlaskit/InlineDialog container which is made with styled components
& > div:nth-child(2) {
padding: 0;
}
}

View File

@@ -76,9 +76,42 @@
}
}
.animatedFadeIn {
opacity: 0;
animation: fadeInAnimation 0.3s ease forwards;
}
@keyframes fadeInAnimation {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.animatedFadeOut {
opacity: 1;
animation: fadeOutAnimation 0.3s ease forwards;
}
@keyframes fadeOutAnimation {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
#largeVideoContainer {
height: 100%;
width: 100%;
position: absolute;
top: 0;
left: 0;
margin: 0 !important;
}
#largeVideoWrapper {

View File

@@ -20,7 +20,6 @@ body.welcome-page {
background-size: $welcomePageHeaderBackgroundSize;
padding-bottom: $welcomePageHeaderPaddingBottom;
background-color: #131519;
height: 400px;
overflow: hidden;
position: relative;
@@ -29,6 +28,16 @@ body.welcome-page {
flex-direction: column;
margin: $welcomePageHeaderContainerMargin;
z-index: $zindex2;
align-items: center;
position: relative;
max-width: 688px;
}
.header-watermark-container {
position: absolute;
width: 100%;
height: 100%;
margin-top: calc(20px - #{$welcomePageHeaderContainerMarginTop});
}
.header-text-title {
@@ -52,26 +61,58 @@ body.welcome-page {
}
.insecure-room-name-warning {
align-items: center;
color: $defaultWarningColor;
font-weight: 600;
display: flex;
flex-direction: row;
margin-top: 15px;
max-width: 480px;
width: $welcomePageEnterRoomWidth;
.jitsi-icon {
margin-right: 15px;
svg {
fill: $defaultWarningColor;
& > *:first-child {
fill: none !important;
}
}
}
}
::placeholder {
color: #253858;
}
#enter_room {
display: $welcomePageEnterRoomDisplay;
align-items: center;
max-width: 480px;
width: $welcomePageEnterRoomWidth;
z-index: $zindex2;
background-color: #fff;
padding: $welcomePageEnterRoomPadding;
border-radius: 4px;
margin: $welcomePageEnterRoomMargin;
height: fit-content;
.enter-room-input-container {
.join-meeting-container {
margin: $welcomePageEnterRoomMargin;
padding: $welcomePageEnterRoomPadding;
border-radius: 4px;
background-color: #fff;
display: flex;
width: 100%;
text-align: left;
color: #253858;
}
.enter-room-input-container {
flex-grow: 1;
height: fit-content;
padding-right: 4px;
position: relative;
.enter-room-input {
border-radius: 4px;
border: 0;
background: #fff;
display: inline-block;
@@ -80,59 +121,23 @@ body.welcome-page {
font-size: 14px;
padding-left: 10px;
&:focus {
&.focus-visible {
outline: auto 2px #005fcc;
}
}
.insecure-room-name-warning {
align-items: center;
color: $defaultWarningColor;
display: flex;
flex-direction: row;
margin-top: 15px;
.jitsi-icon {
margin-right: 15px;
svg {
fill: $defaultWarningColor
}
}
}
::placeholder {
color: #253858;
}
}
.warning-without-link {
position: absolute;
top: 44px;
left: -10px;
}
.warning-with-link {
position: absolute;
top: 84px;
}
}
#moderated-meetings {
max-width: calc(100% - 40px);
padding: 16px 0 39px 0;
padding: 16px 0 0;
width: $welcomePageEnterRoomWidth;
text-align: center;
p {
color: $welcomePageDescriptionColor;
float: left;
text-align: $welcomePageHeaderTextAlign;
a {
color: inherit;
font-weight: 600;
}
a {
color: inherit;
font-weight: 600;
}
}
}
@@ -162,7 +167,7 @@ body.welcome-page {
margin: 4px;
display: $welcomePageTabButtonsDisplay;
.tab {
[role="tab"] {
background-color: #c7ddff;
border-radius: 7px;
cursor: pointer;
@@ -171,8 +176,10 @@ body.welcome-page {
margin: 2px;
padding: 7px 0;
text-align: center;
color: inherit;
border: 0;
&.selected {
&[aria-selected="true"] {
background-color: #FFF;
}
}
@@ -200,8 +207,8 @@ body.welcome-page {
color: $welcomePageDescriptionColor;
padding: 4px;
position: absolute;
top: 32px;
right: 32px;
top: calc(35px - #{$welcomePageHeaderContainerMarginTop});
right: 0;
z-index: $zindex2;
* {
@@ -224,6 +231,11 @@ body.welcome-page {
width: $welcomePageWatermarkWidth;
height: $welcomePageWatermarkHeight;
}
.watermark.leftwatermarknomargin {
width: $welcomePageWatermarkWidth;
height: $welcomePageWatermarkHeight;
}
}
&.without-content {
@@ -242,10 +254,17 @@ body.welcome-page {
padding-top: 40px;
}
.welcome-card-row {
.welcome-card-column {
display: flex;
justify-content: center;
padding: 0 32px;
flex-direction: column;
align-items: center;
max-width: 688px;
margin: auto;
> div {
margin-bottom: 16px;
}
}
.welcome-card-text {
@@ -253,7 +272,7 @@ body.welcome-page {
}
.welcome-card {
width: 49%;
width: 100%;
border-radius: 8px;
&--dark {
@@ -268,10 +287,6 @@ body.welcome-page {
&--grey {
background: #F2F3F4;
}
&--shadow {
box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.15);
}
}
.welcome-footer {

View File

@@ -1,101 +0,0 @@
.button-control {
box-sizing: border-box;
display: inline-block;
border: 1px solid $buttonBorder;
vertical-align: baseline;
height: 30px;
min-width: 60px;
padding: 4px 10px;
margin: 0;
line-height: 1.5em;
outline: none;
background-color: transparent;
float: right;
font-size: 14px;
margin-left: 10px;
color: $buttonColor;
font-weight: $buttonFontWeight;
@include transition(background-color .1s ease-out);
&[disabled] {
color: #666;
cursor: default;
}
&_full-width {
margin: 0;
width: 100%;
}
&:hover {
border: 1px solid $buttonHoverBorder;
background-color: $buttonHoverBackground;
@include transition(background-color .1s ease-in);
}
&:active {
@include box-shadow(0, 0, 1px, $buttonShadowColor, true);
}
&_light {
color: $defaultDarkColor;
background-color: $buttonLightBackground;
border: 1px solid $buttonLightBorder;
&:hover {
border: 1px solid $buttonLightHoverBorder;
background-color: $buttonLightHoverBackground;
}
}
&_link {
color: $buttonLinkColor;
background-color: $buttonLinkBackground;
&:hover {
background-color: $buttonLinkBackground;
}
}
&_overlay {
color: $primaryButtonColor;
background-color: $overlayButtonBg;
border-radius: 2px;
border: none;
&:hover {
background-color: $primaryButtonBackground;
border: none;
}
}
&_primary {
background-color: $primaryButtonBackground;
border: 1px solid $primaryButtonBackground;
color: $primaryButtonColor !important;
font-weight: $primaryButtonFontWeight;
&:hover {
border: 1px solid $primaryButtonHoverBackground;
background-color: $primaryButtonHoverBackground;
}
&[disabled] {
color: $primaryButtonColor;
}
}
&_close {
color: $defaultFontColor;
}
&_submit {
color: $linkFontColor;
&:hover {
color: $linkHoverFontColor;
}
}
&_center {
float: none !important;
}
}

View File

@@ -1,49 +0,0 @@
.form-control {
padding: $formPadding 0;
&:first-child {
padding-top: 0;
}
&:last-child {
padding-bottom: 0;
}
&__text {
margin: 8px 0;
font-size: 1em
}
&__label {
font-size: 1em;
font-weight: $labelFontWeight;
}
&__em {
color: $inputControlEmColor;
}
&__container {
position: relative;
width: 100%;
margin-top: 5px;
margin-bottom: 5px;
@include flex();
.button-control {
margin: 1px 0 1px 10px;
}
}
&__right {
position: absolute;
right: 0;
}
}
/**
* Set a specific color for read only style.
*/
input:read-only {
color: $readOnlyInputColor;
}

View File

@@ -1,29 +0,0 @@
.input-control {
@include transition(all .2s ease-in);
display: inline-block;
width: 100%;
padding: 5px 7px;
border-radius: $borderRadius;
line-height: 32px;
height: 32px;
text-align: left;
margin-bottom: 8px;
&:last-child {
margin-bottom: inherit;
}
&::selection {
background-color: $defaultDarkSelectionColor;
}
&.error {
color: $errorColor;
border-color: $errorColor;
}
}
@include placeholder {
color: $placeHolderColor;
}

View File

@@ -1,20 +0,0 @@
.link {
cursor: pointer;
color: $linkFontColor;
@include transition(color .1s ease-out);
&:hover {
color: $linkHoverFontColor;
text-decoration: underline;
@include transition(color .1s ease-in);
}
}
/**
* Helper links are links that are meant to open a documentation page or more
* detailed info.
*/
.helper-link {
@extend .link;
font-size: 12px;
}

View File

@@ -68,6 +68,12 @@
}
.buttons {
margin-top: 16px;
display: flex;
align-items: center;
&>button:first-child {
margin-right: 8px;
}
}
}
}

View File

@@ -67,6 +67,13 @@
font-size: 1em;
}
.dial-in-conference-id {
text-align: center;
min-width: 200px;
margin-top: 40px;
}
.dial-in-conference-id {
margin: $deepLinkingDialInConferenceIdMargin;
padding: $deepLinkingDialInConferenceIdPadding;
@@ -74,24 +81,12 @@
border-radius: $deepLinkingDialInConferenceIdBorderRadius;
}
.dial-in-conference-name {
font-size: $deepLinkingDialInConferenceNameFontSize;
line-height: $deepLinkingDialInConferenceNameLineHeight;
margin-bottom: $deepLinkingDialInConferenceNameMarginBottom;
font-weight: $deepLinkingDialInConferenceNameFontWeight;
}
.dial-in-conference-description {
font-size: $deepLinkingDialInConferenceDescriptionFontSize;
line-height: $deepLinkingDialInConferenceDescriptionLineHeight;
margin-bottom: $deepLinkingDialInConferenceDescriptionMarginBottom;
}
.dial-in-conference-pin {
font-size: $deepLinkingDialInConferencePinFontSize;
line-height: $deepLinkingDialInConferencePinLineHeight;
}
.toll-free-list {
min-width: 80px;
}

View File

@@ -3,6 +3,7 @@
* tiled thumbnail experience.
*/
.tile-view,
.whiteboard-container,
.stage-filmstrip {
/**
* Let the avatar grow with the tile.

View File

@@ -25,7 +25,6 @@ $flagsImagePath: "../images/";
/* Modules BEGIN */
@import 'reset';
@import 'atlaskit_overrides';
@import 'base';
@import 'utils';
@import 'overlay/overlay';
@@ -33,10 +32,7 @@ $flagsImagePath: "../images/";
@import 'reload_overlay/reload_overlay';
@import 'mini_toolbox';
@import 'modals/desktop-picker/desktop-picker';
@import 'modals/device-selection/device-selection';
@import 'modals/dialog';
@import 'modals/embed-meeting/embed-meeting';
@import 'modals/feedback/feedback';
@import 'modals/invite/info';
@import 'modals/screen-share/share-audio';
@import 'modals/screen-share/share-screen-warning';
@@ -53,10 +49,6 @@ $flagsImagePath: "../images/";
@import 'welcome_page_settings_toolbar';
@import 'toolbars';
@import 'redirect_page';
@import 'components/form-control';
@import 'components/link';
@import 'components/button-control';
@import 'components/input-control';
@import 'components/input-slider';
@import '404';
@import 'policy';
@@ -68,7 +60,6 @@ $flagsImagePath: "../images/";
@import 'filmstrip/vertical_filmstrip';
@import 'filmstrip/vertical_filmstrip_overrides';
@import 'unsupported-browser/main';
@import 'modals/invite/add-people';
@import 'deep-linking/main';
@import 'transcription-subtitles';
@import '_meetings_list.scss';
@@ -79,10 +70,7 @@ $flagsImagePath: "../images/";
@import 'chrome-extension-banner';
@import 'settings-button';
@import 'meter';
@import 'audio-preview';
@import 'video-preview';
@import 'premeeting/main';
@import 'country-picker';
@import 'modals/invite/invite_more';
@import 'modals/security/security';
@import 'e2ee';
@@ -92,6 +80,5 @@ $flagsImagePath: "../images/";
@import 'reactions-menu';
@import 'plan-limit';
@import 'polls';
@import 'notifications';
/* Modules END */

View File

@@ -12,24 +12,6 @@
}
}
/**
* Styling inline dialog errors.
*/
.inline-dialog-error {
margin-top: 16px;
&-text {
color: $dialogErrorText;
margin-bottom: 8px;
text-align: center;
}
&-button {
display: block;
margin: 16px auto 0 auto;
}
}
/**
* Styling shared video dialog errors.
*/
@@ -38,3 +20,7 @@
margin-top: 2px;
display: block;
}
.dialog-bottom-margin {
margin-bottom: 5px;
}

View File

@@ -63,3 +63,8 @@
.desktop-source-preview-image-container {
padding: 10px;
}
.desktop-picker-tabs-container {
width: 65%;
margin-top: 3px;
}

View File

@@ -1,148 +0,0 @@
.device-selection {
.device-selectors {
font-size: 14px;
> div {
display: block;
margin-bottom: 4px;
}
.device-selector-icon {
align-self: center;
color: inherit;
font-size: 20px;
margin-left: 3px;
}
.device-selector-label {
margin-bottom: 1px;
}
/* device-selector-trigger stylings attempt to mimic AtlasKit button */
.device-selector-trigger {
background-color: #0E1624;
border: 1px solid #455166;
border-radius: 5px;
display: flex;
height: 2.3em;
justify-content: space-between;
line-height: 2.3em;
overflow: hidden;
padding: 0 8px;
}
.device-selector-trigger-disabled {
.device-selector-trigger {
color: #a5adba;
cursor: default;
}
}
.device-selector-trigger-text {
overflow: hidden;
text-align: center;
text-overflow: ellipsis;
white-space: nowrap;
width: 100%;
}
}
.device-selection-column {
box-sizing: border-box;
display: inline-block;
vertical-align: top;
&.column-selectors {
margin-left: 15px;
width: 45%;
}
&.column-video {
width: 50%;
}
}
.device-selection-video-container {
border-radius: 3px;
margin-bottom: 5px;
.video-input-preview {
margin-top: 2px;
position: relative;
> video {
border-radius: 3px;
}
.video-input-preview-error {
color: $participantNameColor;
display: none;
left: 0;
position: absolute;
right: 0;
text-align: center;
top: 50%;
}
&.video-preview-has-error {
background: black;
.video-input-preview-error {
display: block;
}
}
.video-input-preview-display {
height: auto;
overflow: hidden;
width: 100%;
}
}
}
.audio-output-preview {
font-size: 14px;
a {
color: #6FB1EA;
cursor: pointer;
text-decoration: none;
}
a:hover {
color: #B3D4FF;
}
}
.audio-input-preview {
background: #1B2638;
border-radius: 5px;
height: 8px;
.audio-input-preview-level {
background: #75B1FF;
border-radius: 5px;
height: 100%;
-webkit-transition: width .1s ease-in-out;
-moz-transition: width .1s ease-in-out;
-o-transition: width .1s ease-in-out;
transition: width .1s ease-in-out;
}
}
}
.device-selection.video-hidden {
display: flex;
flex-direction: column;
width: 100%;
.column-selectors {
width: 100%;
margin-left: 0;
}
.column-video {
order: 1;
width: 100%;
margin-top: 8px;
}
}

View File

@@ -1,43 +0,0 @@
.embed-meeting {
&-dialog {
display: flex;
flex-direction: column;
}
&-copy {
color: white;
font-size: 15px;
margin-left: auto;
margin-top: 16px;
width: auto;
}
&-code {
background: transparent;
border: 1px solid #A4B8D1;
color: white;
font-size: 15px;
height: 165px;
line-height: 24px;
padding: 8px;
width: 100%;
resize: vertical;
}
&-trigger {
display: flex;
align-items: center;
padding: 8px 8px 8px 16px;
margin-top: 24px;
width: calc(100% - 24px);
height: 24px;
background: #2A3A4B;
border: 1px solid #5E6D7A;
border-radius: 4px;
cursor: pointer;
.jitsi-icon {
margin-right: 20px;
}
}
}

View File

@@ -1,102 +0,0 @@
@-webkit-keyframes shake-rotate {
0% {
-webkit-transform:scale(1) rotate(0deg);
transform:scale(1) rotate(0deg)
}
50% {
-webkit-transform:scale(.8) rotate(-5deg);
transform:scale(.8) rotate(-5deg)
}
to {
-webkit-transform:scale(1) rotate(3deg);
transform:scale(1) rotate(3deg)
}
}
@keyframes shake-rotate {
0% {
-webkit-transform:scale(1) rotate(0deg);
transform:scale(1) rotate(0deg)
}
50% {
-webkit-transform:scale(.8) rotate(-5deg);
transform:scale(.8) rotate(-5deg)
}
to {
-webkit-transform:scale(1) rotate(3deg);
transform:scale(1) rotate(3deg)
}
}
.shake-rotate {
display: inline-block;
-webkit-animation-duration: .4s;
animation-duration: .4s;
-webkit-animation-iteration-count: infinite;
animation-iteration-count: infinite;
-webkit-animation-name: shake-rotate;
animation-name: shake-rotate;
-webkit-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out
}
.feedback-dialog {
.details {
textarea {
min-height: 100px;
}
}
.input-control {
background-color: $feedbackInputBg;
color: $feedbackInputTextColor;
&::-webkit-input-placeholder {
color: $feedbackInputPlaceholderColor;
}
&::-moz-placeholder { /* Firefox 19+ */
color: $feedbackInputPlaceholderColor;
}
&:-ms-input-placeholder {
color: $feedbackInputPlaceholderColor;
}
}
.rating {
line-height: 1.2;
margin-top: 10px;
text-align: center;
.star-label {
font-size: 14px;
height: 16px;
}
.star-btn {
color: inherit;
cursor: pointer;
display: inline-block;
font-size: 34px;
outline: none;
position: relative;
text-decoration: none;
@include transition(all .2s ease);
&.active,
&:hover,
&.starHover {
color: #36B37E;
};
}
.star-btn:focus,
.star-btn:active {
outline: 1px solid #B8C7E0;
}
}
}

View File

@@ -41,10 +41,3 @@
}
}
}
/**
* Styles errors in the MultiSelectAutocomplete.
*/
.autocomplete-error {
min-width: 260px;
}

View File

@@ -38,19 +38,6 @@
color: #fff;
}
.info-password-input {
width: 100%;
background-color: #0E1624;
border-radius: 3px;
border: 2px solid #202B3D;
color: inherit;
padding-left: 0;
}
.info-password-input:focus ,
.info-password-input:active {
border: 2px solid #B8C7E0;
}
.info-password-local {
user-select: text;
}
@@ -63,17 +50,19 @@
}
.dial-in-numbers-list {
max-width: 334px;
width: 100%;
margin-top: 20px;
font-size: 12px;
line-height: 24px;
border-collapse: collapse;
thead {
text-align: left;
* {
user-select: text;
}
tr {
border-bottom: 1px solid #d1dbe8;
thead {
text-align: left;
}
.flag-cell {
@@ -104,6 +93,7 @@
font-weight: bold;
list-style: none;
vertical-align: top;
text-align: right;
}
li.toll-free:empty:before {
@@ -132,11 +122,6 @@
margin-top: 40px;
}
.dial-in-conference-name,
.dial-in-conference-pin {
font-size: 18px;
}
.dial-in-conference-description {
margin: 12px;
}

View File

@@ -1,57 +1,4 @@
.invite-more {
&-container {
margin-bottom: 8px;
transition: margin-bottom 0.3s;
&.elevated {
margin-bottom: 36px;
}
}
&-content {
display: flex;
flex-direction: column;
align-items: center;
padding: 16px;
background: rgba(0, 0, 0, 0.7);
border-radius: 8px;
color: #fff;
font-size: 14px;
line-height: 24px;
font-weight: 600;
}
&-header {
max-width: 100%;
margin-bottom: 16px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
&-button {
display: flex;
max-width: 100%;
height: 40px;
box-sizing: border-box;
padding: 8px 16px;
background: #0376DA;
border-radius: 3px;
cursor: pointer;
@media (hover: hover) and (pointer: fine) {
&:hover {
background: #278ADF;
}
}
&-text {
margin-left: 8px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
}
&-dialog {
color: #fff;
font-size: 15px;
@@ -65,109 +12,6 @@
background: #5E6D7A;
}
&.email-container {
display: flex;
justify-content: space-between;
align-items: center;
padding: 8px 8px 8px 16px;
margin-top: 24px;
width: calc(100% - 26px);
height: 22px;
background: #2A3A4B;
border: 1px solid #5E6D7A;
border-radius: 3px;
cursor: pointer;
&.active {
border-radius: 3px 3px 0 0;
}
}
&.icon-container {
display: none;
&.active {
display: flex;
width: calc(100% - 26px);
padding: 8px 8px 8px 16px;
background: #2A3A4B;
border: 1px solid #5E6D7A;
border-top: none;
border-radius: 0 0 3px 3px;
.copy-invite-icon, .provider-icon {
align-items: center;
cursor: pointer;
display: flex;
height: 40px;
place-content: center;
width: 40px;
}
&:hover > div:hover {
background-color: rgba(255, 255, 255, 0.2);
border-radius: 4px;
}
& > :not(:last-child) {
margin-right: 16px;
}
.copy-invite-icon > div > svg > path {
fill: #A4B8D1;
}
}
}
&.dial-in-display {
.info-label {
color: #A4B8D1;
}
.dial-in-copy {
display: inline-block;
vertical-align: middle;
cursor: pointer;
height: 24px;
}
}
&.invite-buttons {
width: 100%;
text-align: right;
margin-top: 8px;
& > a {
display: inline-block;
height: 24px;
min-width: 48px;
border-radius: 3px;
text-align: center;
text-decoration: none;
cursor: pointer;
}
&-cancel {
margin-right: 16px;
padding: 7px 15px;
background: #2A3A4B;
border: 1px solid #5E6D7A;
}
&-add {
padding: 8px 16px;
background: #0376DA;
}
&.disabled {
& > a {
pointer-events: none;
}
}
}
&.stream {
display: flex;
justify-content: space-between;
@@ -208,14 +52,3 @@
}
}
}
.mobile-browser {
.invite-more-content {
font-size: 16px;
}
.invite-more-button {
height: 48px;
padding: 12px 16px;
}
}

View File

@@ -3,9 +3,7 @@
width: 100%;
height: 90%;
object-fit: contain;
}
input[type="checkbox"] + svg + span {
color: #9FB0CC;
margin-bottom: 10px;
}
.separator-line {

View File

@@ -13,12 +13,14 @@
}
.password {
align-items: center;
align-items: flex-start;
display: flex;
justify-content: space-between;
justify-content: flex-start;
margin-top: 15px;
flex-direction: column;
&-actions {
margin-top: 10px;
a {
cursor: pointer;
text-decoration: none;
@@ -26,8 +28,8 @@
color: #6FB1EA;
}
& > :first-child:not(:last-child) {
margin-right: 24px;
& > :not(:last-child) {
margin-right: 24px;
}
}
}

View File

@@ -204,3 +204,30 @@
}
}
}
.lobby-button-margin {
margin-bottom: 16px;
}
.lobby-prejoin-error {
background-color: #E04757;
border-radius: 6px;
box-sizing: border-box;
color: white;
font-size: 12px;
line-height: 16px;
margin-bottom: 16px;
margin-top: -8px;
padding: 4px;
text-align: center;
width: 100%;
}
.lobby-prejoin-input {
margin-bottom: 16px;
width: 100%;
& input {
text-align: center;
}
}

View File

@@ -1,4 +1,3 @@
@import 'lobby';
@import 'premeeting-screens';
@import 'prejoin';
@import 'prejoin-third-party';

View File

@@ -2,7 +2,9 @@ $sidePanelWidth: 300px;
.prejoin-third-party {
flex-direction: column-reverse;
z-index: auto;
align-items: center;
.content {
height: auto;
margin: 0 auto;

View File

@@ -1,60 +0,0 @@
.prejoin {
&-input-area {
width: 100%;
}
&-avatar {
margin: 8px auto 16px;
&-name {
color: white;
font-size: 16px;
font-weight: 600;
line-height: 26px;
margin-bottom: 32px;
text-align: center;
}
&-container {
align-items: center;
display: flex;
flex-direction: column;
}
}
&-error {
background-color: #E04757;
border-radius: 6px;
box-sizing: border-box;
color: white;
font-size: 12px;
line-height: 16px;
margin-bottom: 16px;
margin-top: -8px;
padding: 4px;
text-align: center;
width: 100%;
}
}
.prejoin-preview {
&-dropdown-btns {
padding: 8px 0;
}
&-dropdown-container {
position: relative;
width: 100%;
/**
* Override default InlineDialog behaviour, since it does not play nicely with relative widths
*/
& > div:nth-child(2) {
background: #fff;
padding: 0;
position: absolute !important;
width: 100%;
}
}
}

View File

@@ -1,14 +1,4 @@
.premeeting-screen {
background: #292929;
bottom: 0;
display: flex;
font-size: 1.3em;
left: 0;
position: absolute;
right: 0;
top: 0;
z-index: $toolbarZ + 2;
.premeeting-screen {
.action-btn {
border-radius: 6px;
box-sizing: border-box;
@@ -75,139 +65,44 @@
}
}
.content {
align-items: center;
box-sizing: border-box;
display: flex;
flex-direction: column;
flex-shrink: 0;
height: 100%;
margin: 0 30px;
padding: 24px 0 16px;
#new-toolbox {
bottom: 0;
position: relative;
width: $prejoinDefaultContentWidth;
z-index: $toolbarZ + 2;
transition: none;
&-controls {
align-items: center;
.toolbox-content {
margin-bottom: 4px;
}
.toolbox-content-items {
@include ltr;
background: transparent;
box-shadow: none;
display: flex;
flex-direction: column;
margin: auto;
width: 100%;
.title {
color: #fff;
font-size: 28px;
font-weight: 600;
letter-spacing: -0.015;
line-height: 36px;
margin-bottom: 32px;
text-align: center;
}
input.field {
background-color: white;
border: none;
outline: none;
border-radius: 6px;
font-size: 14px;
line-height: 20px;
margin-bottom: 16px;
color: #1C2025;
padding: 10px 16px;
text-align: center;
width: 100%;
&.error {
border: 1px solid #E04757;
}
&.focused {
box-shadow: 0px 0px 1px 1.5px black, 0px 0px 1.3px 4px white;
}
}
#new-toolbox {
bottom: 0;
position: relative;
transition: none;
.toolbox-content {
margin-bottom: 4px;
}
.toolbox-content-items {
@include ltr;
background: transparent;
box-shadow: none;
display: flex;
justify-content: space-evenly;
padding: 8px 0;
}
.toolbox-content,
.toolbox-content-wrapper,
.toolbox-content-items {
box-sizing: border-box;
width: 100%;
}
}
justify-content: space-between;
padding: 8px 0;
}
}
@media (max-width: 720px) {
flex-direction: column-reverse;
.content {
height: auto;
margin: 0 auto;
}
}
// mobile phone landscape
@media (max-height: 420px) {
div.content {
padding: 16px 16px 0 16px;
.toolbox-content,
.toolbox-content-wrapper,
.toolbox-content-items {
box-sizing: border-box;
width: auto;
}
}
@media (max-width: 400px) {
.content {
padding: 16px;
width: 100%;
&-controls {
input.field {
font-size: 16px;
padding: 14px 16px;
}
}
.title {
display: none;
}
}
.device-status-error {
border-radius: 0;
margin: 0 -16px;
}
input.field {
font-size: 16px;
padding: 14px 16px;
}
.action-btn {
font-size: 16px;
margin-bottom: 8px;
padding: 11px 16px;
}
}
input::placeholder {
color: #040404;
}
}
#preview {

View File

@@ -6,8 +6,6 @@ $baseLight: #FFFFFF;
/**
* Controls
*/
$controlBackground: $baseLight;
$controlColor: #333333;
$sliderTrackBackground: #474747;
$sliderThumbBackground: #3572b0;
@@ -60,42 +58,20 @@ $readOnlyInputColor: #a7a7a7;
$defaultDarkSelectionColor: #ccc;
$buttonFontWeight: 400;
$labelFontWeight: 400;
$hintFontSize: em(13, 14);
$linkFontColor: #3572b0;
$linkHoverFontColor: darken(#3572b0, 10%);
$dropdownColor: #333;
$errorColor: #c61600;
// Feedback colors
$feedbackCancelFontColor: #333;
// Popover colors
$popoverFontColor: #ffffff !important;
$popupSliderColor: #0376da;
// Toolbar
$secondaryToolbarBg: rgba(0, 0, 0, 0.5);
// TOFIX: Once moved to react rename to match the side panel class name.
$sideToolbarContainerBg: rgba(0, 0, 0, 0.75);
$toolbarBackground: rgba(0, 0, 0, 0.5);
$toolbarBadgeBackground: #165ECC;
$toolbarBadgeColor: #FFFFFF;
$toolbarButtonColor: #FFFFFF;
$toolbarSelectBackground: rgba(0, 0, 0, .6);
$toolbarTitleColor: #FFFFFF;
$toolbarToggleBackground: #12499C;
/**
* Forms
*/
//dropdown
$selectFontColor: $controlColor;
$selectBg: $controlBackground;
$selectActiveBg: darken($controlBackground, 5%);
$selectActiveItemBg: darken($controlBackground, 20%);
/**
* TODO: Replace by themed component.
*/
$videoQualityActive: #57A0ff;
$selectBg: $baseLight;

6
debian/control vendored
View File

@@ -20,7 +20,7 @@ Description: WebRTC JavaScript video conferences
Package: jitsi-meet-web-config
Architecture: all
Depends: openssl, nginx | nginx-full | nginx-extras | apache2
Depends: openssl, nginx | nginx-full | nginx-extras | openresty | apache2, curl
Description: Configuration for web serving of Jitsi Meet
Jitsi Meet is a WebRTC JavaScript application that uses Jitsi
Videobridge to provide high quality, scalable video conferences.
@@ -33,7 +33,7 @@ Description: Configuration for web serving of Jitsi Meet
Package: jitsi-meet-prosody
Architecture: all
Depends: openssl, prosody (>= 0.11.0) | prosody-trunk | prosody-0.12 | prosody-0.11, lua-sec, lua-basexx, lua-luaossl, lua-cjson
Depends: openssl, prosody (>= 0.11.7) | prosody-trunk | prosody-0.12 | prosody-0.11, lua-sec, lua-basexx, lua-luaossl, lua-cjson, lua-inspect
Replaces: jitsi-meet-tokens
Description: Prosody configuration for Jitsi Meet
Jitsi Meet is a WebRTC JavaScript application that uses Jitsi
@@ -47,7 +47,7 @@ Description: Prosody configuration for Jitsi Meet
Package: jitsi-meet-tokens
Architecture: all
Depends: ${misc:Depends}, prosody-trunk | prosody-0.11 | prosody-0.12 | prosody (>= 0.11.2), jitsi-meet-prosody
Depends: ${misc:Depends}, prosody-trunk | prosody-0.11 | prosody-0.12 | prosody (>= 0.11.7), jitsi-meet-prosody
Description: Prosody token authentication plugin for Jitsi Meet
Package: jitsi-meet-turnserver

View File

@@ -1,2 +1,3 @@
doc/debian/jitsi-meet-prosody/prosody.cfg.lua-jvb.example /usr/share/jitsi-meet-prosody/
doc/debian/jitsi-meet-prosody/jaas.cfg.lua /usr/share/jitsi-meet-prosody/
resources/prosody-plugins/ /usr/share/jitsi-meet/

View File

@@ -44,12 +44,7 @@ case "$1" in
fi
JVB_SECRET="$RET"
db_get jicofo/jicofo-authuser
if [ -z "$RET" ] ; then
db_input critical jicofo/jicofo-authuser || true
db_go
fi
JICOFO_AUTH_USER="$RET"
JICOFO_AUTH_USER="focus"
db_get jicofo/jicofo-authpassword
if [ -z "$RET" ] ; then
@@ -83,6 +78,31 @@ case "$1" in
TURN_SECRET="$RET"
fi
SELF_SIGNED_CHOICE="Generate a new self-signed certificate"
# In the case of updating from an older version the configure of -prosody package may happen before the -config
# one, so if JAAS_INPUT is empty (the question is not asked), let's ask it now.
# If db_get returns an error (workaround for strange Debian failure) continue without stopping the config
db_get jitsi-meet/cert-choice || CERT_CHOICE=$SELF_SIGNED_CHOICE
CERT_CHOICE="$RET"
if [ -z "$CERT_CHOICE" ] ; then
db_input critical jitsi-meet/cert-choice || true
db_go
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
fi
if [ "$CERT_CHOICE" != "$SELF_SIGNED_CHOICE" ]; then
db_get jitsi-meet/jaas-choice
JAAS_INPUT="$RET"
if [ -z "$JAAS_INPUT" ] ; then
db_subst jitsi-meet/jaas-choice domain "${JVB_HOSTNAME}"
db_set jitsi-meet/jaas-choice false
db_input critical jitsi-meet/jaas-choice || true
db_go
db_get jitsi-meet/jaas-choice
JAAS_INPUT="$RET"
fi
fi
# and we're done with debconf
db_stop
@@ -141,7 +161,7 @@ case "$1" in
# New:
# Component "focus.jitmeet.example.com" "client_proxy"
# target_address = "focus@auth.jitmeet.example.com"
if grep -q "Component \"focus.$JVB_HOSTNAME\"" $PROSODY_HOST_CONFIG && ! grep "Component \"focus.$JVB_HOSTNAME\" \"client_proxy\"" $PROSODY_HOST_CONFIG ;then
if grep -q "Component \"focus.$JVB_HOSTNAME\"" $PROSODY_HOST_CONFIG && ! grep -q "Component \"focus.$JVB_HOSTNAME\" \"client_proxy\"" $PROSODY_HOST_CONFIG ;then
sed -i "s/Component \"focus.$JVB_HOSTNAME\"/Component \"focus.$JVB_HOSTNAME\" \"client_proxy\"\n target_address = \"$JICOFO_AUTH_USER@$JICOFO_AUTH_DOMAIN\"/g" $PROSODY_HOST_CONFIG
PROSODY_CONFIG_PRESENT="false"
fi
@@ -166,6 +186,29 @@ case "$1" in
PROSODY_CONFIG_PRESENT="false"
fi
JAAS_HOST_CONFIG="/etc/prosody/conf.avail/jaas.cfg.lua"
if [ "${JAAS_INPUT}" = "true" ] && [ ! -f $JAAS_HOST_CONFIG ]; then
sed -i "s/enabled = false -- Jitsi meet components/enabled = true -- Jitsi meet components/g" $PROSODY_HOST_CONFIG
PROSODY_CONFIG_PRESENT="false"
fi
# For those deployments that don't have the config in the jitsi-meet prosody config add the new jaas file
if [ ! -f $JAAS_HOST_CONFIG ] && ! grep -q "VirtualHost \"jigasi.meet.jitsi\"" $PROSODY_HOST_CONFIG; then
PROSODY_CONFIG_PRESENT="false"
cp /usr/share/jitsi-meet-prosody/jaas.cfg.lua $JAAS_HOST_CONFIG
sed -i "s/jitmeet.example.com/$JVB_HOSTNAME/g" $JAAS_HOST_CONFIG
fi
if [ "${JAAS_INPUT}" = "true" ]; then
JAAS_HOST_CONFIG_ENABLED="/etc/prosody/conf.d/jaas.cfg.lua "
if [ ! -f $JAAS_HOST_CONFIG_ENABLED ] && ! grep -q "VirtualHost \"jigasi.meet.jitsi\"" $PROSODY_HOST_CONFIG; then
if [ -f $JAAS_HOST_CONFIG ]; then
ln -s $JAAS_HOST_CONFIG $JAAS_HOST_CONFIG_ENABLED
PROSODY_CONFIG_PRESENT="false"
fi
fi
fi
# Make sure the focus@auth user's roster includes the proxy component (this is idempotent)
prosodyctl mod_roster_command subscribe focus.$JVB_HOSTNAME $JICOFO_AUTH_USER@$JICOFO_AUTH_DOMAIN
@@ -178,32 +221,6 @@ case "$1" in
ln -sf /var/lib/prosody/$JVB_HOSTNAME.crt /etc/prosody/certs/$JVB_HOSTNAME.crt
fi
PRTRUNK_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-trunk' 2>/dev/null | awk '{print $3}' || true)"
PR10_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-0.10' 2>/dev/null | awk '{print $3}' || true)"
PR_VER_INSTALLED=$(dpkg-query -f='${Version}\n' --show prosody 2>/dev/null || true)
if [ "$PRTRUNK_INSTALL_CHECK" = "installed" ] \
|| [ "$PRTRUNK_INSTALL_CHECK" = "unpacked" ] ; then
if [ -f $PROSODY_HOST_CONFIG ]; then
sed -i 's/storage = \"memory\"/storage = \"null\"/g' $PROSODY_HOST_CONFIG
# trigger a restart
PROSODY_CONFIG_PRESENT="false"
fi
fi
if [ "$PR10_INSTALL_CHECK" = "installed" ] \
|| [ "$PR10_INSTALL_CHECK" = "unpacked" ] \
|| dpkg --compare-versions "$PR_VER_INSTALLED" gt "0.10" ; then
# if the version is 0.10.X (>0.10 and <0.11)
if [ -f $PROSODY_HOST_CONFIG ] \
&& dpkg --compare-versions "$PR_VER_INSTALLED" lt "0.11" ; then
sed -i 's/storage = \"memory\"/storage = \"none\"/g' $PROSODY_HOST_CONFIG
# trigger a restart
PROSODY_CONFIG_PRESENT="false"
fi
fi
CERT_ADDED_TO_TRUST="false"
if [ ! -f /var/lib/prosody/$JICOFO_AUTH_DOMAIN.crt ]; then

View File

@@ -35,6 +35,8 @@ case "$1" in
if [ -n "$RET" ]; then
rm -f /etc/prosody/conf.avail/$JVB_HOSTNAME.cfg.lua
rm -f /etc/prosody/conf.d/$JVB_HOSTNAME.cfg.lua
rm -f /etc/prosody/conf.avail/jaas.cfg.lua
rm -f /etc/prosody/conf.d/jaas.cfg.lua
JICOFO_AUTH_DOMAIN="auth.$JVB_HOSTNAME"
# clean up generated certificates

View File

@@ -1,24 +1,18 @@
Template: jitsi-meet-prosody/jvb-hostname
Type: string
_Description: The hostname of the current installation:
The value for the hostname that is set in Jitsi Videobridge installation.
_Description: The domain of the current installation (e.g. meet.jitsi.com):
The value of the domain that is set in the Jitsi Videobridge installation.
Template: jitsi-videobridge/jvb-hostname
Type: string
_Description: The hostname of the current installation:
The value for the hostname that is set in Jitsi Videobridge installation.
_Description: The domain of the current installation (e.g. meet.jitsi.com):
The value of the domain that is set in the Jitsi Videobridge installation.
Template: jitsi-videobridge/jvbsecret
Type: password
_Description: Jitsi Videobridge Component secret:
The secret used by Jitsi Videobridge to connect to xmpp server as component.
Template: jicofo/jicofo-authuser
Type: string
Default: focus
_Description: Jicofo username:
The jicofo needs an authenticated admin user to connect to xmpp server.
Template: jicofo/jicofo-authpassword
Type: password
_Description: Jicofo user password:

View File

@@ -1,3 +1,2 @@
doc/debian/jitsi-meet-turn/turnserver.conf /usr/share/jitsi-meet-turnserver/
doc/debian/jitsi-meet/jitsi-meet.conf /usr/share/jitsi-meet-turnserver/
doc/debian/jitsi-meet-turn/coturn-certbot-deploy.sh /usr/share/jitsi-meet-turnserver/

View File

@@ -107,7 +107,9 @@ denied-peer-ip=240.0.0.0-255.255.255.255" >> $TURN_CONFIG
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
if [ "$CERT_CHOICE" = "I want to use my own certificate" ] ; then
UPLOADED_CERT_CHOICE="I want to use my own certificate"
LE_CERT_CHOICE="Let's Encrypt certificates"
if [ "$CERT_CHOICE" = "$UPLOADED_CERT_CHOICE" ]; then
db_get jitsi-meet/cert-path-key
CERT_KEY="$RET"
db_get jitsi-meet/cert-path-crt
@@ -120,22 +122,13 @@ denied-peer-ip=240.0.0.0-255.255.255.255" >> $TURN_CONFIG
CERT_CRT_ESC=$(echo $CERT_CRT | sed 's/\./\\\./g')
CERT_CRT_ESC=$(echo $CERT_CRT_ESC | sed 's/\//\\\//g')
sed -i "s/cert=\/etc\/jitsi\/meet\/.*crt/cert=$CERT_CRT_ESC/g" $TURN_CONFIG
elif [ "$CERT_CHOICE" = "$LE_CERT_CHOICE" ]; then
/usr/share/jitsi-meet/scripts/coturn-le-update.sh ${JVB_HOSTNAME}
fi
sed -i "s/#TURNSERVER_ENABLED/TURNSERVER_ENABLED/g" /etc/default/coturn
invoke-rc.d coturn restart || true
NGINX_STREAM_CONFIG="/etc/nginx/modules-enabled/60-jitsi-meet.conf"
if [ -f $NGINX_STREAM_CONFIG ] ; then
echo "------------------------------------------------"
echo ""
echo "You have multiplexing enabled, it is recommended to disable it and migrate to using websockets for the bridge channel."
echo "The support for sctp data channels is deprecated and will be dropped at some point."
echo "How to do it at: https://jitsi.org/multiplexing-to-bridge-ws-howto"
echo ""
echo "------------------------------------------------"
fi
# and we're done with debconf
db_stop
;;

Some files were not shown because too many files have changed in this diff Show More