Commit graph

76 commits

Author SHA1 Message Date
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
Benoit Marty
c919618bc0
Fix account provider change on nightly and release (#861)
* Use parallelMap (same code)

* Add proguard rules. Fixes #818

* Rename file proguard-rules.pro to consumer-rules.pro for coherency.

* Remove empty and non-referenced proguard files.
2023-07-13 14:46:57 +02:00
ganfra
d77ff60f03 Coroutine: remove diffUpdateDispatcher, not used anymore 2023-07-11 11:40:55 +02:00
Benoit Marty
f0910a4e2a Fix compilation issue of minimal app. 2023-07-06 14:19:49 +02:00
Benoit Marty
8f6d351054 Waitlist screen 2023-07-05 15:57:39 +02:00
ganfra
3aa5cce8dc Timeline: use val instead of fun for flows 2023-06-29 18:03:12 +02:00
Benoit Marty
f4b4e4d316 Configure user agent for all network request (#677) 2023-06-29 13:05:23 +02:00
Marco Romano
354374ed49 MatrixRoom API refinement (#719)
- `syncUpdateFlow` becomes a `val` and always returns the same instance of the underlying `StateFlow` instead of different `Flow` instances to allow consumers not to remember the `Flow` and not to specify an unneeded initial value.
- `timeline` becomes a `val` as it already always returns the same instance.
- Amends calling code accordingly
- Removes a few unneeded `val`s in `RustMatrixClient
- Fixes a small bug in `MessagesPresenter` that allowed to sometime show a newly created room's name as "Empty room" (changes `LaunchedEffect(syncUpdateFlow)` to `LaunchedEffect(syncUpdateFlow.value)`)
2023-06-29 10:48:55 +02:00
ganfra
8e5c2a749a Merge branch 'develop' into feature/fga/room_list_api 2023-06-28 15:14:06 +02:00
Benoit Marty
4d0f58568f Room list: tweak UI and add overflow menu with report bug and invite friends action.
Extract invite friends action to a use case to avoid copy paste.
2023-06-27 19:23:37 +02:00
Jorge Martin Espinosa
a16335b4b7 [Compound] Integrate compound tokens (#586)
* Added tokens.

* Apply color to MaterialTheme, also add typography.

* Map colors to the right ones in the themes.

* Create and improve previews of some components

* More preview improvements

* Add `tertiary` and `onTertiary` colors, remove some unused ones.

* Fix usage of deleted color token

* Fix bug in Switch previews

* Create a separate `:libraries:theme` module to keep everything related to colors, typography and Compound in general.

* Fix `DatePickerPreview`

* Add missing Compound generated files by fixing their package name

* Move `ElementTheme` to the `:libraries:theme` module, make some variables internal.

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2023-06-27 16:15:40 +00:00
ganfra
812880a148 RoomList: fix tests and sample 2023-06-27 14:06:58 +02:00
ganfra
34f5e0597a Merge branch 'develop' into feature/fga/room_list_api 2023-06-27 10:47:50 +02:00
Benoit Marty
9829daa70e Add logs. 2023-06-26 11:06:36 +02:00
ganfra
cb219e6292 Room/Timeline: simplify the apis 2023-06-21 16:25:18 +02:00
Benoit Marty
9b4b9e9140 Introduce simulateLongTask to ensure that the Presenter State Loading is visible.
Also do some cleanup on the tests.
2023-06-15 10:57:05 +02:00
Benoit Marty
0c64921f10 Merge pull request #549 from vector-im/feature/bma/onboardingServer
Onboarding iteration
2023-06-13 09:21:50 +02:00
Benoit Marty
fee86b281e Rename nodes and organize by package into screens subpackage for clarity 2023-06-09 17:38:04 +02:00
Benoit Marty
896075eb47 Fix compilation of minimal app. 2023-06-07 14:40:02 +02:00
ganfra
c0def1c3dc Media actions: add more tests 2023-06-06 22:08:57 +02:00
Benoit Marty
ed18d2b343 Merge pull request #494 from vector-im/feature/bma/checkCode
Check code
2023-06-01 11:53:53 +02:00
Benoit Marty
d4284f167a Fix compilation issue. 2023-05-31 15:47:24 +02:00
Benoit Marty
142c459861 Fix compilation and test 2023-05-30 15:59:58 +02:00
Benoit Marty
a77ff69a65 Merge pull request #443 from vector-im/feature/bma/timelineStateEventFormatting
Timeline state event formatting
2023-05-26 10:43:10 +02:00
Benoit Marty
2898d830d8 Fix warning "Use version catalog instead" 2023-05-25 15:04:01 +02:00
Benoit Marty
66baf1632e Extract to sub classes 2023-05-25 14:16:23 +02:00
Benoit Marty
abf7089cea Inject StringProvider instead of context. 2023-05-25 14:16:23 +02:00
Benoit Marty
9d66af834d Move RoomLastMessageFormatter and related class and resource to the new module eventformatter, in order to prepare rendering of state event in the timeline. 2023-05-25 14:15:35 +02:00
Marco Romano
0dee0784ba Room list contextual menu (#427)
- Adds `ModalBottomSheet` to our design components (it wraps the homonimous Material3 one).
- Adds  a bottom sheet to the Room list using the aforementioned design component.
- Adds navigation from the room list to a room detail (context menu "Settings" action).
- Consolidates the "leave room flow" into a new `leaveroom` module used by both the room list and the room details.
  - Adds progress indicator to the leave room flow
- Uses new `leaveroom` module in `roomdetails` module too. 

Parent issue:
- https://github.com/vector-im/element-x-android/issues/261
2023-05-25 06:42:44 +00:00
Benoit Marty
457b83184a Use default material3 version again and cleanup @OptIn annotations.
Material3 is now 1.1.0
2023-05-15 12:28:31 +02:00
Chris Smith
92e9d3a127 Fix a few FFI leaks (#405)
Fix a few FFI leaks

These are instances where we obtain an FFIObject and don't call
Close on it to release the underlying reference on the Rust side.

The worst instance here was leaking an object per room member
every time we refreshed the member list
2023-05-12 10:50:39 +00:00
Chris Smith
ee909fcbd8 Show badges for new invites (#355)
Show badges for new invites

Closes #238
2023-05-04 15:30:55 +00:00
Jorge Martin Espinosa
d391275420 [Room List] Show offline indicator when the device is offline (#239)
* Implement the network status indicator.

* Add `networkmonitor` feature.
2023-04-17 17:01:16 +02:00
Jorge Martin Espinosa
de010545fb 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
b982d24bab Create LoggedIn presenter 2023-04-05 16:58:33 +02:00
Benoit Marty
08fa22069b Use presenter factory 2023-04-05 16:31:09 +02:00
Benoit Marty
9c6bc8d872 Create noop version for the minimal sample and test. 2023-04-05 16:27:17 +02:00
Jorge Martin Espinosa
3aea24380a [Room Details] Leave room (#296)
* Add leave room functionality to the Room Details screen

* Add snackbar message throught `SnackbarDistpacher`
2023-04-05 15:36:41 +02:00