Commit graph

132 commits

Author SHA1 Message Date
Benoit Marty
c4e0370f41 Copyright: run command uv run license-editor --repository ../element-x-android 2025-11-10 10:09:26 +01:00
Benoit Marty
afdfe28ef4 Remove dependency on AppNavigationStateService from DefaultUnifiedPushCurrentUserPushConfigProvider 2025-10-23 15:37:31 +02:00
Benoit Marty
263e761907 Remove @Inject, not necessary anymore when class is annotated with @ContributesBinding 2025-10-22 18:52:37 +02:00
Benoit Marty
df48ed5a2d Introduce JsonProvider.
It will ensure that classes are using the correct Json instances in the unit tests.
2025-10-20 09:40:42 +02:00
Benoit Marty
b01de9efa7 Fix tests. 2025-10-16 18:16:48 +02:00
Benoit Marty
7c437761c4 Move Json provider from Network module to AppModule to reuse it. 2025-10-16 16:37:08 +02:00
Benoit Marty
a02b2283af
Merge pull request #5443 from element-hq/renovate/org.unifiedpush.android-connector-3.x
fix(deps): update dependency org.unifiedpush.android:connector to v3.1.0
2025-10-10 17:52:33 +02:00
Benoit Marty
7ce4b47203 Improve current push provider test: give info about the distributor. 2025-10-07 15:17:59 +02:00
Benoit Marty
9436ea55a3 Fix API break in tests. 2025-10-06 22:39:33 +02:00
Benoit Marty
8d5078904a Introduce runAndTestState extension on NotificationTroubleshootTest 2025-09-23 09:46:21 +02:00
Benoit Marty
a83fc2aa1d Add default value for Failure.hasQuickFix 2025-09-23 09:13:45 +02:00
Benoit Marty
fa14e4c106 Add notification troubleshoot test about blocked users. 2025-09-23 08:59:40 +02:00
bmarty
8027ce9dca Sync Strings from Localazy 2025-09-05 07:44:19 +00:00
Jorge Martín
e8328858ab Fixes after rebase 2025-09-04 16:49:21 +02:00
Jorge Martín
badd8aa8a1 Fix push notification bindings 2025-09-04 16:49:21 +02:00
Jorge Martín
29a97fc0d9 Fix lint issues and restore commented out code 2025-09-04 16:49:18 +02:00
Jorge Martín
b76a71ebf5 Start migrating Anvil KSP to Metro 2025-09-04 16:48:34 +02:00
bmarty
284241a4ec Sync Strings from Localazy 2025-06-30 00:33:54 +00:00
Benoit Marty
624bf7bc49 Create a loggerTag val. 2025-06-11 14:54:46 +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
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
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
e8f29a38bf
Sync Strings (#4775) 2025-05-30 08:47:39 +00:00
Benoit Marty
61075c7a9b
Update UnifiedPush library (#4358)
* Upgrade `com.github.UnifiedPush:android-connector` from 2.4.0 to 3.0.4

* Do not use jitpack to get the unified push library

* implementation is ok

* Exclude com.google.crypto.tink to fix a compilation issue

* Fix tests.

* Update log.

* Revert "Exclude com.google.crypto.tink to fix a compilation issue"

This reverts commit f431ebe3b78a06282e0ee74c9f428702d463df45.

* Fix compilation issue after rebase.

* Exclude com.google.crypto.tink again.

* Try version 3.0.8

* Use latest version 3.0.9

* Replace tink exclusion with dependency resolution

---------

Co-authored-by: Jorge Martín <jorgem@element.io>
2025-05-26 14:56:54 +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
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
Benoit Marty
7ed362b9db
Push: improve Push history screen, log and stored data (#4601)
* Add adb tools to help with doze mode and app standby

* Add info about the device state when an error occurs in push.

* Keep more events in the DB.

* Push history: add confirmation dialog when resetting the data

* Push history: add a filter to see only the errors

* Update screenshots

* Push history: print out invalid/ignored data received.

* Increase log level for push, to make such log more visible.
It also appears that sometimes Timber.d are not present in the rageshakes.

* Log priority

* Do not include device state for invalid/ignored event.

* Fix tests.

* Fix format issue.

* Fix mistake in code blocks and do not filter when not necessary.

* Improve formatting and add missing unit test.

* Reduce nesting of blocks.

---------

Co-authored-by: ElementBot <android@element.io>
2025-04-16 16:37:32 +02:00
ElementBot
d9bfcc6c52
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
Benoit Marty
c7f0566dc1
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
Benoit Marty
5cab146eed Give ability to configure the UnifiedPush default push gateway. 2025-03-12 17:10:33 +01:00
bmarty
9a75f40855 Sync Strings from Localazy 2025-03-10 00:28:38 +00:00
Benoit Marty
43ee582213 Sync strings again.
Revert wrong change on Hungarian plurals.
2025-02-17 11:29:49 +01:00
bmarty
f549e7bba2 Sync Strings from Localazy 2025-02-17 00:30:17 +00:00
bmarty
be91da966a Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
Benoit Marty
97f3be3dc5 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
Benoit Marty
bbe0f10286 UnifiedPush: extract logic to resolve the gateway url and unit test it. 2024-12-31 10:01:39 +01:00
Benoit Marty
bfdedb9405 Add test on VectorUnifiedPushMessagingReceiver.onReceive 2024-12-31 09:38:44 +01:00
Benoit Marty
59bcca0966 Add missing tests on DefaultUnifiedPushGatewayResolver 2024-12-31 09:32:09 +01:00
Benoit Marty
c47713b105 Fix issue with logger. 2024-12-30 13:20:06 +01:00
Benoit Marty
70326d9dc5 Ensure that when no Matrix gateway exists, the default one is used. 2024-12-30 13:18:37 +01:00
ElementBot
bc59a70043
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
f0aca004ba Change signature of getCurrentDistributor. 2024-11-15 15:18:28 +01:00
Benoit Marty
719e4b43be Add missing test for UnifiedPushProvider 2024-11-15 14:50:56 +01:00
Benoit Marty
7a7b5d2dd0 Properly unregister from the ntfy app when the user logs out. 2024-11-15 12:43:57 +01:00
Benoit Marty
022cd93653 UnifiedPush: also invoke UnifiedPush.unregisterApp when endpoint == null || gateway == null 2024-11-15 12:43:55 +01:00
Benoit Marty
9f5a8a3497 UnifiedPush: unregister the application using the correct instance. 2024-11-15 12:43:53 +01:00
Benoit Marty
6bde224695 Add quick fix in notification troubleshot test to perform a Firebase token rotation 2024-10-30 11:54:10 +01:00
Jorge Martin Espinosa
366db4791b
Upgrade Kotlin to v2.0 (#3594)
* Bump Kotlin to v2.0

* Fix lots of issues due to the upgrade: lint issues, function signature incompatibilities, broken tests, etc.

---------

Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-10-10 08:32:00 +00:00
bmarty
bb0a281342 Sync Strings from Localazy 2024-09-16 18:40:24 +00:00