Robin Townsend
aa628cc63c
Adopt the Compound color system
...
As a first step towards adopting the Compound design system and the new Element Call designs, this pulls in Compound's color tokens and applies them to all existing components. I've tried to choose tokens based on the semantics of where they're used, but in some cases, where the new and old design systems differ in semantics, it was necessary to choose tokens based on their resulting color. These hacks can be removed as we implement more of the new designs.
There were a set of environment variables that we used for custom themes, but Compound has way too many design tokens for that approach to still be a good idea, so I decided to replace them all with a single environment variable that just lets you write arbitrary custom CSS.
2023-08-28 17:14:40 -04:00
Robin and GitHub
4e0cb0a71f
Merge pull request #1339 from robintown/widget-full-mesh
...
Disable full mesh in widget mode
2023-08-09 18:05:16 -04:00
Robin Townsend
15348fb43c
Disable full mesh in widget mode
...
We disabled full mesh on the client that's used in SPA mode, but forgot to do the same for the widget mode client.
2023-08-09 18:02:05 -04:00
Robin and GitHub
96e13e12dd
Merge pull request #1338 from robintown/camera-mute-widget
...
Fix joining with muted video in widget mode
2023-08-09 17:53:09 -04:00
Robin Townsend
7b85b4f051
Fix joining with muted video in widget mode
...
This typo was making it impossible to join a call in Element Call's widget mode with your camera off.
2023-08-09 17:36:19 -04:00
Robin and GitHub
919c265ab9
Merge pull request #1336 from robintown/fix-log-out
...
Fix logging out getting the app stuck on a 'loading' screen
2023-08-09 15:25:49 -04:00
Robin Townsend
b96b3dd5ef
Fix logging out getting the app stuck on a 'loading' screen
2023-08-09 12:00:13 -04:00
Robin and GitHub
ec5b245610
Merge pull request #1335 from vector-im/fheese/workflow_create_latest_ci_unixtime
...
fix typo -> {{}} needs to be prefixed by $
2023-08-09 11:46:47 -04:00
Robin and GitHub
5408306003
Merge pull request #1334 from vector-im/fheese/workflow_create_latest_ci_unixtime
...
Addressing Deprecating save-state and set-output commands
2023-08-09 10:59:04 -04:00
Robin and GitHub
9e1cbd44e0
Merge pull request #1333 from vector-im/fheese/workflow_create_latest_ci_unixtime
...
Add a build step to create a unix timestamp. Use that timestamp to cr…
2023-08-09 10:35:13 -04:00
Robin and GitHub
44dd860cb8
Merge pull request #1311 from robintown/error-view-rageshake
...
Add a rageshake button to the generic error view
2023-08-09 09:31:58 -04:00
Robin and GitHub
6c70a533e9
Merge pull request #1326 from vector-im/publish-error
...
Fix camera light regression
2023-08-04 13:31:56 -04:00
Robin Townsend
e04d3f7c8d
Fix camera light regression
...
By avoiding a method call that was accidentally causing LiveKit to try to publish tracks before the SFU connection was established, resulting in an unclosed stream.
2023-08-04 13:15:24 -04:00
Robin and GitHub
aa58adad52
Merge pull request #1323 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-08-04 11:49:29 -04:00
Robin and GitHub
394f8f3ce5
Merge pull request #1322 from vector-im/media-devices-context
...
Fix multiple issues with device settings
2023-08-03 11:12:49 -04:00
Robin Townsend
99ce5064f5
Fix multiple issues with device settings
...
To track media devices, we were previously relying on a combination of LiveKit's useMediaDeviceSelect hook, and an object called UserChoices. Device settings should be accessible from outside a call, but the latter hook should only be used with a room or set of preview tracks, so it couldn't be raised to the app's top level. I also felt that the UserChoices code was hard to follow due to lack of clear ownership of the object.
To bring clarity to media device handling and allow device settings to be shown outside a call, I refactored these things into a single MediaDevicesContext which is instantiated at the top level of the app. Then, I had to manually sync LiveKit's device state with whatever is present in the context. This refactoring ended up fixing a couple other bugs with device handling along the way.
2023-08-03 10:17:00 -04:00
Robin and GitHub
14e0695f96
Merge pull request #1319 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-08-02 16:50:34 -04:00
Robin and GitHub
98d27759cc
Merge pull request #1312 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-31 18:48:47 -04:00
Robin Townsend
8f7e6d70d3
Add a rageshake button to the generic error view
2023-07-26 11:20:18 -04:00
Robin and GitHub
9017de3d8b
Merge pull request #1304 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-26 10:59:16 -04:00
Robin and GitHub
075dfaf372
Merge pull request #1303 from robintown/copy-alias
...
Make the copy link buttons prefer aliases to room IDs
2023-07-26 10:55:09 -04:00
Robin Townsend
44786331c0
Use the more correct name 'roomIdOrAlias'
2023-07-26 10:52:07 -04:00
Robin Townsend
faa7b32589
Merge branch 'livekit' into copy-alias
2023-07-26 10:50:29 -04:00
Robin Townsend
1dd3e70061
Make the copy link buttons prefer aliases to room IDs
2023-07-24 17:06:09 -04:00
Robin and GitHub
275912ba43
Merge pull request #1302 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-24 16:02:41 -04:00
Robin and GitHub
40fedd97d9
Merge pull request #1294 from robintown/client-loading
...
Restore the client 'loading' state
2023-07-24 10:46:39 -04:00
Robin and GitHub
4f2a8cb75a
Merge pull request #1295 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-24 10:45:25 -04:00
Robin Townsend
86cc865946
Merge branch 'livekit' into client-loading
2023-07-24 10:44:18 -04:00
Robin and GitHub
4cc2d87c90
Merge pull request #1296 from SnoutBug/patch-1
...
Update README.md
2023-07-23 09:32:47 -04:00
Robin Townsend
c34eac03e5
Restore the client 'loading' state
...
https://github.com/vector-im/element-call/pull/1173 regressed the client loading sequence, such that the app would pretend that you were signed out when it was really just loading your saved session. This makes the proper loading state appear again.
2023-07-21 15:23:03 -04:00
Robin and GitHub
6ac14adc02
Merge pull request #1287 from robintown/wake-lock
...
Stop devices from automatically sleeping
2023-07-21 13:07:29 -04:00
Robin Townsend
00c81ad85b
Add comments
2023-07-21 12:12:44 -04:00
Robin Townsend
96dc0b6638
Fix the build?
2023-07-21 11:58:18 -04:00
Robin Townsend
c0eeb035c8
Stop devices from automatically sleeping
...
A TypeScript upgrade was necessary to bring in the types for the wake lock API.
2023-07-21 00:52:43 -04:00
Robin and GitHub
0d89f497aa
Merge pull request #1264 from robintown/settings-tab-order
...
Put the settings tabs back in the right order
2023-07-21 00:40:26 -04:00
Robin Townsend
8903930d56
Respond to review feedback
2023-07-21 00:00:04 -04:00
Robin Townsend
922d66d66b
Merge branch 'livekit' into settings-tab-order
2023-07-20 23:54:47 -04:00
Robin and GitHub
b2be3575f2
Merge pull request #1265 from robintown/avatar-setting
...
Fix avatar field in profile settings being hidden
2023-07-15 20:43:40 -04:00
Robin and GitHub
04d4d9af75
Merge pull request #1261 from robintown/fix-registration
...
Fix registration not logging you into the new account
2023-07-15 20:42:54 -04:00
Robin Townsend
2d3d58cdc7
Fix avatar field in profile settings being hidden
...
It was being hidden when you didn't yet have an avatar set, which made it impossible to ever set one.
2023-07-14 14:48:50 -04:00
Robin Townsend
72eca769a4
Put the settings tabs back in the right order
2023-07-14 14:08:42 -04:00
Robin Townsend
3c30a5812b
Fix registration not logging you into the new account
2023-07-14 12:41:21 -04:00
Robin and GitHub
8cee8c8779
Merge pull request #1252 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-13 11:11:47 -04:00
Robin and GitHub
89c326f0bb
Merge pull request #1240 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-12 11:51:14 -04:00
Robin and GitHub
df04dc6065
Merge pull request #1206 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-07 13:33:24 -04:00
Robin and GitHub
2eb548de9f
Merge pull request #1192 from robintown/expand-collapse-inverse
...
Make the expand and collapse interactions inverses of one another
2023-07-07 09:36:25 -04:00
Robin and GitHub
44ce140f54
Merge pull request #1197 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-06 11:20:17 -04:00
Robin and GitHub
e481a34383
Merge pull request #1191 from robintown/better-double-click
...
Improve the double click detection
2023-07-06 10:35:18 -04:00
Robin and GitHub
77c698f8ed
Merge pull request #1185 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-06 01:03:59 -04:00
Robin Townsend
3ac98c8865
Make the expand and collapse interactions inverses of one another
...
For the most part, at least. If the edge cases where they differ still feel weird, I can iterate on this further.
The diff is unfortunately a bit impenetrable, because I had to change both the fillGaps and cycleTileSize core algorithms used by the big grid layout. But: the main change of significance is the addition of a function vacateArea, which clears out an area within the grid in a specific way that mirrors the motion performed by fillGaps.
2023-07-06 00:59:14 -04:00
Robin Townsend
1c7110e4c9
Improve the double click detection
...
So that it doesn't cause unnecessary renders, and interprets a series of three clicks as a double-click followed by a single click, rather than two overlapping double-clicks. (That behavior felt odd to me during testing of NewVideoGrid, which is why I picked up this small change.)
2023-07-06 00:40:15 -04:00
Robin and GitHub
c3c321a7c4
Merge pull request #1170 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-07-04 13:37:36 -04:00
Robin and GitHub
238c93a242
Merge pull request #1174 from robintown/auto-jsx
...
Fix big grid crashing due to missing React import
2023-07-02 10:19:32 -04:00
Robin Townsend
9704033dc8
Fix tests
2023-06-30 18:46:10 -04:00
Robin Townsend
17450b4531
Fix big grid crashing due to missing React import
...
by fixing the cause rather than the symptom: this upgrades the code to use the new, recommended JSX transform mode of React 17+, which no longer requires you to import React manually just to write JSX.
2023-06-30 18:21:18 -04:00
Robin and GitHub
514cebc074
Merge pull request #1164 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-06-28 12:34:52 -04:00
Robin and GitHub
fc4ef88c75
Merge pull request #1161 from robintown/layouts
...
Make NewVideoGrid support arbitrary layout systems
2023-06-28 11:02:15 -04:00
Robin Townsend
1c6ef97457
Improve typing around layouts and grid components
2023-06-28 10:59:36 -04:00
Robin and GitHub
83384e290e
Merge pull request #1162 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-06-27 23:05:28 -04:00
Robin Townsend
cc35f243f2
Make NewVideoGrid support arbitrary layout systems
...
In preparation for adding layouts other than big grid to the NewVideoGrid component, I've abstracted the grid layout system into an interface called Layout. For now, the only implementation of this interface is BigGrid, but this will allow us to easily plug in Spotlight, SplitGrid, and OneOnOne layout systems so we can get rid of the old VideoGrid component and have One Grid to Rule Them All™.
Please do shout if any of this seems obtuse or underdocumented, because I'm not super happy with how approachable the NewVideoGrid code looks right now…
Incidentally, this refactoring made it way easier to save the state of the grid while in fullscreen / another layout, so I went ahead and did that.
2023-06-27 14:20:45 -04:00
Robin and GitHub
8bd4544841
Merge pull request #1148 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-06-27 13:35:45 -04:00
Robin and GitHub
8250526231
Merge pull request #1147 from robintown/build-full-mesh
...
Run the build workflow on the full mesh branch, too
2023-06-27 09:22:48 -04:00
Robin and GitHub
e625894ae9
Merge pull request #1146 from robintown/fullscreen-and-pip
...
Bring back fullscreen and picture-in-picture modes
2023-06-27 09:22:19 -04:00
Robin Townsend
27668980d7
Run the build workflow on the full mesh branch, too
...
Otherwise CD on the full mesh branch never happens
2023-06-26 14:20:35 -04:00
Robin Townsend
276684c103
Bring back fullscreen and picture-in-picture modes
...
We're now using LiveKit's magic RoomAudioRenderer component to make sure everyone's audio is rendered regardless of whether they have a tile in the DOM.
2023-06-26 13:48:41 -04:00
Robin and GitHub
41456505e0
Merge pull request #1145 from RiotTranslateBot/weblate-element-call-element-call
...
Translations update from Weblate
2023-06-26 12:13:03 -04:00
Robin and GitHub
6a0503c05e
Merge pull request #1140 from robintown/room-avatar
...
Show the room avatar rather than the user avatar in the header
2023-06-24 12:41:16 -04:00
Robin Townsend
25eb56418d
Show the room avatar rather than the user avatar in the header
...
It's supposed to be the room avatar; this was a regression introduced during the LiveKit hack week.
2023-06-23 16:20:15 -04:00
Robin and GitHub
f08facbff3
Merge pull request #1135 from robintown/embedded-device-selection
...
Fix device selection never completing in widget mode
2023-06-23 15:02:30 -04:00
Robin and GitHub
948cc8f52f
Merge pull request #1136 from robintown/call-backend
...
Note the call backend in rageshake and analytics data
2023-06-23 14:58:52 -04:00
Robin Townsend
c181d250ac
Note the call backend in rageshake and analytics data
2023-06-23 14:47:32 -04:00
Robin Townsend
45915ed67e
Fix device selection never completing in widget mode
...
By reinstating some of the code from the full mesh branch that was there to handle this
2023-06-23 14:17:51 -04:00
Robin Townsend
413a311159
Empty commit to rerun CD with new fixes
2023-06-20 12:22:07 -04:00
Robin Townsend
7bb45adbe1
Fix lint
2023-06-20 12:13:27 -04:00
Robin Townsend
0e66e21dae
Empty commit to trigger initial CD run
2023-06-20 12:09:25 -04:00
Robin Townsend
510d55d88a
Fix local tile showing as unmuted when you join muted
2023-06-18 14:28:28 -04:00
Robin Townsend
eb500ed88e
Skip an unnecessary render when calculating display names
2023-06-18 14:28:07 -04:00
Robin Townsend
a2c40561db
Fix a likely bug with audio inputs and outputs getting mixed up?
2023-06-18 14:26:50 -04:00
Robin Townsend
fc307d0aba
Don't show ghost tiles while connecting
2023-06-18 14:26:27 -04:00
Robin Townsend
65f390e2e5
Merge branch 'grid-interactions' into livekit-experiment
2023-06-18 11:45:43 -04:00
Robin Townsend
cd7ab00d80
Don't try to promote the same speaker multiple times
2023-06-18 11:45:01 -04:00
Robin Townsend
ae5b1a367d
Merge branch 'grid-interactions' into livekit-experiment
2023-06-18 11:36:59 -04:00
Robin Townsend
ddeb36db47
Promote speakers to the first page of the grid
2023-06-18 11:35:13 -04:00
Robin Townsend
c3c26e235b
Merge branch 'grid-interactions' into livekit-experiment
2023-06-18 01:13:45 -04:00
Robin Townsend
4e5a75074a
Fix tiles not collapsing toward their center
2023-06-18 01:01:24 -04:00
Robin Townsend
391ba5196c
Make screenshares appear near the presenter's tile and be larger
2023-06-18 00:47:37 -04:00
Robin Townsend
3e56d0a656
Make it possible again to drag a tile into the top left corner
2023-06-18 00:28:08 -04:00
Robin Townsend
d1e7d963a3
Merge branch 'grid-interactions' into livekit-experiment
2023-06-17 22:32:19 -04:00
Robin Townsend
afbcea7b66
Allow the grid to resize with the window width
2023-06-17 22:31:07 -04:00
Robin Townsend
4f582c6ad7
Don't change tile size when dragging
2023-06-17 22:31:07 -04:00
Robin Townsend
8b8d6fd0e0
Push large tiles upwards back into the grid
2023-06-17 22:31:01 -04:00
Robin Townsend
7f5ec069a5
Merge branch 'main' into livekit-experiment
2023-06-16 12:57:06 -04:00
Robin and GitHub
4fd1264d12
Merge pull request #1123 from robintown/connection-indicators
...
Hide connection quality indicators behind a developer setting
2023-06-16 12:56:36 -04:00
Robin and GitHub
cabad628b4
Merge pull request #1121 from robintown/grid-performance
...
Improve the performance of dragging tiles in the large grid
2023-06-16 12:55:15 -04:00
Robin Townsend
a96d70eefb
Hide connection quality indicators behind a developer setting
...
Calls are an environment with high cognitive load, so it's important that we keep extra UI elements like these to a minimum and stick to what's been explicitly designed. I assume that this was here as a developer feature to diagnose reliability of the back end components, which is perfectly fine, so I've kept it behind a developer setting rather than fully removing it.
2023-06-16 10:59:57 -04:00
Robin and GitHub
4342f4b027
Merge pull request #1122 from robintown/speaking-fixes
...
Fix speaking indicators showing up when they shouldn't
2023-06-16 10:42:50 -04:00
Robin Townsend
1b3539e873
Fix speaking indicators showing up when they shouldn't
...
This fixes two edge cases:
- Screenshares should never have a speaking indicator
- Speaking indicators should be hidden in 1:1 calls
2023-06-16 10:35:29 -04:00
Robin Townsend
f4f454f58e
Improve the performance of dragging tiles in the large grid
...
By only updating the one spring of the tile that's being interacted with
2023-06-16 10:20:24 -04:00
Robin and GitHub
89768de5e0
Merge pull request #1114 from robintown/screenshare-tiles
...
Fix tiles having the wrong states during screensharing
2023-06-14 12:01:23 -04:00
Robin and GitHub
24eedc7b9a
Merge pull request #1113 from robintown/fix-spotlight
...
Fix spotlight layout
2023-06-14 11:58:29 -04:00