Commit graph

473 commits

Author SHA1 Message Date
Benoit Marty
bdcafde2ce Sync string again 2025-08-04 14:50:08 +02:00
bmarty
ee77c646eb Sync Strings from Localazy 2025-08-04 00:34:11 +00:00
Jorge Martin Espinosa
4534229e84
Fix crash when trying to get active notifications (#5085)
Sometimes something goes wrong when unmarshalling them
2025-07-29 15:40:58 +02:00
bmarty
0fb0861bc1 Sync Strings from Localazy 2025-07-28 00:33:43 +00:00
renovate[bot]
040fde7f22
Update dependency org.matrix.rustcomponents:sdk-android to v25.7.23 (#5073)
* Update dependency org.matrix.rustcomponents:sdk-android to v25.7.23

* Adapt to SDK changes:

- Add 'creator' role, adapt existing logic to it.
- Remove `ReplyParameters`, replace with `EventId` where possible.
- Fix changes in OIDC auth methods.
- Add more join rules.

* Make sure both creators and users with power level >= 150 are displayed as 'owners' in the room member list.

* Don't close the roles and permissions screen if the user is a creator

* Use `MediaPreviewValue.DEFAULT` for `MediaPreviewConfig.DEFAULT` too

* Improve APIs around checking roles and power levels:
    - Ensure `RoomInfo.RoomPowerLevels.users` can't be directly used to check power levels since it can't check the power levels for creators.
    - Add a few helper functions to handle actions that relied on the previous `users` property, and docs to explain their usages.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-07-24 11:58:30 +02:00
Jorge Martin Espinosa
7c982a30cb
Add fallback notifications from UTDs to the push history (#5047) 2025-07-23 08:55:41 +02:00
bmarty
8ffbfd82e8 Sync Strings from Localazy 2025-07-22 20:46:13 +02:00
renovate[bot]
4b10920507
Update dependency org.matrix.rustcomponents:sdk-android to v25.7.7 (#4989)
Make sure we distinguish between notification events that were filtered out and those that couldn't be resolved.

---

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-07-07 17:56:51 +02:00
ElementBot
d9ede0544c
Sync Strings from Localazy (#4983)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-07-04 14:37:59 +00:00
ganfra
26a19d6f99 Merge branch 'develop' into feature/fga/csam_preferences_server 2025-07-01 09:50:48 +02:00
ganfra
773fa1657a Merge branch 'develop' into feature/fga/csam_preferences_server 2025-06-30 21:42:06 +02:00
ganfra
ca46166c67 change (media preview config) : final refactoring and tests 2025-06-30 21:31:58 +02:00
Benoit Marty
dd188e6cc7 Fix test regression on API 33. 2025-06-30 17:01:03 +02:00
bmarty
284241a4ec Sync Strings from Localazy 2025-06-30 00:33:54 +00:00
ganfra
5332246bde change (media preview config) : use the new apis 2025-06-26 20:52:44 +02:00
Jorge Martin Espinosa
fb1d0760b7
Simplify syncing the room list when receiving a push (#4915) 2025-06-24 10:24:05 +02:00
Benoit Marty
3d8a641f1c Update wording of generic notification. 2025-06-18 18:00:50 +02:00
Benoit Marty
c5f7546b50 Add missing test for UnableToResolve case. 2025-06-18 14:27:28 +02:00
Benoit Marty
295485796f Fix test after wording change. 2025-06-18 14:19:57 +02:00
Benoit Marty
d8f271de8e Remove string duplication 2025-06-17 16:55:03 +02:00
Benoit Marty
594d66f512 Add missing unit test on DefaultPushService 2025-06-17 16:38:56 +02:00
Benoit Marty
017664f672 Ensure that the battery optimization banner is not displayed after an internal clear cache. 2025-06-17 16:31:35 +02:00
Benoit Marty
0a58fb3c59 Update wording of notification_fallback_content (from localazy) 2025-06-17 16:15:49 +02:00
Benoit Marty
05134656d5 Notification: ensure that a notification is displayed when a Push cannot be resolved.
Previously the error was logged and added to push history but no notification was shown, so the user fully miss the new message.
2025-06-17 16:00:31 +02:00
Benoit Marty
8f94b4cd0e
Merge pull request #4845 from element-hq/feature/bma/batteryOptimization
Add a banner to ask the user to disable battery optimization when Event cannot be resolved from Push
2025-06-16 11:19:15 +02:00
Benoit Marty
751f7e766c Rename DoAction to more specific RequestDisableOptimizations 2025-06-16 10:49:26 +02:00
ElementBot
520c1293b6
Sync Strings from Localazy (#4842)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-06-11 14:13:33 +02:00
Benoit Marty
a9ca08f9aa Add unit tests on AndroidBatteryOptimization 2025-06-11 11:26:26 +02:00
Benoit Marty
1197241fce Add fallback to ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS if ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS fails. 2025-06-10 16:55:06 +02:00
Benoit Marty
6fbde3d407 Avoid using the Activity, and use eventSink instead of lambda in states. 2025-06-10 16:01:19 +02:00
Benoit Marty
9956ed60e6 Use defined const instead of magic numbers. 2025-06-09 15:26:26 +02:00
Benoit Marty
7deed4cc86 Add a banner to ask the user to disable battery optimization when Event cannot be resolved from Push. 2025-06-09 15:09:00 +02:00
ganfra
a873e71879
misc (matrix) : use innerClient.subscribeToRoomInfo sdk method (#4838) 2025-06-09 09:10:38 +02:00
Jorge Martin Espinosa
b880a118a1
Log the push resolving failure reason if available (#4835) 2025-06-06 16:06:46 +00:00
Benoit Marty
5f191d9f9c
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
Benoit Marty
58d503f661
Mark room as fully read when user goes back to the room list. (#2687)
* Remove not helping warning.

* Add and improve tests

* Send the `m.fully_read` read marker when the user navigates back to the room list, to mark the room as read.
2025-06-04 16:14:29 +02:00
Jorge Martin Espinosa
efdc10e60a
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
ElementBot
87c376cfb6
Sync Strings from Localazy (#4804)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-06-02 12:05:08 +02:00
ElementBot
e8f29a38bf
Sync Strings (#4775) 2025-05-30 08:47:39 +00:00
Jorge Martin Espinosa
f455085e08
Notification events resolving and rendering in batches (#4722)
- Use `NotiticationService.getNotifications()` function so we resolve the events in bulk.
- Added `NotifierResolverQueue` to group the notifications to resolve based on a debounce strategy.
- Batch rendering of these events as notifications.
2025-05-26 17:10:20 +02:00
Jorge Martin Espinosa
9b9d75aa5f
Add ActiveRoomsHolder to manage the active rooms for a session (#4758) 2025-05-26 11:03:55 +00:00
Benoit Marty
8d115213cc
Reduce API of JoinedRoom, caller must use the Timeline API from liveTimeline instead. (#4731)
This removes lots of boilerplate code.
2025-05-20 09:07:43 +02:00
ElementBot
34e88f30ae
Sync Strings (#4739)
* Sync Strings from Localazy

* Sync strings again

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2025-05-19 08:17:02 +00:00
Jorge Martin Espinosa
c39b480f82
Keep call notification ringing while a call is present in the room (#4634) 2025-05-09 11:38:43 +02:00
ElementBot
bfa05ece67
Sync Strings from Localazy (#4677)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-05-05 12:11:22 +02:00
ElementBot
847f8fcbf6
Sync Strings from Localazy (#4648)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-04-28 10:59:35 +02:00
Jorge Martin Espinosa
619aa6f2de
Split MatrixRoom into BaseRoom and JoinedRoom (#4561)
`JoinedRoom` will now contain both a mandatory live timeline reference and all the functionality associated to it.

`BaseRoom` on the other hand will contain only functionality that's shared for both joined and not joined rooms.

`NotJoinedRoom` is a wrapper around `RoomPreviewInfo` data and a possible local `BaseRoom`, if it exists.

The `RustRoomFactory` cache is now gone since the persistent event cache should have the same effect.
2025-04-23 15:53:40 +02:00
ganfra
566457af2b
Merge pull request #4622 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-25.x
fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.4.22
2025-04-22 15:21:38 +02:00
ganfra
7c0318e5fe change (sdk) : add topic string to NotificationContent.StateEvent.RoomTopic 2025-04-22 14:53:37 +02:00
Jorge Martin Espinosa
3b35d96e1a
Fix ringing calls not stopping when the other user cancels the call (#4613)
* Fix ringing calls not being automatically canceled

This will keep the sync active while the user is screening an incoming call, allowing receiving a call cancellation event, which will terminate the incoming call ringing early.

* Add extra logs to help debugging ringing call issues.
2025-04-22 11:30:10 +00:00