Valere
9d5ca297e3
Remove well-known discovery
2026-08-05 16:12:41 +02:00
Valere
ffb6b0a5f6
Use rtc transport action with widgets
2026-07-30 10:43:09 +02:00
Robin
5a96d1769e
Only show layout switch when it has an effect on the layout
2026-07-28 15:06:15 +02:00
Robin
a443a55bec
Factor out a layout switch view + view model
...
So it can easily be shown and hidden wholesale.
2026-07-28 15:06:15 +02:00
Robin
7962d02be5
Prefer grid mode in landscape on mobile
2026-07-28 11:56:01 +02:00
Robin
aa6732da19
Use an actual one-on-one layout in landscape on mobile
2026-07-28 11:53:26 +02:00
Robin
0b21cff020
Rename one-on-one layouts to be orientation-agnostic
2026-07-27 18:28:52 +02:00
Robin
062e0a00fb
Remove unused variables from CallViewModel tests
2026-07-27 18:13:51 +02:00
Robin
32e30dd4f5
Merge branch 'livekit' into mobile-gradient
2026-07-09 12:56:28 +02:00
Timo K.
2b84c587f2
lint
2026-07-07 19:45:22 +02:00
Timo K.
a6921e2bfb
all the other logs
2026-07-07 19:12:11 +02:00
Timo K.
3cc396f42c
fix getChild before rageshake setup
2026-07-07 19:05:10 +02:00
Robin
900d0abd27
Let page background shine through the footer
...
By visually separating it from other page content with an additional gradient background only when necessary.
2026-06-30 16:29:20 +02:00
Robin
8ab7f89e36
Hide local tile from mobile voice calls in landscape orientation
...
To match the designs. Just like in portrait, it wouldn't contribute anything meaningful.
2026-06-25 20:29:24 +02:00
Johannes Marbach
5ad62c7097
Merge pull request #4053 from element-hq/johannes/oxlint
...
Switch from eslint to oxlint
2026-06-25 15:46:05 +02:00
Johannes Marbach
1cd2764eb2
Switch from eslint to oxlint
2026-06-23 15:13:46 +02:00
Johannes Marbach
3fb81032e0
Merge pull request #4054 from element-hq/johannes/pip-border
...
Add PiP border in 1on1 layouts
2026-06-23 12:38:24 +02:00
Johannes Marbach
93fae5dd67
Add PiP border in 1on1 layouts
...
Fixes : #4008
2026-06-23 08:56:41 +02:00
Robin
504888b359
Show the subtitle of the app bar on small screens
...
Previously we were hiding the entire app bar on mobile phones in landscape orientation. However now that the app bar supports a small 'subtitle' element, we should show only the subtitle in this case to match the designs.
The subtitle still hides on tap, just like the footer.
2026-06-22 18:21:17 +02:00
Robin
a456e47796
Show ringing status even on spotlight tiles (except in app bar mode)
2026-06-22 12:55:37 +02:00
Robin
22ff0d34b7
Merge branch 'livekit' into header-subtitle
2026-06-22 11:35:52 +02:00
Robin
96d1d1e1aa
Merge pull request #4040 from element-hq/scope-leak-lint
...
Add lint rule to prevent ObservableScope resource leaks
2026-06-22 11:13:10 +02:00
Robin
f78f507745
Address remaining resource leak error
2026-06-22 10:53:08 +02:00
Robin
89c148a530
Update remaining variable names for remote Matrix-LiveKit members
2026-06-22 10:44:24 +02:00
Robin
e11c04ac87
Move ringing status indicator to header on mobile
...
On mobile, the ringing status indicator is supposed to display in the header rather than on a tile. The exact layout differs between Android and iOS. To get it right I had to refactor AppBar to use CSS grid templates.
(Also, I changed my mind about the exact ringing data I needed out of CallViewModel - sorry. A little move of the ringtone audio renderer into its own component was necessary to accommodate that.)
2026-06-18 17:41:35 +02:00
Robin
e77d143ce1
Clarify which Matrix-LiveKit members are remote
...
It was rather confusing that matrixLivekitMembers$ gives you objects of type RemoteMatrixLivekitMembers and yet the *local* member would often be among these. I've attempted to clear this up. To my knowledge this wasn't creating any bugs.
2026-06-18 12:10:32 +02:00
Robin
6af72f4c90
Format
2026-06-18 11:42:02 +02:00
Robin
05797097c6
Only consider a call accepted if the *intended* recipient picks up
2026-06-18 11:05:55 +02:00
Robin
8cda9777a5
Merge branch 'livekit' into ringing-intent
2026-06-18 06:41:17 +02:00
Robin
3ef3ebe897
Merge pull request #4036 from element-hq/metadata-leak
...
Fix a minor resource leak with display names and avatars
2026-06-12 10:05:50 +02:00
Timo
0c284ed75b
Merge pull request #4004 from element-hq/toger5/controls-api-onPipMediaOrientation
...
Controls api `onPipMediaOrientation`
2026-06-12 16:03:35 +08:00
Robin
96a9115ee7
Fix a minor resource leak with display names and avatars
...
I noticed that calls to createDisplayNameBehavior$ and createAvatarUrlBehavior$ were technically leaking resources since they reused the ObservableScope from their outer scope, which in practice lasts for the entire lifetime of the CallViewModel. This would not have had any noticeable effect unless you had other participants leave and rejoin the same call many thousands of times.
2026-06-11 12:21:07 +02:00
Robin
2ac6cdeb46
Improve internal model of ringing, expose ringing intent to call UI
...
I found our code's internal model of ringing a little overgrown (it had superfluous states like 'unknown') and difficult to extend with metadata or callbacks relating to ring attempts. By modeling ringing instead as a stream of ring attempts, where each attempt has an intent, a recipient, and an eventual outcome (accept/decline/timeout), I find it more natural to work with.
This makes room for a future 'try again' callback to allow ringing someone again after a timeout, and also forced me to look for a simpler solution to the duplicate leave sound effects. I exposed the intent of the ringing attempt to the call UI so I can later use it in the header.
2026-06-11 12:12:27 +02:00
Valere Fedronic
ba40490ca4
Merge pull request #4013 from element-hq/valere/fix_repeated_click_to_unmute
...
feat(mute): add syncing state and disable toggle during async mute
2026-06-05 12:58:23 +02:00
fkwp
b99c8821d3
Add matrix_rtc_mode config option ( #4014 )
...
* Move MatrixRTCMode enum from settings.ts to ConfigOptions.ts
* Add matrix_rtc_mode config option
* add matrix_rtc_mode to config.sample.json
* Update src/settings/DeveloperSettingsTab.tsx
Co-authored-by: Johannes Marbach <n0-0ne+github@mailbox.org >
* Update src/settings/DeveloperSettingsTab.test.tsx
Co-authored-by: Johannes Marbach <n0-0ne+github@mailbox.org >
* reviewer comments
---------
Co-authored-by: Johannes Marbach <n0-0ne+github@mailbox.org >
2026-06-05 09:49:43 +00:00
Valere
dc03d9b358
fix: Initial unmute is reverted
2026-06-05 10:29:36 +02:00
Valere
e7d37f87bb
feat(errors): Report livekit as such rather than like unknown errors
2026-06-04 11:54:42 +02:00
Timo K
308a042076
fix error with no media
2026-06-03 10:43:47 +02:00
Timo K
b554ce4a87
Update CallViewModel.test.ts
2026-06-03 10:18:45 +02:00
Robin
399b7d83da
Merge pull request #3988 from element-hq/renovate/livekit-client
...
Update dependency livekit-client to v2.19.0
2026-06-02 11:50:10 +02:00
Robin
47326c28d3
Fix type error
2026-06-02 11:33:17 +02:00
Timo K
b86909af52
temp add tests
2026-06-02 10:56:34 +02:00
Timo K
a6fc710d8c
Add onPipMediaOrientationUpdate to controls api.
2026-06-01 16:12:57 +02:00
Valere
2bd16beccf
Merge branch 'livekit' into valere/improve_error_message
2026-05-28 14:27:17 +02:00
Timo
ee1e8c60e7
Merge pull request #3961 from element-hq/toger5/view-model-call-footer-example
...
Implement fast switcher (+ ViewModel with snapshot example)
2026-05-20 23:38:00 +08:00
Timo K
d9c0de73b7
Merge branch 'livekit' into toger5/view-model-call-footer-example
2026-05-20 16:28:04 +02:00
Robin
8d07d552d7
Ensure landscape layout is always edge-to-edge on mobile
...
The spotlight landscape layout was edge-to-edge previously, and should remain that way.
2026-05-20 16:11:07 +02:00
Timo K
ec3b52f963
del: windowMode$ from public callViewModel
...
replace with edgeToEdge$
2026-05-20 15:00:28 +02:00
Valere Fedronic
2fb5de3ba2
review: eqeqe
...
Co-authored-by: Robin <robin@robin.town >
2026-05-20 14:50:56 +02:00
Timo K
c9fa586db1
merge fixups
2026-05-20 14:25:40 +02:00