Commit Graph

431 Commits

Author SHA1 Message Date
ElementBot
270b420575 Sync Strings (#4590)
* Sync Strings from Localazy

* Fix strings usage after some were moved

* Fix Norwegian string that was causing lint to fail

* Update screenshots

---------

Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-04-14 11:24:28 +02:00
ganfra
ce0bac55c5 Merge pull request #4574 from element-hq/feature/fga/advanced_settings_moderation_and_safety
change (preferences) : new moderation and safety settings
2025-04-11 14:38:46 +02:00
Benoit Marty
a1d8322738 Introduce PushHistoryService to store data about the received push (#4573)
* Introduce PushHistoryService to store data about the received push

Add a push database.

* Update screenshots

* Improve preview.

* Update screenshots

* Add missing test.

* Add test for PushHistoryView

* Fix configuration issue.

Was: w: /libraries/troubleshoot/impl/src/test/kotlin/io/element/android/libraries/troubleshoot/impl/history/PushHistoryPresenterTest.kt:35:27 Cannot access class 'PushProvider' in the expression type. While it may work, this case indicates a configuration mistake and can lead to avoidable compilation errors, so it may be forbidden soon. Check your module classpath for missing or conflicting dependencies.

---------

Co-authored-by: ElementBot <android@element.io>
2025-04-11 12:56:54 +02:00
ganfra
497022291b Merge branch 'develop' into feature/fga/advanced_settings_moderation_and_safety 2025-04-10 18:32:04 +02:00
ganfra
119d09c494 change (preferences) : move from dev settings to advanced settings and add new safety values 2025-04-08 20:27:47 +02:00
renovate[bot]
9981ae7b1e fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.4.7 (#4548)
* fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.4.8

* Fix API breaks:

- Add `ReplyParameters` class and parameters to send functions.
- Remove outdated OIDC related values.
- Stop pre-processing the timeline to add the timeline start item, this is already done by the SDK.

* Use the new function to reply to messages in a quick reply from a notification, however:

1. We don't have the thread id value at the moment since the SDK does not provide it yet.
2. The replied to event id wasn't being passed from the notification info.

* Remove also timeline start virtual item for DMs, since this wasn't present before either

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-04-08 14:21:49 +02:00
Benoit Marty
13a0467da2 Update wording for push provider support test. (#4079) (#4553) 2025-04-08 12:01:52 +02:00
Jorge Martin Espinosa
e45151d9d1 Add WakeLock to dismiss ringing call screen when call is cancelled (#4478)
* Add `WakeLock` to dismiss ringing call screen when call is cancelled

We had already some checks in place to automatically cancel a ringing call notification/screen when the call was no longer active, but the `RoomInfo` updates weren't being processed because the app was 'paused'.

The partial wakelock should ensure these room info updates are handled.

* Add mutual exclusion to `ActiveCallManager` methods to improve thread safety
2025-04-02 09:51:39 +00:00
ElementBot
2c62c44c11 Sync Strings from Localazy (#4506)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-03-31 10:58:46 +02:00
Jorge Martin Espinosa
1659572950 Update SDK version to 25.03.13 and fix breaking changes (#4406)
Breaking changes addressed:
* Make `MatrixClient.getNotificationSettings()` async, cache its result.
* Use `RoomInfo` for accessing the updated room's info.
* Refactor `MatrixRoom` so it always receives an initial `MatrixRoomInfo` value: this value will be used to make `MatrixRoom.roomInfoFlow` a `StateFlow` so we can assume the initial updated Room data will be present.
* Fetch encryption state when loading a room if it's unknown
2025-03-19 12:52:57 +01:00
Jorge Martin Espinosa
e2afa9a691 Add Google Tink dependency, replacing androidx.security.crypto (#4405)
* Add Google Tink dependency, replacing `androidx.security.crypto`

* Replace the `EncryptedFile` implementation too

* Extract constants, add some more docs
2025-03-17 10:04:21 +01:00
bmarty
9456ee921d Sync Strings from Localazy 2025-03-10 00:28:38 +00:00
Benoit Marty
7258b05a3c Rename ic_notification_small to ic_notification 2025-03-07 14:21:09 +01:00
Benoit Marty
3a09d1c4ca Migrate to coil3 2025-03-03 12:30:26 +01:00
bmarty
7fca7d2b12 Sync Strings from Localazy 2025-03-03 00:29:16 +00:00
Jorge Martin Espinosa
0d2e651c1b Use Settings.System.DEFAULT_RINGTONE_URI for ringing notifications (#4310)
* Use `Settings.System.DEFAULT_RINGTONE_URI` for ringing notifications

This replaces `RingtoneManager.getActualDefaultRingtoneUri`, it should get the same audio file and avoid some reported issues about not having permission to load the audio file.
2025-02-27 12:57:43 +00:00
Benoit Marty
83ede0f774 Sync strings again.
Revert wrong change on Hungarian plurals.
2025-02-17 11:29:49 +01:00
bmarty
3dddd90d97 Sync Strings from Localazy 2025-02-17 00:30:17 +00:00
Jorge Martin Espinosa
c040cec108 Create SyncOrchestrator (#4176)
* Create `SyncOrchestrator` to centralise the sync start/stop flow through the whole app: the decision is based on several inputs: sync state, network available, app in foreground, app in call, app needing to sync an event for a notification.

* Make network monitor return network connectivity status, not internet connectivity

* Don't stop the `SyncService` when network connection is lost, let it fail instead. This prevents an issue when using the offline mode of the SDK, which made the wrong UI states to be shown when the `SyncState` is `Idle` (that is, after the service being manually stopped).

* Rename `NetworkStatus.Online/Offline` to `Connected/Disconnected` so they're not easily mistaken with internet connectivity instead
2025-02-06 16:36:57 +01:00
Benoit Marty
8edffc5167 Update incoming call notification content to "📹 Incoming call" 2025-02-04 16:20:53 +01:00
Benoit Marty
0409ed84ed Enable Offline mode of the SyncService, so that the sync starts automatically when the network is back.
Also rely on the sync state to render the "Offline" banner.
2025-02-03 18:27:32 +01:00
Benoit Marty
9a386af9bc Fix incoming call notification content (related to #4225) 2025-02-03 15:21:58 +01:00
bmarty
5a4cac7d2d Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
bmarty
24fd0a3911 Sync Strings from Localazy 2025-01-13 00:30:35 +00:00
Benoit Marty
05fc76822a Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
bmarty
7a57ec1cc1 Sync Strings from Localazy 2024-12-23 00:16:39 +00:00
bmarty
01855f09a9 Sync Strings from Localazy 2024-12-09 00:30:45 +00:00
bmarty
545b4f500c Sync Strings from Localazy 2024-12-02 00:30:02 +00:00
Benoit Marty
14d42010fb Merge pull request #3916 from element-hq/feature/bma/notificationActions
Enable all notification actions: quick reply, accept/decline invite, mark as read from notification.
2024-11-26 18:01:37 +01:00
Benoit Marty
6fc572d48e Ensure that the SDK is syncing during an incoming call so that the application can detect if the call has been answered on another session.
This is dealing with the case the application is not in foreground.
2024-11-22 19:46:57 +01:00
Benoit Marty
c1868ebd14 naming convention 2024-11-22 15:45:41 +01:00
Benoit Marty
41f0278735 Check that action to accept or reject an invitation is added to the notification. 2024-11-22 14:51:07 +01:00
Benoit Marty
c6e6960fc0 Code iteration for parity with other Factories. 2024-11-22 14:05:48 +01:00
Benoit Marty
1049a1584a Rename const for clarity and convention 2024-11-22 14:04:27 +01:00
Benoit Marty
90fd10329f Change wording of quick action for invitations. 2024-11-22 14:00:34 +01:00
Benoit Marty
e6474bffb7 Fix test 2024-11-21 21:51:19 +01:00
ElementBot
411895456b Sync Strings - add translations to Finnish (#3883)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-11-18 11:37:17 +00:00
Benoit Marty
8e3c44b60b Change signature of getCurrentDistributor. 2024-11-15 15:18:28 +01:00
Benoit Marty
40e727f2e4 Change signature of selectPushProvider and add missing unit test. 2024-11-15 15:13:24 +01:00
Benoit Marty
6b4cd0ca96 Add missing test for DefaultPushService 2024-11-15 15:04:47 +01:00
Benoit Marty
844e0216bd Properly unregister from the ntfy app when the user logs out. 2024-11-15 12:43:57 +01:00
Benoit Marty
0171b796bb Update the strings for unsupported calls 2024-11-12 10:20:21 +01:00
Benoit Marty
839254cea1 Notification with image: provide the mimetype if available. 2024-11-06 11:07:59 +01:00
Benoit Marty
08b60a4d64 Add a message in the notification for the caption. Fixes #2602 2024-11-06 11:07:59 +01:00
bmarty
fed502957b Sync Strings from Localazy 2024-11-04 00:27:46 +00:00
Benoit Marty
a6fdb90838 Add quick fix in notification troubleshot test to perform a Firebase token rotation 2024-10-30 11:54:10 +01:00
bmarty
8cf5729ece Sync Strings from Localazy 2024-10-28 00:27:09 +00:00
Benoit Marty
2724815d79 Fix other API change: body renamed to filename 2024-10-16 16:09:32 +02:00
Benoit Marty
95a49a626d Merge pull request #3574 from element-hq/feature/bma/improveMediaModel
Clarify model for Event with attachment
2024-10-16 14:57:05 +02:00
bmarty
29a489df0b Sync Strings from Localazy 2024-10-14 00:27:28 +00:00