Valere
90bfaecd13
refact: step 2 - break down old membership local transport logic
2026-04-02 16:53:51 +02:00
Valere
4cecdda955
refact: step 1 - extract oldest membership transport into new function
2026-04-02 16:53:51 +02:00
Valere
869bab8253
fixup test since usage of doNetworkOperationWithRetry
...
doNetworkOperationWithRetry requires to properly mock the get_token endpoint, whereas retryNetworkOperation didn't require it.
2026-04-02 16:53:51 +02:00
Valere
23f846a308
fixup: test prettier
2026-04-02 16:53:51 +02:00
Valere
6dcb470162
Refactor local transport
...
- use the new domain logic to discover the transport
- then try to authenticate
- Also fix the bug in multi sfu where active$ not updated on delayId change
2026-04-02 14:38:49 +02:00
Valere
c5c154c99b
add self contained domain logic to discover transports
2026-04-02 14:37:25 +02:00
Valere
fd08489afb
add failing test showing delayId not properly used for delegation
2026-04-02 14:32:26 +02:00
Robin
f7488a0474
Avoid redundantly showing the local user in the PiP tile
...
If you are the only participant in the call, the expanded spotlight layout would redundantly show your media in both the spotlight and PiP tiles. This is a regression; in versions 0.16.1 and earlier we would avoid showing the same user twice.
2026-04-01 13:16:39 +02:00
Valere
8cee4df46e
fix test: use fetchMock to avoid test interference
2026-03-31 12:03:02 +02:00
Valere
6b7467ce6d
Stop calling rtc/transport in widget mode
2026-03-31 11:38:21 +02:00
Robin
9dfade68ee
New ringing UI
...
This implements the new ringing UI by showing a placeholder tile for the participant being dialed, rather than an overlay.
2026-03-18 11:20:43 +01:00
Timo K
273eedd256
keep pip as it was before on mobile
2026-03-10 13:57:06 +01:00
Timo K
8db1c4c370
Implement new Pip Layout (with control buttons)
2026-03-10 13:57:06 +01:00
Robin
6b51b7dc58
Split MediaViewModel into multiple files
2026-02-25 22:41:28 +01:00
Robin
6995388a29
Convert media view model classes to interfaces
...
Timo and I agreed previously that we should ditch the class pattern for view models and instead have them be interfaces which are simply created by functions. They're more straightforward to write, mock, and instantiate this way.
The code for media view models and media items is pretty much the last remaining instance of the class pattern. Since I was about to introduce a new media view model for ringing, I wanted to get this refactor out of the way first rather than add to the technical debt.
This refactor also makes things a little easier for https://github.com/element-hq/element-call/pull/3747 by extracting volume controls into their own module.
2026-02-25 14:47:43 +01:00
Timo
ba95780813
Merge pull request #3734 from element-hq/robin/local-transport
...
Logically separate the advertised transport from the active transport
2026-02-16 15:21:28 +01:00
Robin
4508002947
Test local transport code in oldest member mode
2026-02-13 14:06:44 +01:00
Robin
2a56830426
Fix existing LocalTransport tests
2026-02-13 14:06:44 +01:00
Robin
6cf859fd9e
Fix resource leak due to unsafe scope reference
2026-02-13 12:40:12 +01:00
Robin
13d131c2e9
Logically separate the advertised transport from the active transport
...
To correctly implement the legacy "oldest membership" mode, we need the code to be more nuanced about the local transport. Specifically, it needs to allow for the transport we advertise in our membership to be different from the transport that we connect to and publish media on. Otherwise, if these two are yoked together, members will resend their memberships whenever an SFU hop occurs, which an attacker could use to cause an amplified wave of state changes.
2026-02-11 13:47:15 +01:00
Valere
1e9f2e6282
fix: Simplify log causing stringify TypeError on widget mode
2026-02-10 17:24:01 +01:00
Timo
a329ae0ad1
Merge pull request #3720 from element-hq/toger5/sdk-improvements-only
...
[MatrixRTC SDK] improvements - compatible with custom rtc application
2026-02-09 09:50:16 +01:00
Robin
a0209eb433
Add debug logs to generateItems
...
It's always worth having logs for when state holders are created or destroyed (these are often the most interesting things happening in the application), so I thought it would be nice to have generateItems always log for you when it's doing that.
2026-02-06 13:26:02 +01:00
Timo K
42efc05bd0
Add more granular leave/join api
2026-02-05 06:06:15 +01:00
Valere Fedronic
5563f30bf2
Merge pull request #3705 from element-hq/toger5/fix-test-no-more-legacy-ring
...
[Matrix2.0 compatibility] stop advertising `livekit_alias`, use `"ROOM"` slot_id (backwards compat), stop sending deprecated notify
2026-02-03 16:26:52 +01:00
Valere
9d8ebf8ef3
fix import
2026-02-03 15:37:41 +01:00
Valere
a0ad238952
fix: DidSendCallNotification is not emitting array anymore
2026-02-03 15:29:19 +01:00
Valere
8ee098eef1
review: quick comment
2026-01-29 15:46:41 +01:00
Valere
a7bd2d3668
review: comment and better type
2026-01-29 14:58:54 +01:00
Valere
ca7c8a2f11
Send livekit_alias in multi sfu with state
2026-01-28 16:42:07 +01:00
Valere
146375e320
Only remove livekit_alias in sticky events
2026-01-28 16:33:52 +01:00
Valere
992fb9093c
fix test and use anonymised alias
2026-01-28 15:25:19 +01:00
Valere
99ccfcfbd4
fix linter
2026-01-28 15:18:29 +01:00
Valere
420304fd9d
fix test mocking
2026-01-28 15:16:02 +01:00
Valere
81cb89e599
fix test mocking
2026-01-28 15:11:10 +01:00
Valere
ee8b27837a
fix lint issues
2026-01-28 14:38:23 +01:00
Valere
4c7db0147e
The advertised livekit_alias in membership is deprecated
2026-01-28 14:22:21 +01:00
Timo K
c1b2346e22
Update tests based on new js-sdk changes
...
(no more legacy notify event)
2026-01-27 16:49:25 +01:00
Timo K
220fc51eb5
add initializeWidget to tests.
2026-01-22 19:38:39 +01:00
Timo K
745772f672
Fix rejoin EC crash
...
Due to a duplcaited key (the key not being specific enough)
2026-01-20 13:45:07 +01:00
Timo
a72aae0b8d
Merge pull request #3679 from element-hq/toger5/fix-unnecassary-error-logs
...
Fix some error log lines that lead to confusion
2026-01-19 17:57:34 +01:00
Timo
b1ceeda9ee
Merge pull request #3687 from toger5/toger5/fix-reemitted-event-params
...
Fix delayId delegation. Use correct event reemitting types.
2026-01-19 16:00:16 +01:00
Timo K
3a5b9dd519
remove overkill log
2026-01-19 14:58:45 +01:00
Timo K
a7008d37c6
better log msg
2026-01-19 13:54:46 +01:00
Timo K
a102b3f4aa
Fix some error log lines that lead to confusion.
...
In the past those log lines often were referenced for issues but they
are no real issues.
Either they are just deprecated code running or expected.
2026-01-19 12:20:37 +01:00
Timo K
d8802aa079
linter
2026-01-19 12:18:13 +01:00
Timo K
abb80e4e87
Fix event reemitting types
...
The callback args for reemitting will change to an array including the
originals emitter.
2026-01-19 12:15:15 +01:00
Valere
2817362e15
Do not end call with error in case of MediaDeviceError
2026-01-19 11:46:17 +01:00
Timo K
3f8b3ba3f1
add test to check if publisher is properly destroyed
2026-01-16 14:41:11 +01:00
Timo K
a99a413b88
temp
2026-01-16 14:07:56 +01:00