Commit Graph

35 Commits

Author SHA1 Message Date
Jorge Martin Espinosa
801f0b955d Notifications: simplify the flow by removing persistence (#2924)
* Notifications: simplify the flow by removing persistence. 
* Bump of minSdk to `24` (Android 7).
* Add migration to remove `notification.bin` file
2024-05-29 08:03:23 +00:00
Benoit Marty
84c8a8577b Add test on DefaultPushService 2024-05-22 14:29:35 +02:00
Benoit Marty
7945297a28 Create dedicated module for notification troubleshoot. 2024-04-02 18:12:36 +02:00
Benoit Marty
8588ce7a72 Troubleshoot notifications screen 2024-04-02 16:15:00 +02:00
Benoit Marty
9605a783a2 Use new retrofit bom and change Maven coordinates of kotlinx-serialization 2024-03-25 09:56:30 +01:00
Benoit Marty
47dc03082e Add test for DefaultNotificationDrawerManager 2023-11-27 16:44:47 +01:00
Benoit Marty
a8e640d1dd Add coverage for NotificationBitmapLoader 2023-11-27 16:44:47 +01:00
Benoit Marty
fc7898ca36 Add tests for NotifiableEventResolver 2023-11-23 17:36:23 +01:00
Benoit Marty
9746df6797 Move PushConfig to the appconfig module. 2023-11-14 10:26:16 +01:00
Benoit Marty
79806852ca Move Knit to Gradle catalog and use alias(libs.plugins.kotlin.serialization). Fix issue with JNA 2023-11-13 09:58:00 +01:00
Benoit Marty
765ede0093 Replace hard-coded value by value from gradle datalog 2023-11-10 16:25:58 +01:00
renovate[bot]
dd57197f32 Update kotlin (#1697)
* Update kotlin

* Lower Sonar RAM usage, remove redundant `Dkotlin.daemon.jvm.options`

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-11-08 12:58:14 +00:00
Jorge Martin Espinosa
a06bea4d71 Element Call SPA integration (#1283)
* Integrate Element Call into EX, being able to open its URLs and handle the call in-app.
* Add custom scheme support with format `element:call?url=...`.
* Update androix.webkit
* Silence the foreground service notification.
- Allow foreground service tap action to re-open the ongoing call.
- Unify notification small icons in different modules using a vector one.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-09-15 16:39:44 +02:00
renovate[bot]
78eb7aea81 Update kotlin to 1.9.10 (#1123)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-08-30 08:28:06 +02:00
renovate[bot]
541562ee61 Update kotlin - TO BE MERGED AFTER THE RELEASE (#789)
* Update kotlin

* Update kotlinc.xml

* Update ksp

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Marco Romano <marcor@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2023-08-17 08:58:10 +00:00
Benoit Marty
fb587d279c Stop using deprecated LocalBroadcastManager. We will implement the code when we will work on the troubleshoot notification screen. 2023-07-20 17:39:55 +02:00
Jorge Martin Espinosa
e61af2eb7d Fix: make sure we ignore notifications for open rooms (#867)
* Make sure we ignore notifications for open rooms
- Listen to process lifecycle changes in `AppForegroundStateService`. Use initializers to reliable create it.
- Merge `AppNavigationState` with `AppForegroundState`. Renamed the previous `AppNavigationState` to `NavigationState`, created a new `AppNavigationState` which contains both the navigation state and the foreground state.
2023-07-17 17:02:06 +02:00
Jorge Martin Espinosa
9170c5eb71 Display room invitation notification (#735)
* Notifications: Add some extra mappings so we keep the original contents and can pass it later to an UI layer

* Fix notifications not appearing for a room if the app was on that room when it went to background.

* Modernize how we create spannable strings for notifications, remove unneeded dependency

* Remove actions from invite notifications temporarily

* Add `NotificationDrawerManager` interface to be able to clear membership notifications when accepting or rejecting a room invite

* Fix tests

* Add comment to clarify some weird behaviours

* Address review comments

* Set circle shape for `largeBitmap` in message notifications

* Fix no avatar in DM rooms

* Fix rebase issues

* Add invite list pending intent:

- Refactor pending intents.
- Make `DeepLinkData` a sealed interface.
- Fix and add tests.

* Rename `navigate__` functions to `attach__`

* Add an extra test case for the `InviteList` deep link

* Address most review comments.

* Fix rebase issue

* Add fallback notification type, allow dismissing invite notifications.

Fallback notifications have a different underlying type and can be dismissed at will.

* Fix tests
2023-07-10 14:34:58 +02:00
renovate[bot]
016c27450a Update kotlin 2023-06-28 22:23:44 +00:00
Benoit Marty
99204ce9e6 Fix compilation issue after rebase. 2023-06-01 17:02:48 +02:00
Benoit Marty
afa06fb03e Notifications: render room and user icons. 2023-06-01 12:23:53 +02:00
renovate[bot]
87e57f5b51 Update kotlin 2023-05-03 17:40:41 +00:00
renovate[bot]
9f88cb4886 Update kotlin 2023-04-21 16:29:06 +02:00
Jorge Martin Espinosa
afd58f1634 Update Gradle to 8.1 and AGP to v8.0 (#329)
* Update AGP to 8.0.0.

* Set JAVA_HOME to JDK17

* Update lint version.

* Use right JDK for dependency analysis, replace deprecated env var.

* Upgrade to Gradle 8.1.

* Remove `@Supress(DSL_SCOPE_VIOLATION)` as it's no longer needed.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-17 08:49:52 +00:00
Benoit Marty
245c46c8b8 Cleanup 2023-04-12 10:06:11 +02:00
Benoit Marty
219b97eea7 Split push module into several modules: Firebase, UnifiedPush, store 2023-04-12 09:48:56 +02:00
Benoit Marty
bec41f1c6a Move dependency declaration to the gradle catalog. 2023-04-12 09:41:22 +02:00
Benoit Marty
68769a21e2 Cleanup up string for push and notification (before integrating to Localazy) 2023-04-05 16:59:17 +02:00
Benoit Marty
7e7aca4a53 Add some tests (mainly imported from EA). Also change type from String to SessionId, RoomId, etc. 2023-04-05 16:59:17 +02:00
Benoit Marty
c0ef4804a1 Persist notification data. Note that it will break the key storage for the session database. 2023-04-05 16:59:17 +02:00
Benoit Marty
0c0f7dff40 Making progress on notification for multi account. 2023-04-05 16:59:17 +02:00
Benoit Marty
500d4801a7 Add permission modules 2023-04-05 16:25:27 +02:00
Benoit Marty
cb0cc70102 Fix compilation after rebase 2023-04-05 16:18:44 +02:00
Benoit Marty
bc7fb0a2bb Push: be able to test Push
Create `:libraries:network`
2023-04-05 16:18:44 +02:00
Benoit Marty
64f4740029 Import some stuff about Push and notification from Element Android - WIP 2023-04-05 16:18:44 +02:00