Commit Graph
425 Commits
Author SHA1 Message Date
Robin 717c7420f9 Require ObservableScopes of state holders to be specified explicitly
Previously we had a ViewModel class which was responsible for little more than creating an ObservableScope. However, since this ObservableScope would be created implicitly upon view model construction, it became a tad bit harder for callers to remember to eventually end the scope (as you wouldn't just have to remember to end ObservableScopes, but also to destroy ViewModels). Requiring the scope to be specified explicitly by the caller also makes it possible for the caller to reuse the scope for other purposes, reducing the number of scopes mentally in flight that need tending to, and for all state holders (not just view models) to be handled uniformly by helper functions such as generateKeyed$.
2025-10-17 12:23:53 -04:00
Robin 414322e5d9 Fix TileStore's ability to swap spotlight speakers without a layout shift
This was regressed in 79c40f198c because of the overlooked renaming of the 'speaking' field to 'speaking$'.
2025-10-17 11:25:39 -04:00
Robin 1eec7314e8 Remove unnecessary lint suppressions 2025-10-17 11:22:23 -04:00
Robin 2c66e11a0a Fix connection tests
Removing one of these tests because it was doing a lot of work to test something that was made trivial in b0eb566a4f.
2025-10-14 16:04:52 -04:00
Robin 102e581c41 Serialize updates to the call intent
So that the value advertised in your membership can't desync from the actual value if you toggle video too fast.
2025-10-14 15:20:07 -04:00
Robin b0eb566a4f Simplify local transport connection state tracking 2025-10-14 14:43:13 -04:00
Robin 2dc6134606 Stick to the term 'transport' rather than 'focus' 2025-10-14 14:38:37 -04:00
Robin ea17ed7253 Rename 'localTransport' to 'transport', since it's often remote 2025-10-14 14:34:51 -04:00
Robin 9f4e99310b Elaborate on a TODO for preloading JWT tokens 2025-10-14 14:32:56 -04:00
Robin 625cfa15ff Move sorting bin calculation into UserMedia 2025-10-14 14:31:35 -04:00
Robin 95069fd3fa Fix joining call with audio and video muted 2025-10-14 12:19:23 -04:00
Robin 13636b78d9 Replace deprecated CallMembership.sender with userId 2025-10-14 12:07:51 -04:00
Robin bcbf7a90f0 Initialize preferredTransport$ in a less unusual way 2025-10-14 12:00:00 -04:00
Robin 2de7a20d8a Remove outdated comment 2025-10-14 11:54:36 -04:00
Valere a6c4fb4148 review: count as publishing even if not yet connected to LK 2025-10-14 17:47:38 +02:00
Robin b030d304df Fix crash during focus switching 2025-10-14 09:29:48 -04:00
Robin 392c51fbf6 Merge branch 'voip-team/rebased-multiSFU' of github.com:element-hq/element-call into voip-team/rebased-multiSFU 2025-10-14 09:22:08 -04:00
Robin a18700cbcd Avoid updating membership during focus switch 2025-10-14 09:16:46 -04:00
Valere 93d763f58f devtool: quick display of focus URL in stats tile 2025-10-14 14:06:54 +02:00
Valere a9db9c8b59 ErrorHandling: publish connection error handling 2025-10-14 10:46:57 +02:00
Valere 0e1b61a5e8 refactor: Split out all exports of CallViewModel to their own file 2025-10-13 16:24:55 +02:00
Valere 8823be67c5 refactor extract inner classes to their own files 2025-10-13 15:43:12 +02:00
Valere 8e6eb70e5b refactor: use EnterRTCSessionOptions instead of unnamed bools 2025-10-13 13:52:01 +02:00
Valere 4608d68cd9 Merge branch 'voip-team/rebased-multiSFU' into valere/multi-sfu/connection_states 2025-10-10 15:01:49 +02:00
Valere 6710f4c72a Test: Fix mocking to fix failing tests 2025-10-10 11:09:41 +02:00
Robin 85ffe68d98 Remove outdated comment 2025-10-08 19:20:21 -04:00
Robin 2c576a7477 Clean up subscriptions in Connection tests 2025-10-08 19:09:27 -04:00
Robin 64c2e5911c Update outdated comment 2025-10-08 19:09:08 -04:00
Robin 5be3b91509 Fix focus connection state typo, simplify its initialization 2025-10-08 19:09:03 -04:00
Robin 3691e7120d Restore a hidden 'null' state for the local transport/connection 2025-10-08 17:35:53 -04:00
Robin 8778be8351 Fix doc comment typo 2025-10-08 17:34:33 -04:00
Robin b1d143720a Add comments to Async 2025-10-08 17:08:51 -04:00
Robin c96e81bfd3 Simplify type of audio participants exposed from CallViewModel 2025-10-08 16:42:36 -04:00
Robin 1a4b38cf93 Document ObservableScope.reconcile 2025-10-08 12:54:24 -04:00
Valere afe004c6e7 Remove un-necessary transport field, already accessible from connection 2025-10-08 14:30:52 +02:00
Robin 669bc76dd5 Replace calls to deprecated resolveActiveFocus 2025-10-08 01:04:58 -04:00
Valere 529cb8a7ec prettier ! 2025-10-07 16:24:02 +02:00
Valere 7437961195 lint: fix import order 2025-10-07 16:12:23 +02:00
Valere c3c0516f0d Lint: fix all the lint errors 2025-10-07 16:00:59 +02:00
Valere 597e6782a8 Merge branch 'voip-team/rebased-multiSFU' into valere/multi-sfu/connection_states 2025-10-07 10:33:31 +02:00
Valere 91a366fa2a tests: Publish connection states 2025-10-06 10:50:10 +02:00
Robin 1fff71ace1 Actually leave the MatrixRTC session again 2025-10-03 21:00:45 -04:00
Robin 1820cac3f6 Create media items for session members not joined to LiveKit 2025-10-03 19:14:48 -04:00
Robin 86fb026be8 Turn multi-SFU media transport into a developer option 2025-10-03 14:43:22 -04:00
Valere 00401ca38a refactor: PublishConnection extract from giant constructor 2025-10-02 15:15:23 +02:00
Valere 84f95be48d test: Ensure scope for publishers observer 2025-10-02 13:08:00 +02:00
Valere 0502f66e21 tests: Add publisher observable tests 2025-10-02 12:53:59 +02:00
Valere dfaa6a33f4 fix lint errors 2025-10-01 17:24:19 +02:00
Valere e8bf817f88 tests: end scope tests 2025-10-01 16:39:21 +02:00
Valere 6a1f7dd057 ConnectionState: test livekit connection states 2025-10-01 15:23:24 +02:00