Commit graph

100 commits

Author SHA1 Message Date
Jorge Martin Espinosa
41287c5f59
Move session verification to FTUE flow, make it mandatory (#2594)
* Move session verification to the FTUE
* Allow session verification flow to be restarted
* Use `EncryptionService` to display session verification faster
* Remove session verification item from settings
* Remove session verification banner from room list
* Remove 'verification needed' variant from the `TimelineEncryptedHistoryBanner`
* Improve verification flow UI and UX
* Remove 'verification successful' snackbar message
* Only register push provider after the session has been verified
* Hide room list while the session hasn't been verified
* Prevent deep links from changing the navigation if the session isn't verified
* Update screenshots
* Renamed `FtueState` to `FtueService`, created an actual `FtueState`.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-04-03 14:53:17 +00:00
Benoit Marty
ef7553a6f6 Fix compilation of minimal app. 2024-04-02 15:06:59 +02:00
ganfra
3f1f764745 Room directory : add tests and cleanup 2024-03-28 17:03:34 +01:00
Benoit Marty
9302b65053 Fix compilation of minimal. 2024-03-15 12:00:16 +01:00
ganfra
bf68261ed9 RoomList: refactor and fix tests 2024-03-12 15:38:33 +01:00
ganfra
bd87e99df1 RoomListFilters : use kotlin filtering as rust one is slower and has more chance to bust the room list cache. 2024-02-27 16:24:54 +01:00
Benoit Marty
ec007a2b21 Provide global proxy to the SDK 2024-02-23 11:49:35 +01:00
ganfra
57f99a9090
Merge pull request #2422 from element-hq/feature/fga/room_list_filters
[Feature] Room list filters
2024-02-22 22:59:28 +01:00
ganfra
f18e8030bf Merge develop into feature/fga/room_list_filters 2024-02-22 11:15:43 +01:00
Benoit Marty
fd555b1070 Move getAdditionalCertificates function to a dedicated class (no change in the implementation). 2024-02-22 11:09:55 +01:00
Benoit Marty
3f7d4ae0e5 Fix compilation issue on minimal. 2024-02-21 18:30:57 +01:00
Benoit Marty
99b8efbeff Go directly to the enter recovery key screen when coming from the banner which ask the user to do so. 2024-02-21 18:30:57 +01:00
Benoit Marty
4bc977d8dc Introduce SecurityBannerState to replace Boolean set.
Also get the sessionVerificationService from the matrixClient, instead of injecting it separately.
2024-02-21 18:30:08 +01:00
ganfra
7b018f7099 Merge branch 'develop' into feature/fga/room_list_filters 2024-02-20 21:22:25 +01:00
ganfra
448acd3d49 RoomListFilters : fix sample compilation 2024-02-20 21:18:17 +01:00
ganfra
b814a101b5 Fix sample compilation 2024-02-20 10:59:13 +01:00
Benoit Marty
f372fd27cf Add test for RoomListEvents.DismissRecoveryKeyPrompt.
Also get the encryptionService from the matrixClient, instead of injecting it separately.
2024-02-19 13:36:08 +01:00
ganfra
e6424289a4 RoomList : fix sample compilation 2024-02-16 19:45:11 +01:00
Benoit Marty
9d461a4917 Add ability mark as unread / mark as read a room. 2024-02-08 11:33:43 +01:00
Jorge Martin Espinosa
d06e5c23cb
Move migration screen to within the room list (#2361)
* Rename migration bg drawable and add night variant
* Move `migration` package from `ftue` to `messages:impl` module
* Update `SunsetPage` with light and dark modes
* Fix bloom colors when nested theme is used
* Integrate the migration screen in the room list
* Fix `WaitListView` cancel button color
* Clear migration store when removing the app's cache

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-02-08 10:01:08 +00:00
Benoit Marty
cccfdfbcc7 Restore branch and git sha, to use it in logs and in rageshakes.
Remove quite useless `gitRevisionDate`.
2024-01-25 14:16:21 +01:00
Benoit Marty
473922240e Fix compilation of sample app. 2024-01-22 14:04:57 +01:00
Benoit Marty
3a91f830da Encrypt databases used by the Rust SDK.
The passphrase is stored in the SessionData, so that a Session created by Element Android can be restored.
Existing sessions will have a null passphrase and will continue to work.
New session will use a passphrase, only on Nightly and Debug build for now.
2024-01-18 12:07:42 +01:00
Benoit Marty
fa05b18d32 Create gplay and fdroid variant 2024-01-11 21:42:04 +01:00
Benoit Marty
5d086ad82d Fix moar ktlint issues 2024-01-11 10:02:10 +01:00
renovate[bot]
c8bd362397
Update plugin ktlint to v12.1.0 (#2200)
* Update plugin ktlint to v12.1.0

* Run `./gradlew ktlintFormat` and fix some issues manually.

* Fix other issues reproted by Ktlint

* Limit false positives, KtLint removes unnecessary curly brace in String templates.

* Remove useless Unit

* Minor improvements over ktlint changes

* Restore `AlertDialogContent` behaviour

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-01-10 16:22:24 +01:00
Benoit Marty
bc7745e7b6 Fix compilation issue on minimal app. 2023-11-30 13:55:55 +01:00
Jorge Martin Espinosa
087d2728d5
Extract compound tokens and theming to compound-android library (#1888)
* Replace tokens & icons with the external Compound ones

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-11-27 10:30:07 +01:00
Benoit Marty
5013ff061e Secure backup: create a feature flag (disabled) 2023-10-31 21:52:33 +01:00
Benoit Marty
9807ebf649 Secure backup 2023-10-27 12:18:40 +02:00
Marco Romano
33f5c8efb8
Add global context.cacheDir provider. (#1606)
## Type of change

- [ ] Feature
- [ ] Bugfix
- [x] Technical
- [ ] Other :

## Content

Dagger now provides the app's `cacheDir` when requesting a `@CacheDirectory File`  type.

## Motivation and context

To support some upcoming code that needs the `cacheDir` to be changed during tests.
2023-10-19 14:07:45 +02:00
Benoit Marty
88ca37984f
Merge pull request #1520 from vector-im/feature/bma/sessionDb
Improve session db and improve deleted session behavior
2023-10-11 16:56:54 +02:00
Benoit Marty
8929a90970 Konsist: add test to ensure filename match top level Composable View, and fix existing issue 2023-10-10 15:39:22 +02:00
Benoit Marty
1a99fd9a62 Fix compilation issue in sample app. 2023-10-10 10:20:49 +02:00
Benoit Marty
124d6bf95f SignedOut mode - WIP 2023-10-10 10:20:31 +02:00
Benoit Marty
1c7db1de85 Ensure http url entered by the user are provided to the SDK without being altered.
Also change values in `LoginConstants`, this was not really correct.
2023-09-28 10:22:08 +02:00
David Langley
7a7cc2692e Fix test compilation 2023-09-14 19:28:56 +01:00
Benoit Marty
128c4a7b09
SDK 0.1.49: notification decryption is now fully handled by the Rust SDK. (#1231)
* Revert "Ensure the sync is started when receiving a Push, to ensure that the encryption loop is running."

This reverts commit 82f6f358a7.

* Integrate SDK from https://github.com/matrix-org/matrix-rust-sdk/pull/2505

* Enable retryDecryption() on the NotificationClient.

* SDK 0.1.49 - Encryption Sync is enabled by default now, and retryDecryption is the default too.

* Remove feature flag `UseEncryptionSync`

* Fix sample project build

* Exclude `DeveloperSettingsPresenter` from kover verification.

* Add changelog

---------

Co-authored-by: Jorge Martín <jorgem@element.io>
2023-09-06 11:33:36 +02:00
Benoit Marty
4766e0cc8f Fix compilation of sample app. 2023-09-04 14:23:03 +02:00
Jorge Martin Espinosa
199f578e4a
Re-enable SyncService.withEncryptionSync to improve decryption of notifications (#1199)
* Re-enable `SyncService.withEncryptionSync` to improve decryption of notifications.

* Add feature flag
2023-08-31 13:37:20 +02:00
ganfra
a911134636
Update rust sdk to 0.1.42 (changes in tracing and sync apis) (#1055)
* Update rust sdk to 0.1.42 (changes in tracing and sync apis)

* Fix sample compilation

---------

Co-authored-by: ganfra <francoisg@element.io>
2023-08-11 21:32:31 +00:00
ganfra
fa51f6eaa7
Feature/fga/sync states (#1042)
* Change RoomSummaryDataSource to RoomListService to better reflects the rust api

* Better Sync management

* Sync: improve sync spinner rendering

* Sync: make test compiles

* Sync: add more test for sync spinner

* Sync: more clean-up

* Sync: pr review

---------

Co-authored-by: ganfra <francoisg@element.io>
2023-08-09 12:37:43 +00:00
ganfra
e8d1f21a14
Feature/fga/rust sdk tracing (#1036)
* Align TracingConfiguration with iOS

* Create TracingTree from rust sdk

* tracing: create a working configuration with RustTracingTree

* Tracing: WIP implementation of new api

* Tracing: clean up

* Tracing: use the latest api

* Tracing: some more clean up

* Remove generated logcat file after compressing it

---------

Co-authored-by: ganfra <francoisg@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2023-08-09 10:18:49 +00:00
ganfra
ac7412c2d8
Feature/fga/matrix client versions (#1022)
* Extract a RustMatrixClientFactory

* Use serverVersions api on client builder to speed up startup.

* Clean up

* Fix compilation of sample

---------

Co-authored-by: ganfra <francoisg@element.io>
2023-08-02 18:56:26 +00:00
ganfra
e35bb73a86 Rework some MatrixRoom api and fix rust 'destroyed' crash 2023-07-25 12:06:36 +02:00
ganfra
60d0b5c134 Merge branch 'develop' into feature/fga/fix_room_list_scroll_position 2023-07-18 23:07:10 +02:00
ganfra
74db23e51b RoomList: fix sample compilation 2023-07-18 22:36:26 +02:00
ganfra
bb12338583 RoomList: introduce RoomListDataSource so we keep the data in memory as long as the node is in the backstack. 2023-07-18 22:09:50 +02:00
ganfra
9b96bd427c Update rust sdk : start branching new SyncService (wip) 2023-07-17 22:26:21 +02:00
ganfra
d77ff60f03 Coroutine: remove diffUpdateDispatcher, not used anymore 2023-07-11 11:40:55 +02:00