Robin Townsend
46d1351d83
More fixes
2023-01-18 13:38:29 -05:00
Robin Townsend
2318d75bc7
prettier
2023-01-18 11:33:40 -05:00
Robin Townsend
486674c442
fixes
2023-01-18 11:32:51 -05:00
Robin Townsend
d3fba7fd5f
WIP minus unfinished split grid layouts
2023-01-18 10:52:12 -05:00
David Baker
e1c4042d15
Add units to constant
2023-01-17 10:16:55 +00:00
David Baker
860aff4958
Change rageshake persistence to throttled flushing
...
Rather than every 30 seconds. This way we'll save logs for sessions
lasting less than 30 seconds which we previously didn't. Also save
on window unload just in case that doesn't catch everything.
Plus remove some more unused params.
2023-01-16 17:27:49 +00:00
David Baker
13b1dcf785
Mostly cosmetic fixes to rageshake
...
* Remove duplicate copyright header
* Remove ts-ignores by just using the objects directly rather than via
event.target
* Use error.message rather than errorCode which TS doesn't know about
and may or may not exist.
* Remove some unused things like the skip rageshake function and
the option to init rageshakes without storage.
* Turn single function with a boolean param to make it take two entirely
separate code paths into two functions.
2023-01-16 16:43:45 +00:00
David Baker
abd909c03a
Log undecryptable to-device events
...
Listen for the new undecryptable to-device event event and log
events for it in Posthog & Sentry, and make it visible in the
call flow diagram.
2023-01-13 18:27:22 +00:00
David Baker
afdce66896
Merge remote-tracking branch 'origin/main' into dbkr/prevent_keyrepeat_mute_spam
2023-01-13 11:57:02 +00:00
David Baker
1b08a5cac3
Rename file
2023-01-13 11:56:29 +00:00
David Baker
843e7690fa
Merge pull request #845 from vector-im/dbkr/disable_keyboard_shortcuts_rageshake
...
Disable keyboard shortcuts when feedback modal is open
2023-01-13 11:55:51 +00:00
David Baker
a5977fc992
Rename to useCallViewKeyboardShortcuts
2023-01-13 11:52:40 +00:00
David Baker
f2193302c1
Prevent mute event spam from key repeats
2023-01-12 18:26:21 +00:00
David Baker
9ba4ce429f
Disable keyboard shortcuts when feedback modal is open
2023-01-12 17:31:19 +00:00
David Baker
5f26534496
Use IndexedDB storage in dev mode, just without the worker
...
As per comment, we can't use workers in Vite dev mode. We previously
fell back to the memory store but this ends up with it working significantly
differently in dev mode to production, eg. dev mode would always start
by doing an initial sync, so old to-device messages would arrive again.
There's no need to fall all the way back to the memory store though,
we can use the IndexedDB store without the worker.
2023-01-12 15:17:46 +00:00
Robin
4e0f4a8dc7
Merge pull request #835 from robintown/unmuted-when-speaking
...
Work around mute state updates being slow
2023-01-09 13:35:05 -05:00
Šimon Brandner
0d151452ba
Merge pull request #833 from vector-im/SimonBrandner/feat/hide-audio
2023-01-09 19:28:04 +01:00
Robin Townsend
4fd76f9599
Work around mute state updates being slow
...
Since the app already determines when someone is speaking, we can use that information to make it less obvious when to-device messages are being slow to deliver mute state updates.
2023-01-09 11:10:59 -05:00
Šimon Brandner
881054e265
Hide local volume controls for tiles with no audio
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2023-01-07 10:09:20 +01:00
Robin Townsend
468e389324
Leave audio elements unmuted regardless of mute state
2023-01-06 10:26:10 -05:00
Timo
e5135a41ba
Add call id to mute events ( #827 )
2023-01-05 11:05:22 +01:00
Timo
67d1c29d6a
decrease wait after call ended to 10ms ( #825 )
...
* decrease wait after call ended to 10ms
* new order of widget requests to avoid pip flicker
2023-01-05 00:01:57 +01:00
Robin Townsend
faa8f95f97
Reduce the size of the local feed in 1:1 calls at small window sizes
2023-01-04 08:38:24 -05:00
David Baker
11a262b58f
Merge pull request #819 from vector-im/dbkr/prefix_other_fullscreen_apis
...
Use prefixed versions of other fullscreen APIs too
2023-01-03 22:56:49 +00:00
David Baker
62e4e80ca3
Merge pull request #818 from vector-im/dbkr/fix_copyright_headers
...
Fix copyright headers
2023-01-03 22:56:40 +00:00
David Baker
c34a1f7f65
Use prefixed versions of other fullscreen APIs too
2023-01-03 18:35:00 +00:00
David Baker
70b693ef3c
Revert d2175b4
...
Unintentionally comitted to main
2023-01-03 18:34:27 +00:00
David Baker
d2175b40a4
Use prefixed versions of other fullscreen APIs too
2023-01-03 18:33:11 +00:00
David Baker
1830acbddf
Fix copyright pt. 2: CSS files
2023-01-03 16:58:38 +00:00
David Baker
df9c1fed2a
Fix copyright headers
...
This is an Element project (in the vector-im repo) so the Copyright
should be for New Vector: it was incorrectly attributed to the
foundation for some files (and some files were missing headers).
2023-01-03 16:55:26 +00:00
Timo
05be247946
send posthog callEnded events instantly in embedded mode (prohibit missing events) ( #816 )
...
Signed-off-by: Timo K <timok@element.io>
Co-authored-by: Timo K <timok@element.io>
2023-01-03 17:09:21 +01:00
David Baker
b9ee9583e4
Fix fullscreen on Safari ( #814 )
...
* Fix fullscreen on Safari
Safari only supports it via the webkit prefix
Fixes https://github.com/vector-im/element-call/issues/539
* NOT THAT LOGGER, VSCODE
2023-01-03 11:24:10 +00:00
David Baker
5823cd41e8
Translate separately so the i18n gets less confused
2022-12-22 14:23:19 +00:00
David Baker
de0f2e65a5
Don't show option to submit bug reports if no endpoint configured
2022-12-22 14:12:49 +00:00
David Baker
d7d7bee685
Remove the overflow menu button in fullscreen mode
...
It didn't work and fixing it is a bit of a project: see comment
https://github.com/vector-im/element-call/issues/807
2022-12-22 12:16:05 +00:00
David Baker
70522ed8da
Also add comment
2022-12-21 15:26:24 +00:00
David Baker
3581aceb5a
Addd ResolvedConfigOptions back
2022-12-21 15:25:08 +00:00
David Baker
29f48f25f4
Actually remove the bit that's no longer neccessary
2022-12-21 15:17:34 +00:00
David Baker
c879090a34
Re-jig config accessors
...
We only ever used the static instance() method to get to the config
object, so just make a static instance that returns the ConfigOptions
directly, throwing an exception if it's not yet initialised. This way
the types can all be non-optional (plus it's shorter).
2022-12-21 10:17:53 +00:00
David Baker
6303b357ab
Update default homeserver to match what the docs say
2022-12-21 10:01:37 +00:00
David Baker
b3d97810a8
Unused import
2022-12-21 09:44:28 +00:00
David Baker
eaf14a0562
Don't send rageshakes or start sentry if we don't have config for them
2022-12-21 09:42:27 +00:00
David Baker
fd3c0d9fc6
Don't guess the server name from the URL
...
It only uses the default HS URL anywayso just use the default
server name.
2022-12-21 09:27:25 +00:00
David Baker
c85d1c1d9c
Don't touch the product name option for now
2022-12-20 17:30:47 +00:00
David Baker
96de515e56
Move default homeserver to config file
2022-12-20 17:26:45 +00:00
David Baker
7c26bdbda3
Put the maximised conditional back
...
and comment it
2022-12-19 15:10:25 +00:00
David Baker
4ad5ea49c2
Merge remote-tracking branch 'origin/main' into dbkr/spatial_audio_ff_only
2022-12-19 13:18:12 +00:00
Timo
e3aa810230
Posthog widget embedding ( #767 )
...
* load analytics id from url in embedded mode
Signed-off-by: Timo K <timok@element.io>
* add start call in the widget code path
Signed-off-by: Timo K <timok@element.io>
* send group call id instead of call name
Signed-off-by: Timo K <timok@element.io>
* generate analyticsid based on account analyticsid
This make it impossible to find users from the element web posthog instance
in the element call instance
* move registration type setup PosthogAnalytics.ts
* Order identificaition and tracking.
This fixes an issue that the widget version did not identify the user before sneding
the first track event.
Because start call is called right after app startup.
Signed-off-by: Timo K <timok@element.io>
2022-12-19 12:16:59 +01:00
David Baker
c6ad2003f0
Add other missing file
2022-12-16 17:28:52 +00:00
David Baker
9aed344a80
Add missing file
2022-12-16 17:25:28 +00:00
David Baker
0c55efe4b6
Don't reorder imports - 3rd time's a charm
2022-12-16 17:20:52 +00:00
David Baker
c93df1fd06
Don't reorder import try 2
2022-12-16 17:19:40 +00:00
David Baker
c30eb19021
Don't reorder imports
2022-12-16 17:18:52 +00:00
David Baker
2d8c33d66d
Merge remote-tracking branch 'origin/main' into dbkr/spatial_audio_ff_only
2022-12-16 17:17:30 +00:00
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
102ce87bb0
Hide controls completely in picture-in-picture view
...
This is to prepare for upcoming design changes to the picture-in-picture view in Element Web.
2022-12-13 18:20:30 -05:00
Robin
f9845617b3
Merge pull request #783 from robintown/font-params
...
Add URL params to control fonts
2022-12-10 18:55:35 -05:00
Robin Townsend
32168fb467
Update the leave icon
2022-12-09 14:41:43 -05: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
0a38395bdc
Subtly animate video tile toolbars
2022-12-02 12:44:31 -05: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
aa828fe9f5
Merge pull request #761 from robintown/update-js-sdk
...
Enable users to join calls from multiple devices
2022-11-28 16:37:15 -05:00
Robin Townsend
5ba7267164
Fix lints
2022-11-28 16:15:47 -05:00
David Baker
9c08a69226
Add import
...
And also Prettier says hi apparently
2022-11-23 10:11:55 +00:00
David Baker
40a0958e0d
Use useCallback
...
Co-authored-by: Robin <robin@robin.town>
2022-11-23 10:06:14 +00:00
David Baker
098be75415
Fix click leaking through to DOM element underneath
...
See comment, although this is quite hack - I'm torn on whether this
is worth it for the bugfix. Upgrading react-aria doesn't fix it either
(and also breaks everything in React strict mode).
Fixes https://github.com/vector-im/element-call/issues/762
2022-11-22 19:01:50 +00:00
Robin Townsend
13def24f7e
Enable users to join calls from multiple devices
2022-11-21 12:39:48 -05:00
David Baker
eab8b1d095
Put rageshake request ID in title of debug log submission
2022-11-17 16:06:41 +00: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
93aafb1415
Remove mystery blank line
...
Co-authored-by: Robin <robin@robin.town>
2022-11-16 16:39:35 +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
a2bbe61292
Update help text
2022-11-14 20:58:39 +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
4cd49dee4b
Update description
2022-11-14 16:11:42 +00:00
Erik Johnston
0aadb7e60c
Add a straw man description to the setting
2022-11-14 11:29:42 +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
Robin
6ef41b924d
Merge pull request #743 from robintown/config
...
Improve config documentation and setup
2022-11-11 08:19:40 -05:00
David Baker
24299c09b1
Merge pull request #747 from vector-im/dbkr/create_room_logging
...
Make room / call creation logging more accurate
2022-11-10 21:56:18 +00:00
David Baker
ab860b8655
Use logger
...
Co-authored-by: Robin <robin@robin.town>
2022-11-10 21:43:49 +00:00
David Baker
f69e032a52
Use logger (and fix typo)
...
Co-authored-by: Robin <robin@robin.town>
2022-11-10 21:43:40 +00:00
David Baker
bd08166a50
Make room / call creation logging more accurate
...
It said it was creating the room when actually it was creating the call
2022-11-10 19:10:10 +00:00
Robin Townsend
556f975552
Actually remove Matrix Video Chat branding for real
2022-11-09 17:23:22 -05:00
Robin Townsend
0e478f4c20
Add config documentation, and better types
2022-11-09 10:54:04 -05:00
Robin
57bf934bc2
Merge pull request #736 from robintown/missing-audio-logs
...
Add logs to debug missing spatial audio
2022-11-08 14:53:28 -05:00
Robin Townsend
ca6d75e384
Improve the analytics opt-in copy
2022-11-08 07:53:17 -05:00
David Baker
85b02a3589
Merge pull request #728 from vector-im/dbkr/aria-describedby
...
Add aria-describedby associations
2022-11-07 22:45:37 +00:00
Robin Townsend
5f84cb5790
Fix lint
2022-11-07 14:03:28 -05:00
Robin Townsend
fb75c1536b
Merge branch 'main' into missing-audio-logs
2022-11-07 14:00:22 -05:00
Robin
715bec5949
Merge pull request #737 from robintown/double-audio
...
Disable spatial audio for the maximized speaker
2022-11-07 13:59:07 -05:00
Timo
01244c1873
Posthog load settings on startup ( #734 )
...
Signed-off-by: Timo K <timok@element.io>
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-11-07 18:00:35 +01:00
Robin Townsend
70344fd40f
Disable spatial audio for the maximized speaker
2022-11-07 11:50:05 -05:00
Robin Townsend
0a5701b9fa
Add logs to debug missing spatial audio
...
And potentially fix it, by recreating the source node when the stream changes.
2022-11-07 11:46:10 -05:00
David Baker
85959046a5
Merge pull request #727 from vector-im/dbkr/fix_join_call_close_button
...
Fix close button on join call modal
2022-11-07 14:07:38 +00:00
David Baker
7444763008
Merge pull request #729 from vector-im/dbkr/minor_a11y_fixes
...
A couple of minor a11y fixes
2022-11-07 14:06:29 +00:00
David Baker
d5a5ce9860
Don't pass potentially undefined 'desc' to useId
...
Also use the useId that comes with React 18.
2022-11-07 14:05:58 +00:00
David Baker
e5feba8c26
Make Home link description translateable
2022-11-07 12:33:06 +00:00
David Baker
3cac74df24
Add aria-describedBy to textarea and use useID
2022-11-07 12:28:54 +00:00
David Baker
51572b5787
Make onClose required in Modal
2022-11-07 12:23:21 +00:00
Timo
bcbc20b53d
Create advanced section for telemetry checkbox ( #725 )
...
Signed-off-by: Timo K <timok@element.io>
Co-authored-by: Timo K <timok@element.io>
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-11-05 11:13:56 +01:00
David Baker
5c8562088d
A couple of minor a11y fixes
...
Picked up by Axe
2022-11-04 18:31:21 +00:00
David Baker
58e505cd38
Add aria-describedby associations
2022-11-04 18:10:53 +00:00
David Baker
509fd65156
Fix close button on join call modal
...
It just errored as we didn't pass onClose through to the modal
2022-11-04 17:56:37 +00:00
Timo
cafac39733
moves style init to initializer. fix i18n loading ( #723 )
...
Co-authored-by: Timo K <timok@element.io>
2022-11-04 18:29:40 +01:00
Timo
123763afec
Disable posthog in widgets ( #726 )
...
Co-authored-by: Timo K <timok@element.io>
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-11-04 17:31:07 +01: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
Timo
78a313c373
Async config file ( #682 )
...
* initial
* only donwload config once
* formatting
* update sample config
* sentry
* refactor load state
* fix build yaml
* Upper case enums
* change how defaults work. review fixes
* abstract initialization
* copyright
* gitignore styleing
* refactor initialization
* use dafualt as fallback
* internalInstance rename
* review
* remove acidentally added posthog file
* DSN rename
* update Copyright
* remove olm from the initializer
Co-authored-by: Timo K <timok@element.io>
2022-11-03 19:43:41 +01:00
Robin
02e1d602d9
Merge pull request #708 from robintown/join-polish
...
Improve the visual experience of joining a call
2022-11-03 14:01:22 -04:00
Robin
1e02afe1c1
Merge pull request #709 from robintown/crisp-avatars
...
Fix blurry avatars
2022-11-03 14:01:04 -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
Robin Townsend
093bf7c1a1
Fix blurry avatars
2022-11-02 23:12:43 -04:00
David Baker
42aeecd964
Merge pull request #706 from vector-im/dbkr/fix_ptt_safari
...
Fix Walkie-Talkie mode in Safari
2022-11-02 20:15:35 +00:00
David Baker
45dbaa968a
Fix Walkie-Talkie mode in Safari
...
We didn't check whether we actually had a video device when seeing
if the current video devices was in the list of devices, so this
caused loops which confused Safari.
2022-11-02 20:03:56 +00:00
Robin
db66700595
Merge pull request #704 from robintown/feedless-tiles
...
Don't show toolbar buttons on connecting tiles
2022-11-02 12:36:36 -04:00
Robin Townsend
84a92845c3
Don't show toolbar buttons on connecting tiles
...
Because connecting tiles don't have a feed, clicking the local volume button would cause a soft crash. This also fixes a few strict mode errors in the surrounding area while we're at it.
2022-11-02 12:34:31 -04:00
Robin Townsend
8731f83fb5
Fix a warning about missing keys
2022-11-02 12:15:32 -04:00
Robin Townsend
f1c050c327
Don't doubly initialize the client in strict mode
2022-11-02 11:23:05 -04:00
Robin Townsend
b1083baacf
Clean up remaining 'Matrix Video Chat' branding
2022-11-01 22:19:44 -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
37d9e48c0a
Add an underline to blue (external) links on hover
2022-10-31 15:16:02 -04:00
Robin
9b3835c166
Merge pull request #689 from robintown/logo-description
...
Add an accessible description to the logo
2022-10-31 14:44:46 -04:00
Robin
54d903933b
Merge pull request #688 from robintown/load-olm-once
...
Ensure that Olm is only loaded once
2022-10-31 14:44:33 -04:00
Robin Townsend
dc1e086ea2
Add an accessible description to the logo
2022-10-31 14:03:41 -04:00
Robin
e6eb2e093c
Merge pull request #685 from robintown/reduced-motion
...
Disable animations for users that prefer reduced motion
2022-10-31 13:45:58 -04:00
Robin Townsend
d4caa1585b
Ensure that Olm is only loaded once
...
React 18's strict mode intentionally mounts all components twice, which was causing Olm to get double-loaded. Also, it doesn't need to be loaded if the app is running as a widget.
2022-10-31 13:43:03 -04:00
Robin Townsend
c25874ced5
Don't log AbortErrors from videos that are never played
...
It's normal for the play operation on video feeds to be cancelled due to tiles unmounting quickly (especially with React 18's strict mode), but it logs a scary error which can be misleading during debugging.
2022-10-31 12:34:56 -04:00
Robin Townsend
7932d7a471
Disable animations for users that prefer reduced motion
2022-10-31 11:46:17 -04:00
Šimon Brandner
cb5f7a3f84
Avoid Olm loading loop
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-10-27 16:48:13 +02:00
Robin Townsend
14a1ff7fe4
Switch to the React 18 createRoot API
2022-10-27 09:48:37 -04:00
Robin Townsend
7038a76fc1
Fix type error
2022-10-27 09:43:17 -04:00
Robin Townsend
1a329966ba
Show an error when the browser does not support WebRTC
2022-10-27 09:42:27 -04:00
Šimon Brandner
66ecb7c4e9
Merge pull request #667 from vector-im/SimonBrandner/feat/ice-fallback
2022-10-26 17:52:44 +02:00
Šimon Brandner
c4c99c4bcb
Use a better var name
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-10-26 14:27:41 +02:00
Šimon Brandner
cef88e2894
Add option to allow ICE server fallback
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-10-26 13:58:41 +02:00
Šimon Brandner
fcaa126147
Add jest
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-10-26 13:21:06 +02: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
Robin Townsend
2b74c2d9ce
Merge branch 'main' into matryoshka-rageshake
2022-10-24 13:59:35 -04:00
David Baker
736aa95133
Fix type
2022-10-24 18:58:55 +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 Townsend
e1090377f9
Merge branch 'main' into matryoshka-rageshake
2022-10-24 13:50:45 -04: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
877726dc3c
Merge pull request #656 from robintown/1-1-freedom
...
Re-enable focusing tiles in 1:1 calls
2022-10-24 13:49:00 -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
9bdd5b0e58
Make rageshake requests work in matryoshka mode
2022-10-24 12:30:30 -04:00
Robin Townsend
7ad84de9c2
Re-enable focusing tiles in 1:1 calls
2022-10-24 10:22:51 -04:00
Robin Townsend
bf94a5dcaf
Make more of the lobby translateable
2022-10-24 10:17:12 -04:00
David Baker
537341da3a
Fix storybook
2022-10-24 10:06:38 +01:00
David Baker
247ed95976
Merge pull request #647 from vector-im/dbkr/fix_missing_key
...
Fix missing key in tab container
2022-10-24 10:02:18 +01:00
Robin Townsend
d26de7d27f
Fix joining calls in matryoshka mode without audio or video inputs
...
The join handler was requesting a stream with both video and audio, even if the system lacked video or audio devices. Requesting one of audio or video is enough to get all device labels.
2022-10-23 13:22:43 -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
David Baker
fa4b4eabdf
Fix missing key in tab container
2022-10-21 16:26:44 +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
178c6496bd
yarn prettier:format
2022-10-18 00:48:29 -04:00
Robin Townsend
c5eb9f0b99
Prevent screenshare feeds from collapsing when you're alone in freedom mode
...
The code was previously confusing focused and presenter tiles quite a bit, and also had a couple different spots that would mistakenly engage 1:1 layout behavior when you're alone with your own screensharing feed.
2022-10-18 00:30:37 -04:00
Robin Townsend
97ae11f656
Fix fullscreen buttons fullscreening the wrong feed
2022-10-17 12:31:56 -04:00
Robin Townsend
43f98e6be6
yarn prettier:format
2022-10-17 09:30:22 -04:00
Robin Townsend
70ba6c3c6b
Make avatars work in matryoshka mode
...
The client just didn't have a homeserver URL to perform media queries against.
2022-10-17 01:46:44 -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
e9ebccf0df
Merge pull request #619 from robintown/unmute
...
Leave audio elements unmuted regardless of mute state
2022-10-14 09:59:54 -04: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
4728804a33
Leave audio elements unmuted regardless of mute state
2022-10-13 10:49:16 -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
f808c56121
Type
2022-09-29 17:08:48 +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
70d6c3e9bf
Merge pull request #608 from robintown/reduced-controls
...
Show a reduced set of controls when the window is narrow
2022-09-27 07:54:24 -04:00
Robin Townsend
fdc0272940
Show a reduced set of controls when the window is narrow
2022-09-26 20:36:51 -04:00
Robin Townsend
d90a837714
Make tooltips look more like Element Web's
...
The only thing they're missing now is animated fading.
2022-09-26 20:17:55 -04:00
Robin
47f7e0e5a0
Merge pull request #605 from robintown/maximized-fill
...
Let the maximized video feed fill the window
2022-09-26 12:28:53 -04:00
Robin Townsend
2155d9bb80
Let the maximized video feed fill the window
...
instead of getting letterboxed.
2022-09-26 09:55:39 -04:00
David Baker
46ab10f733
Remove unintentional commenting
2022-09-26 13:03:39 +01:00
David Baker
6e91ec3a0e
Clear storage after logout
2022-09-26 13:01:43 +01: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
David Baker
d9fc9e82ab
Fix another cause of split-brain rooms
...
Wait for the client to start syncing before we attempt to join a
room.
Fixes https://github.com/vector-im/element-call/issues/600 (detailed
bug analysis is also in that issue).
2022-09-23 10:50:42 +01:00
Robin Townsend
1e65f10d3f
Merge branch 'main' into simplify-maximised
2022-09-23 00:29:29 -04:00
Robin Townsend
de0df4b534
Further simplify the maximised speaker view
2022-09-22 17:52:05 -04:00
Robin Townsend
f78cf6e79a
Don't allow the user to fullscreen their own screenshare feed
2022-09-22 17:35:23 -04:00
David Baker
6355aa863c
Fix scroll bug in spotlight view
...
This was a confusion between indicies of the tile and the tile position:
the spotlight tile is the 0th TilePosition, ie. the tile with order
0, not the tile with index 0.
Also comment one method to hopefully make this slightly easier to
understand.
2022-09-22 12:03:57 +01:00
Robin Townsend
89fa9dfd64
Only maximise a participant when the window is narrow, too
2022-09-16 10:23:23 -04:00
Robin Townsend
4a08ae75b3
Make the maximised prop of VideoTile optional
2022-09-16 10:21:41 -04:00
Robin Townsend
9e367db324
Maximise the active speaker when the window is small
2022-09-14 19:05:05 -04:00
Timo
f71817b0a2
fix logout ( #577 )
...
Co-authored-by: Timo K <timok@element.io>
2022-09-13 16:48:04 +02:00
Robin
73d09bc99c
Merge pull request #576 from robintown/unpersist
...
Unpersist widget after hanging up
2022-09-13 08:34:41 -04:00
Robin Townsend
8725b2c230
Unpersist widget after hanging up
...
Otherwise it can get stuck on screen in Element Web.
2022-09-12 22:54:20 -04:00
Robin Townsend
fd18f2acdf
Don't kill other sessions when running as a widget
2022-09-12 15:37:39 -04:00
Robin Townsend
b7be3011da
Add widget actions for joining and leaving calls and switching layouts
...
These actions are processed lazily to ensure that even if the app takes a while to start up, they won't be missed.
2022-09-09 02:14:12 -04:00
Robin Townsend
f0045c9406
Initialize all widget-related things at the top level
2022-09-09 02:09:12 -04:00
Robin Townsend
3186b5f24b
Add a URL parameter for hiding the room header
2022-09-09 02:04:53 -04:00
David Baker
70dffe95ff
Handle groupcall being null
2022-09-07 11:42:37 +01:00
David Baker
0360889fd6
Log ID instead of object
...
as otherwise it recurses and logs the entire client + store
2022-09-06 15:11:45 +01:00
David Baker
ee1dd2293e
Use new method to wait until a room is ready fopr group calls
...
We were waiting for the group call event handler to process the room,
but only if we couldn't get the room from the client - if getRoom returned
a room, we just wouldn't wait. This just uses promises rather than
an event to wait for the room to be ready.
Requires https://github.com/matrix-org/matrix-js-sdk/pull/2641
2022-09-06 11:57:07 +01:00
David Baker
30c9dfce02
Remove unused import
2022-09-01 13:36:02 +01:00
David Baker
48ad4d040d
Actually wait for the right event
...
& update js-sdk dependency
2022-09-01 13:32:11 +01:00
David Baker
1b4f097b1c
Fix bug where additional group calls could be created
...
This (hopefully) fixes the remaining bug where extra group calls
could be created when entering a room.
We waited for the Room event to arrive, but didn't wait for the
group call event handler to actually process the event, so it would
have depended what order the event handlers were run in.
If this doesn't fix it, it at least adds logging so we'll have more
to go on next time.
Fixes https://github.com/vector-im/element-call/issues/563
2022-09-01 11:41:22 +01:00
David Baker
e7353e184f
Fix groupcall debug info in rageshakes
...
We were putting the whole array from setState in, so the debug info
was wrapped in an array when it shouldn't be.
Also comment the groupCallInspector setState/context dance which I
now *finally* understand.
2022-08-25 11:43:47 +01:00
David Baker
c550545116
Fix 'submit debug logs' checkbox in the rageshake form
...
Fixes https://github.com/vector-im/element-call/issues/550
2022-08-23 20:29:41 +01:00
Šimon Brandner
a2a6eaf695
Update-jssdk
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-19 17:26:02 +02:00
Šimon Brandner
af7daee3e7
Handle screen-sharing feed ending
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-19 17:16:57 +02:00
Robin Townsend
2b45cf1f67
Convert UnauthenticatedView to TypeScript
2022-08-18 18:48:24 -04:00
Robin Townsend
ba4258aa89
Fix the call type selector
2022-08-18 18:48:17 -04:00
Šimon Brandner
fc0a3f38ac
Merge pull request #512 from vector-im/SimonBrandner/fix/audio
2022-08-16 10:07:55 +02:00
Šimon Brandner
c7ce689739
Fix spatial audio
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-15 15:11:51 +02:00
Šimon Brandner
fa0a8d30e7
Fix audio
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-15 15:11:20 +02:00
Šimon Brandner
b57ef84e66
Filter out local streams
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-15 15:05:30 +02:00
Šimon Brandner
719156aadf
Fix the Feedback modal not being closable
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-14 10:42:57 +02:00
Šimon Brandner
0720005c93
Delint
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-14 09:01:32 +02:00
Šimon Brandner
897f127fbd
Check for audio track count
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-14 09:01:16 +02:00
Šimon Brandner
fd8ade1bf1
Delint
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-14 09:00:36 +02:00
Šimon Brandner
7f6b0f572b
Merge remote-tracking branch 'upstream/main' into SimonBrandner/fix/audio
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-14 08:57:49 +02:00
Šimon Brandner
317f27e5f9
Don't re-run hook on every mute
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-13 18:44:11 +02:00
Šimon Brandner
b2427bd810
Handle audio-less
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-13 18:29:30 +02:00
Šimon Brandner
4ac5c2c677
Merge remote-tracking branch 'upstream/main' into SimonBrandner/fix/audio
2022-08-13 18:28:27 +02:00
Šimon Brandner
2234962acc
Fix handling of streams with no audio tracks
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-13 18:19:31 +02:00
Robin
8f95da4b07
Merge pull request #518 from robintown/logout-lost-sessions
...
Log out lost sessions
2022-08-13 09:38:40 -04:00
Robin Townsend
3d5421819f
Stop the temporary client
2022-08-12 20:13:52 -04:00
Robin Townsend
5167cacee8
Log out lost sessions
...
To prevent sessions from piling up quite as much
2022-08-12 17:58:29 -04:00
Robin Townsend
882eed0737
Remove top level matrix-js-sdk imports
2022-08-12 16:46:53 -04:00
Šimon Brandner
e82ed2cbcb
Merge remote-tracking branch 'upstream/main' into SimonBrandner/fix/audio
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-12 20:54:04 +02:00
Šimon Brandner
05466fbd7f
Merge pull request #513 from vector-im/SimonBrandner/fix/slider
2022-08-12 20:50:29 +02:00
Šimon Brandner
2bfd26b2b5
Fix spelling
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-12 20:48:39 +02:00
Robin Townsend
88cffdb70e
Fix a case where someone's audio could be missing if the audio track
...
arrived late
2022-08-12 14:24:19 -04:00
Timo
51ae1c819a
typescript src/video-grid
( #511 )
2022-08-12 19:27:34 +02:00
Šimon Brandner
8176d60d96
Show name in 1:1 calls
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-12 10:33:59 +02:00
Šimon Brandner
2ce99b969d
Fix the look of volume slider on Firefox
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-12 10:25:58 +02:00
Šimon Brandner
8b97904144
Fix full-screen audio
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-12 09:53:44 +02:00
Šimon Brandner
0e34f9a464
Add useAudioOutputDevice()
...
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-08-12 09:36:46 +02:00
Timo
c09380644b
typescript src/tabs
, src/typography
( #491 )
...
* first iteration
* tabs generic - remove as from typography
* typography using React.component function
* comma mistake
* ...
* review + add back `as` option for typography.
* linter
* quick fix
* us location descriptor
2022-08-11 17:59:00 +02:00
Robin Townsend
2a1689009a
Extract state event capabilities into a variable
2022-08-09 09:43:12 -04:00