Commit Graph

250 Commits

Author SHA1 Message Date
Benoit Marty
67c6a1bd5f Let MatrixClient exposes val instead of fun for the services. 2025-10-06 15:12:35 +02:00
renovate[bot]
c1cd259ce7 Update metro to v0.6.7 (#5416)
* Update metro to v0.6.7

* Replace `@Inject` with `@AssistedInject` where needed

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-09-26 08:16:36 +00:00
renovate[bot]
2d6031d3ac Update kotlin (#5317)
* Update kotlin

* Upgrade Metro and add new `@Origin` annotation

* Suppress warnings in overridden method as nothing else would work

* "Fix" quality warnings about reusing the same string literal

* Don't use `compat` version for `datetime` dependency

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-09-26 08:34:20 +02:00
Jorge Martin Espinosa
b75b79bf40 When joining a call, wait for the content_loaded action (#5399)
* When joining a call, wait for the `content_loaded` action

This ensures the widget won't be disposed when the user joins a call and loads the lobby screen for room calls
2025-09-23 15:18:53 +00:00
Benoit Marty
595cec7d33 Merge branch 'develop' into feature/bma/testEntryPoint 2025-09-18 18:58:30 +02:00
Valere
2a4f846374 Fix wrong expiration default that was breaking tests 2025-09-18 12:58:36 +02:00
Valere
f9fa38f229 refactor: rename CallNotify to RtcNotification to match new event 2025-09-18 09:25:13 +02:00
Valere
2ecd4ecaf5 review + tests 2025-09-18 09:18:36 +02:00
Valere
ac7e1d6dc3 fix test compilation 2025-09-17 15:53:14 +02:00
Valere
5221f0890c Use the new RtcNotification instead of deprecated CallNotify 2025-09-17 15:15:33 +02:00
Benoit Marty
629fc552e5 Use DependencyHandlerScope.testCommonDependencies() 2025-09-16 14:38:31 +02:00
Valere Fedronic
2ca0afff3a Call: MSC4310 sending RTC decline event and listening for Decline from other sessions
MSC4310 RTC decline event support
2025-09-16 10:25:17 +02:00
Jorge Martin Espinosa
15a99a5f0c Upgrade Rust SDK bindings to v25.09.15 (#5353)
* Upgrade Rust SDK bindings to `v25.09.15`:

This contains important changes to the APIs used to build the EC widget.

* Use the new `intent` parameter correctly, by calculating locally its behaviour based on whether the room is a DM and there is an ongoing call or not.

Using just the `intent` parameter is our end goal, but sadly this is not fully supported by the current EC embedded `v0.15.0`, so we need to add a workaround using the `skipLobby` and `preload` parameters.
2025-09-15 15:15:10 +02:00
Benoit Marty
1fe2eceb9a Extract plantTestTimber 2025-09-11 16:58:47 +02:00
Benoit Marty
f1c0ac0b9b Improve log messages and comment 2025-09-11 16:37:12 +02:00
Benoit Marty
2db74ce9e5 Code cleanup. Avoid usage of !! 2025-09-11 16:23:07 +02:00
Valere
3ee2e5575b fix detekt 2025-09-11 13:41:24 +02:00
Valere
4e8e355f27 Call: RTC decline event support 2025-09-11 13:33:37 +02:00
Jorge Martin Espinosa
47ca80a939 Increase Element Call audio init delay (#5315)
This fixed the wrong audio stream being used when starting a call locally.
2025-09-10 10:47:12 +00:00
Benoit Marty
4e720cecb1 Rename anvil modules to annotations and codegen 2025-09-05 14:26:27 +02:00
bmarty
676d7f6c8f Sync Strings from Localazy 2025-09-05 07:44:19 +00:00
Jorge Martín
8f09fd62d9 Fixes after rebase 2025-09-04 16:49:21 +02:00
Jorge Martín
298fda8bcf Fix push notification bindings 2025-09-04 16:49:21 +02:00
Jorge Martín
e06bacbff3 Redo DI gradle setup code 2025-09-04 16:49:20 +02:00
Jorge Martín
fc3153bd26 Fix lint issues and restore commented out code 2025-09-04 16:49:18 +02:00
Jorge Martín
92a4b8b66b Start migrating Anvil KSP to Metro 2025-09-04 16:48:34 +02:00
ElementBot
a43b907275 Sync Strings from Localazy (#5249)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-09-01 12:44:49 +02:00
ElementBot
a4cee52815 Sync Strings from Localazy (#5178)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-08-18 11:09:27 +02:00
ElementBot
badbc5189e Sync Strings (#5146)
* Sync Strings from Localazy

* Remove unused WelcomeView.

* Remove unused WelcomeView.

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-08-11 12:49:29 +00:00
Jorge Martin Espinosa
a87bbdd91c Delegate call notifications to Element Call, upgrade SDK and EC embedded (#5119)
* Stop sending call notifications manually: the Element Call widget can now assume responsibility for sending them when you start a call.

* Upgrade SDK version to `v25.8.5`, fix API breaks

* Upgrade Element Call embedded to `v0.14.1`

* Fix tests and lint issues

* Add `RoomListEntriesDynamicFilterKind.NonSpace` to avoid displaying spaces in the room list

---------

Co-authored-by: Robin <robin@robin.town>
2025-08-05 15:14:51 +00:00
bmarty
a2c8107b44 Sync Strings from Localazy 2025-08-04 00:34:11 +00:00
Jorge Martin Espinosa
7958bb4692 Prevent crash caused by re-release of wakelock in calls (#5077) 2025-07-25 13:36:23 +02:00
bmarty
06312b2e4a Sync Strings from Localazy 2025-07-22 20:46:13 +02:00
bmarty
fcacfa87c1 Sync Strings from Localazy 2025-07-14 00:33:09 +00:00
ElementBot
1944004409 Sync Strings from Localazy (#4983)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-07-04 14:37:59 +00:00
bmarty
2e8f8ec057 Sync Strings from Localazy 2025-06-30 00:33:54 +00:00
Jorge Martin Espinosa
3c9b2144cd Element Call: remove top app bar and add it inside the webview instead (#4927)
Co-authored-by: ElementBot <android@element.io>
2025-06-27 08:41:10 +02:00
Jorge Martin Espinosa
b500d135b0 Display error dialog if Element Call can't be joined (#4919) 2025-06-25 08:43:29 +02:00
Benoit Marty
7f60fde9dc Remove default param for Avatar.avatarType 2025-06-23 21:36:53 +02:00
bmarty
e826ed726f Sync Strings from Localazy 2025-06-16 00:31:39 +00:00
Jorge Martin Espinosa
024a6b4f90 Disable BT audio devices for Element Call on Android < 12 (#4876)
Display an error dialog muting the call when a bluetooth audio device is selected on Android 11 or lower, re-enable the audio once another device is used.
2025-06-13 16:29:07 +02:00
Benoit Marty
efb1fd8bab Merge pull request #4861 from element-hq/feature/bma/doc
Add documentation on WebViewPipController
2025-06-11 16:24:22 +02:00
ganfra
d2e2080489 Merge pull request #4855 from element-hq/feature/fga/deps_rust_sdk_25.06.10
deps (matrix rust sdk) : bump version to 25.06.10
2025-06-10 17:08:57 +02:00
Jorge Martin Espinosa
bd22b58c7b Element Call: add delay before selecting the default audio device (#4854) 2025-06-10 16:17:05 +02:00
ganfra
2b318277c6 deps (matrix rust sdk) : bump version to 25.06.10 2025-06-10 16:01:20 +02:00
Jorge Martin Espinosa
b1c33063b4 Fix crash when using Element Call on API <= 30 (#4847) 2025-06-09 17:48:37 +02:00
Jorge Martin Espinosa
55805bcfee Element Call: Add audio output selector handled by Android (#4663)
- Add onUrlLoaded callback to WebViewWidgetMessageInterceptor
- Add WebViewAudioManager component and use it instead of the AudioManager extension functions
- Enable controlling the audio devices in Element Call from the OS instead of automatically detecting them
- Simplify the window flags in ElementCallActivity
- Work around the issue where the default audio device wasn't using the right audio stream
- Add onAudioPlaybackStarted, use it to start the audio-device related logic
2025-06-09 09:12:53 +02:00
Jorge Martin Espinosa
2b75a29c43 Add extra logs the 'send call notification' flow (#4819) 2025-06-05 13:34:45 +02:00
Benoit Marty
03e23477b7 Fix coroutine scope (#4820)
* Inject the session scope instead of the application scope where it's possible.

* Create AppCoroutineScope annotation to let developers explicitly choose the appropriate CoroutineScope when injecting one.
2025-06-04 15:33:51 +00:00
Jorge Martin Espinosa
58a3ea8b1f Add catchingExceptions method to replace runCatching (#4797)
- Add `runCatchingExceptions` and `mapCatchingExceptions` to replace `runCatching` and `mapCatching`.
- Make `tryOrNull { ... }` catch only exceptions too.
- Apply the changes to the whole project.
- Add new Rust fakes for tests to handle the code that's now unblocked - previously it just threw an `UnsatisfiedLinkError` which we ignored.
- Add a new `detekt-rules` project with a `RunCatchingRule` to prevent `runCatching` and `mapCatching` usages.
2025-06-04 09:02:26 +02:00