David Baker
223793a445
Make spatial audio Firefox-only
...
Hopefully explained in comment: we have a heisenbug where we sometimes
lack audio from a certain participant, so this simplifies the audio
path by removing the workaround required to do AEC with spatial audio
on chrome.
2022-12-16 17:12:17 +00:00
Robin Townsend
acc41c532e
Add URL params to control fonts
...
This was also a good chance to switch to the semantic font size names used in Compound.
2022-12-09 14:31:13 -05:00
Šimon Brandner
6d8ae91b6c
Don't expose calls
on GroupCall
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-12-04 15:50:21 +01:00
Robin Townsend
44e22e2684
Don't start new calls in widget mode
...
In widget mode, it's the client's duty to start the call.
2022-11-29 15:47:39 -05:00
Robin Townsend
13def24f7e
Enable users to join calls from multiple devices
2022-11-21 12:39:48 -05:00
David Baker
b92acd4822
Merge pull request #752 from vector-im/dbkr/waiting_for_media
...
Add a 'waiting for video' state to media tiles
2022-11-16 16:41:27 +00:00
David Baker
734d330a10
CamcelCase for enum values
2022-11-16 10:45:49 +00:00
David Baker
5623fa415f
Also update connection states when participants change
2022-11-15 17:33:58 +00:00
David Baker
f2746ab994
Pass user's connection state for their screenshare feed
2022-11-15 17:19:09 +00:00
David Baker
80f07a5454
Add a 'waiting for video' state to media tiles
...
This will show if the call is waiting for media to connect (in practice
doesn't actually seem to happen all that often) but also show if the
media connection is lost, with the js-sdk change.
Requires https://github.com/matrix-org/matrix-js-sdk/pull/2880
Fixes: https://github.com/vector-im/element-call/issues/669
2022-11-15 16:13:33 +00:00
Erik Johnston
6855e61c47
Correctly handle window losing focus
2022-11-14 20:58:39 +00:00
Erik Johnston
d09c3d8374
Add 'v' shortcut
2022-11-14 16:14:16 +00:00
Erik Johnston
67b97e63ca
Use useEventTarget
2022-11-14 16:12:19 +00:00
Erik Johnston
c67e7ebc2c
Put PTTButton shortcuts behind the new shortcut
2022-11-14 10:40:02 +00:00
Erik Johnston
b30ef953b4
Put keyboard shortcuts behind settings flag
2022-11-14 10:24:03 +00:00
Erik Johnston
c9330debd4
Lint take2?
2022-11-11 16:02:24 +00:00
Erik Johnston
456194312b
Lint
2022-11-11 16:00:32 +00:00
Erik Johnston
cb85733426
Add 'm' and 'space' shortcuts for mute/unmuting during a call
2022-11-11 15:53:58 +00:00
Timo
72503d0335
Add posthog Telemetry (Anonymity Logic + call duration telemetry) ( #658 )
...
Co-authored-by: Timo K <timok@element.io>
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-11-04 13:07:14 +01:00
Robin Townsend
a47bd13db6
Fix a crash when someone leaves while screensharing
2022-11-03 16:11:57 -04:00
Robin Townsend
2d5f413a1f
Improve the visual experience of joining a call
...
Because useMeasure always returns a width and height of zero on the first render, various call UI elements would flash in and out of existence or animate in from the wrong place when joining a call. This poses an accessibility issue, and is generally unpleasant.
2022-11-02 23:17:36 -04:00
David Baker
2346ad9b7e
Merge pull request #695 from vector-im/dbkr/fix_missing_tile_bug
...
Fix missing tile bug
2022-11-01 18:20:23 +00:00
David Baker
feeb9c4e7c
Fix missing tile bug
...
The 'connecting' tile change meant that we could have tiles right
at the start of the call where we wouldn't have before, and in fact
could have tiles for other users before we even had a tile for ourself.
This threw off the logic for ordering tiles which had a special case
for 1:1 calling which assumed that one of the tiles in a 1:1 call was
the local user. In this case, this assumption wasn't true at the very
start of the call, so the tile orders got assigned incorrectly and then
persisted for the rest of the call.
Fixes https://github.com/vector-im/element-call/issues/694
2022-11-01 18:10:11 +00:00
Robin Townsend
7932d7a471
Disable animations for users that prefer reduced motion
2022-10-31 11:46:17 -04:00
David Baker
b8af9a0733
Merge pull request #648 from vector-im/dbkr/tiles_for_everyone
...
Show tiles for members we're trying to connect to
2022-10-25 12:56:43 +01:00
David Baker
b39b3c072d
Merge pull request #652 from vector-im/dbkr/fixec_screenshare
...
Fix screen sharing
2022-10-24 18:54:52 +01:00
Robin
669b1403fc
Merge pull request #663 from robintown/matryoshka-avatar
...
Fix avatars of remote participants in matryoshka mode
2022-10-24 13:49:32 -04:00
Robin Townsend
efe9e6c2b3
Fix avatars of remote participants in matryoshka mode
...
RoomWidgetClient doesn't do lazy loading, so it only has the state event data to work with and not the lazy loaded user object.
Previously avatars of remote participants were all replaced by fallback avatars.
2022-10-24 13:19:16 -04:00
Robin Townsend
bf94a5dcaf
Make more of the lobby translateable
2022-10-24 10:17:12 -04:00
David Baker
821622f71c
Types
2022-10-21 20:28:33 +01:00
David Baker
71dcc94166
Fix screen sharing
...
* Make the embedded mode screen sharing a request-each-way rather
than request-and-reply, since replies time out and so can't wait
for the user.
* Try normal screen sharing first, then fall back to using the widget
API if it fails (for lack of a good way of detecting when we
should be using the widget API).
Fixes https://github.com/vector-im/element-call/issues/649
2022-10-21 20:19:52 +01:00
David Baker
1ea9432769
Show tiles for members we're trying to connect to
...
This should help give more context on what's going wrong in
splitbrain scenarios.
If users leave calls uncleanly, their tile will remain in until
their member event times out, which will be an hour from when they
joined the call. See https://github.com/vector-im/element-call/issues/639 .
Part of https://github.com/vector-im/element-call/issues/616
2022-10-21 17:24:56 +01:00
Šimon Brandner
4ee6e450b7
Make Element Call screensharing work on desktop
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-10-20 19:07:27 +02:00
Robin Townsend
97ae11f656
Fix fullscreen buttons fullscreening the wrong feed
2022-10-17 12:31:56 -04:00
Robin Townsend
402f62e09a
Consolidate some similar strings
2022-10-14 18:38:33 -04:00
Robin Townsend
684defdc19
Merge branch 'main' into hide-invite
2022-10-14 10:51:41 -04:00
Robin Townsend
5ed2dc6e0e
Split room state hooks out into separate files
2022-10-14 10:50:36 -04:00
Šimon Brandner
ce86a6f120
Merge pull request #622 from vector-im/SimonBrandner/feat/hide-screen
2022-10-14 16:49:54 +02:00
Šimon Brandner
96b1a5f296
hideScreensharing
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-10-14 16:17:50 +02:00
Robin Townsend
02b2aef958
Hide the invite button in non-public rooms
2022-10-14 09:40:21 -04:00
Robin Townsend
81771f511c
Fix types
2022-10-13 21:25:15 -04:00
Robin Townsend
8524b9ecd6
Set up translation with i18next
2022-10-12 14:53:49 -04:00
David Baker
eca598e28f
Merge pull request #609 from vector-im/dbkr/device_by_name
...
Use device labels rather than IDs in widget API
2022-09-30 17:28:59 +01:00
David Baker
77da0c912f
Match device type too
...
Because lots of audio & video inputs have the same name
2022-09-29 17:07:10 +01:00
David Baker
17613837b6
Hold a user media stream open while we get devices
...
As per comment.
2022-09-29 13:19:46 +01:00
David Baker
4a5b69800c
Use device labels rather than IDs in widget API
...
device IDs are different for each origin, so won't match up when passed
in & out of widgets. Use the label instead.
For https://github.com/vector-im/element-web/issues/23331
2022-09-27 16:19:48 +01:00
Robin Townsend
fdc0272940
Show a reduced set of controls when the window is narrow
2022-09-26 20:36:51 -04:00
David Baker
b55aa12100
Merge pull request #602 from vector-im/dbkr/fix_capture_devices_left_on
...
Fix bug causing mic/webcam to remain open after call
2022-09-23 17:09:39 +01:00
David Baker
ded6a80b58
Fix passworldess user prompt screen
...
This is how boolean logic works
2022-09-23 15:38:35 +01:00
David Baker
7435f1101a
Fix bug causing mic/webcam to remain open after call
...
Fixes https://github.com/vector-im/element-call/issues/596
2022-09-23 15:35:05 +01:00