Robin Townsend
dc8d0fd81b
Update strings
2023-05-22 15:12:41 -04:00
Robin Townsend
ae40dea7ec
Make the profile form autosave
2023-05-22 15:12:41 -04:00
Robin Townsend
85380c8142
Make width of profile tab conform to designs
2023-05-22 15:12:41 -04:00
Robin Townsend
6560d9eb1a
Make remove avatar button target area larger
2023-05-22 15:12:41 -04:00
Robin Townsend
69099772e0
Make settings button icon size match designs
2023-05-22 15:12:41 -04:00
Robin Townsend
cf1a7f2e21
Match settings modal to design nuances better
2023-05-22 15:12:41 -04:00
Robin Townsend
eeb1f4baaf
Merge branch 'main' into SimonBrandner/feat/settings
2023-05-22 12:49:57 -04:00
Robin and GitHub
568c989ff7
Merge pull request #1069 from robintown/hide-rageshake-request
...
Hide the rageshake request modal when the window is too small
2023-05-22 09:21:30 -04:00
Robin and GitHub
606358c51b
Merge pull request #1070 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-05-17 23:33:38 -04:00
Robin Townsend
c01e363639
Hide the rageshake request modal when the window is too small
2023-05-17 13:59:15 -04:00
Robin and GitHub
e93dfb54d2
Merge pull request #1065 from robintown/resist-fingerprinting
...
Make Element Call work in Firefox's resist fingerprinting mode
2023-05-17 10:32:00 -04:00
Robin Townsend
f1ee3604de
Make Element Call work in Firefox's resist fingerprinting mode
...
This one is gonna take some explaining:
When in resist fingerprinting mode, Firefox exhibits some funny behavior: when we ask for the the list of media devices, it gives us fake device IDs. But when the js-sdk requests a stream for any of those devices, Firefox associates the stream with the real device ID.
Now, in order to get the names of devices included in their metadata when you query the device list, you need to be holding a stream. For this reason, useMediaHandler was set up to reload the device list whenever matrix-js-sdk got a new local stream. But because of the inconsistency in device IDs, it would enter an infinite cycle telling matrix-js-sdk to request a stream for the fake device ID, but with matrix-js-sdk always responding with the real device ID.
I already wasn't happy with useMediaHandler's use of @ts-ignore comments to inspect private js-sdk fields, and in the meantime we've come up with a simpler function for requesting device names, so I decided to refactor useMediaHandler to use it instead. Importantly, it doesn't break in resist fingerprinting mode.
This created a new UX issue though: now, when on the lobby screen, useMediaHandler would request microphone access so it could get device names, followed immediately by a *second* pop-up for the lobby screen to request camera access. That's 1 pop-up too many, so I changed useMediaHandler to only request device names when a component is mounted that actually wants to show them. Currently, the settings modal is the only such component, and users normally only open it *after* granting full audio/video access, so this solution works out quite nicely.
2023-05-15 23:13:18 -04:00
Robin and GitHub
d3111758b7
Merge pull request #1064 from robintown/update-js-sdk
...
Update matrix-js-sdk
2023-05-15 11:10:15 -04:00
Robin Townsend
abdb85226f
Update matrix-js-sdk
2023-05-15 11:04:57 -04:00
Robin and GitHub
aae86ed830
Merge pull request #1055 from robintown/update-matrix-widget-api
...
Update matrix-widget-api
2023-05-15 08:43:07 -04:00
Robin and GitHub
a961647e86
Merge pull request #1058 from robintown/update-js-sdk
...
Update matrix-js-sdk
2023-05-14 01:33:55 -04:00
Robin Townsend
207554f067
Fix tests
2023-05-14 01:32:11 -04:00
Robin Townsend
7d454645d0
Fix types
2023-05-13 14:27:01 -04:00
Robin Townsend
fcb923f6db
Update matrix-js-sdk
2023-05-13 14:11:59 -04:00
Robin and GitHub
e3c34a7145
Merge pull request #1053 from robintown/local-tile-size
...
Cap the size of the local tile in 1:1 calls
2023-05-13 13:54:40 -04:00
Robin and GitHub
1c9b2a24d9
Merge pull request #1054 from robintown/local-feed-contrast
...
Use a more noticeable shadow when displaying one tile on top another
2023-05-13 13:54:12 -04:00
Robin and GitHub
7ab94cb003
Merge pull request #1056 from robintown/mute-icon
...
Show audio mute status next to people's names
2023-05-13 13:53:51 -04:00
Robin and GitHub
239095321a
Merge pull request #1057 from robintown/speaking-transition
...
Subtly animate active speaker indicators
2023-05-13 13:53:03 -04:00
Robin Townsend
caf90d851e
Subtly animate active speaker indicators
...
A light touch of animation here is consistent with what the designs call for, and what we've done with the toolbars on video tiles.
2023-05-12 14:49:55 -04:00
Robin Townsend
a74733f6bc
Show audio mute status next to people's names
...
Previously we were showing a combination of audio and video status icons on people's name badges, which meant there was no way to tell whether someone who had their video off was muted or not. The designs call for only microphone icons to be shown here.
2023-05-12 14:32:16 -04:00
Robin Townsend
440c617738
Use a more noticeable shadow when displaying one tile on top another
...
So that the local tile in 1:1 calls is more discernable against the background, especially when both participants have their video off
2023-05-12 14:16:33 -04:00
Robin and GitHub
0f7ee3b860
Merge pull request #1045 from robintown/update-react-spring
...
Update react-spring
2023-05-12 14:11:53 -04:00
Robin Townsend
dc15fbc8c9
Update matrix-widget-api
...
To fix a TypeScript error I'm seeing when running the linter locally
2023-05-12 14:10:34 -04:00
Robin Townsend
2df8488c20
Cap the size of the local tile in 1:1 calls
...
So that it doesn't cover up too much of the remote tile at small window sizes
2023-05-12 11:43:17 -04:00
Robin Townsend
e3d5c84b17
Update react-spring
...
Just in case this has a chance of fixing https://github.com/vector-im/element-call/issues/960
2023-05-10 10:53:52 -04:00
Robin and GitHub
6f4ab0d3ab
Merge pull request #900 from abhijain2003/abhijain2003/loadingui
...
changes Loading room... to Loading...
2023-05-10 09:36:33 -04:00
Robin and GitHub
4572e35339
Merge pull request #1034 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-05-09 01:28:45 -04:00
Robin and GitHub
15350b6989
Merge pull request #1021 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-04-25 10:32:28 -04:00
Robin and GitHub
8437e263af
Merge pull request #1013 from robintown/controls-overlay
...
Keep inspector from covering call buttons
2023-04-20 10:45:36 -04:00
Robin and GitHub
4719a92ffc
Merge pull request #1015 from robintown/shortcut-focus
...
Make keyboard shortcuts accessible by default
2023-04-20 10:45:11 -04:00
Robin Townsend
28368da60a
Update strings
2023-04-19 16:20:53 -04:00
Robin Townsend
4114622d44
Remove the keyboard shortcut setting
2023-04-19 16:15:38 -04:00
Robin and GitHub
6f2b32ead5
Merge pull request #1014 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-04-19 15:59:20 -04:00
Robin Townsend
6f13989819
Fix lint errors
2023-04-19 15:55:55 -04:00
Robin Townsend
1184b71396
Format with Prettier
2023-04-19 15:54:39 -04:00
Robin Townsend
56bd54a645
Disable keyboard shortcuts when focus is in a modal
2023-04-19 15:51:44 -04:00
Robin Townsend
18fa1371d3
Use a ref for spacebarHeld
...
because we can and it means fewer renders
2023-04-19 15:17:32 -04:00
Robin Townsend
6ad4663508
Keep inspector from covering call buttons
2023-04-19 14:43:37 -04:00
Robin and GitHub
30a224e20e
Merge pull request #1010 from robintown/speaking-border
...
Make audio activity border match the tile border radius
2023-04-19 10:32:39 -04:00
Robin Townsend
3c7f01a510
Make audio activity border match the tile border radius
2023-04-19 10:24:47 -04:00
Robin Townsend
838137c83b
Detect split-brains caused by parallel calls
...
This is another KPI for PostHog.
2023-04-17 16:58:51 -04:00
Robin and GitHub
7221b7c3a2
Merge pull request #998 from robintown/rageshake-processor
...
Include unended spans in rageshakes
2023-04-14 11:55:16 -04:00
Robin and GitHub
5bec960112
Merge pull request #999 from robintown/posthog-processor
...
Send rejoin events to PostHog in realtime
2023-04-13 10:21:44 -04:00
Robin Townsend
da7760d7ab
Send rejoin events to PostHog in realtime
...
By converting PosthogSpanExporter to a SpanProcessor just like the RageshakeSpanProcessor, it can now monitor spans in realtime as they are started.
2023-04-12 18:14:59 -04:00
Robin Townsend
a17ffcc327
Include unended spans in rageshakes
...
By turning the RageshakeSpanExporter into a SpanProcessor, it can now be notified of spans as soon as they're started.
2023-04-12 17:12:02 -04:00
Robin and GitHub
d211d27817
Merge pull request #997 from robintown/telemetry-crash
...
Fix a crash when adding call events to telemetry
2023-04-12 09:26:03 -04:00
Robin Townsend
0637804d61
Fix a crash when adding call events to telemetry
...
Since typeof null is 'object', the flattenVoipEventRecursive function was mistakenly casting nulls to Record<string, unknown> in its typeof v === "object" case, causing Object.entries to explode.
2023-04-11 23:05:37 -04:00
Robin and GitHub
a2b3e098b6
Merge pull request #995 from robintown/rageshake-traces
...
Include OpenTelemetry traces in rageshakes
2023-04-11 16:24:09 -04:00
Robin and GitHub
4bcddad316
Merge pull request #994 from robintown/lock
...
Save lockfile
2023-04-11 16:20:21 -04:00
Robin Townsend
95eca18207
Include OpenTelemetry traces in rageshakes
2023-04-11 01:13:19 -04:00
Robin Townsend
2f33902ea9
Save lockfile
2023-04-10 15:04:42 -04:00
Robin and GitHub
858c68baf1
Merge pull request #971 from robintown/audio-observability
...
End-to-end audio observability
2023-04-05 13:55:12 -04:00
Robin Townsend
de3bad3810
Remove temporary config file
2023-04-05 13:38:49 -04:00
Robin Townsend
928f1c1d6f
Address review feedback
2023-04-05 12:56:50 -04:00
Robin Townsend
711cdf9a60
Merge branch 'main' into audio-observability
2023-04-05 12:50:38 -04:00
Robin and GitHub
e0089a0aee
Merge pull request #958 from robintown/forced-opt-in
...
Opt into analytics by default during the beta
2023-04-04 09:27:01 -04:00
Robin and GitHub
61a0534984
Merge pull request #983 from robintown/rejoin-analytics
...
Track call rejoins
2023-04-04 09:18:40 -04:00
Robin Townsend
a52251befa
Track call rejoins
...
Call rejoins will be one of the KPIs we track in PostHog to measure call quality. I've also reverted the previous behavior which logged all OpenTelemetry spans to PostHog, since we should only be sending small, anonymized bits of data there.
2023-04-03 21:05:13 -04:00
Robin Townsend
c4f029ae4f
Fix lint error
2023-03-27 22:30:12 -04:00
Robin Townsend
8978f94fe4
Add temporary config
2023-03-27 09:12:32 -04:00
Robin Townsend
5f41f9476b
Disable the opt in analytics setting if Posthog isn't configured
2023-03-23 13:07:34 -04:00
Robin Townsend
313ebe258e
Add end-to-end audio observability
...
This reports via OpenTelemetry when particular participants are speaking, as an easy way to observe the delivery of audio in calls.
2023-03-22 14:23:26 -04:00
Robin and GitHub
71b1d0c6b1
Merge pull request #970 from robintown/matrix-widget-api
...
Update matrix-widget-api
2023-03-22 13:58:36 -04:00
Robin Townsend
76c0277301
Update matrix-js-sdk
2023-03-22 11:41:41 -04:00
Robin Townsend
698bea93e3
Update matrix-widget-api
2023-03-22 11:33:50 -04:00
Robin and GitHub
ff90e507a6
Merge pull request #963 from alariej/navigator_mediasession_fix
...
Fix for Android WebView, which does not support navigator.mediaSession
2023-03-17 13:20:05 -04:00
Robin Townsend
971eca59ff
Opt into analytics by default during the beta
2023-03-13 19:12:47 -04:00
Robin and GitHub
7aa902853a
Merge pull request #956 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-03-11 00:49:06 -05:00
Robin and GitHub
3e081ac936
Merge pull request #890 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-03-08 10:53:58 -05:00
Robin and GitHub
5eb552e36a
Merge pull request #935 from alariej/alariej
...
Add e2eEnabled parameter to Widget client
2023-03-02 16:07:04 -05:00
Robin and GitHub
cdf2d560b8
Merge pull request #911 from robintown/big-grid
...
New grid system
2023-02-19 09:02:57 -05:00
Robin and GitHub
9dff42b437
Merge pull request #919 from robintown/ignore-coverage
...
Add coverage reports to .gitignore
2023-02-16 11:32:29 -05:00
Robin Townsend
1fc181dc28
Document useReactiveState
2023-02-15 16:38:49 -05:00
Robin Townsend
fbc72283d4
Add missing copyright headers
2023-02-15 16:20:58 -05:00
Robin Townsend
9a0dfad5f9
Add coverage reports to .gitignore
2023-02-15 15:13:39 -05:00
Robin Townsend
efbf319fa1
Explain why we cast the tile springs
2023-02-13 22:40:26 -05:00
Robin Townsend
ef4a62ca62
Document useMergedRefs
2023-02-13 22:38:27 -05:00
Robin Townsend
8c818b9ce1
Get 100% test coverage on grid operations
2023-02-13 22:24:04 -05:00
Robin Townsend
58ed372afa
Fix type and lint errors
2023-02-13 21:57:57 -05:00
Robin Townsend
69e6ba93c1
Add a switch to toggle between the new and old grids
2023-02-13 20:36:42 -05:00
Robin Townsend
b2b2f0bb15
Merge branch 'main' into big-grid
2023-02-13 18:54:19 -05:00
Robin Townsend
8d0bf4cacc
Test grid operations
2023-02-13 18:35:50 -05:00
Robin Townsend
5448744871
Document grid operations
2023-02-13 18:35:23 -05:00
Robin Townsend
d852e33413
Document the component
2023-02-08 00:32:08 -05:00
Robin Townsend
8d46687a54
Refactor grid state tracking
2023-02-07 23:27:49 -05:00
Robin Townsend
978b0f08e8
Move grid algorithms into a separate file
2023-02-07 22:13:50 -05:00
Robin Townsend
374c68e3c0
Fix tiles enlarging to the wrong place on mobile
2023-02-05 01:17:28 -05:00
Robin Townsend
82ac775124
Fix scrolling on mobile
2023-02-05 00:55:12 -05:00
Robin Townsend
6adcf95aaa
Implement different column counts and mobile layout
2023-02-04 00:43:53 -05:00
Robin Townsend
206730ffc0
Fix infinite loop when a tile can't be enlarged
2023-02-03 16:52:42 -05:00
Robin Townsend
1e858f6ba3
Fix a typo
2023-02-03 16:27:49 -05:00
Robin Townsend
22382413dc
Make drag and drop mobile-friendly
2023-02-03 15:42:47 -05:00
Robin Townsend
6cd939db0c
Fix a crash when there's only 1 tile and it gets shrunk
2023-02-03 09:11:25 -05:00
Robin Townsend
42e4f6ce83
Don't allow the grid to overflow horizontally
2023-02-03 08:44:35 -05:00
Robin Townsend
4fc8598e36
Keep tile elements in a stable order
2023-02-01 11:50:52 -05:00