Commit Graph

38 Commits

Author SHA1 Message Date
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
Benoit Marty
2a4726e611 Remove FakeLeaveRoomPresenter 2024-10-07 17:46:18 +02:00
Benoit Marty
724c183639 Remove dependencies to other presenters to FullScreenIntentPermissionsPresenter.
Also do some renaming since FullScreenIntentPermissionsPresenter interface can be removed.
2024-10-07 17:45:18 +02:00
Jorge Martin Espinosa
2efdb3ae45 Centralise the DI code generation logic (#3562)
* Create Anvil extension helper

* Use the helper everywhere
2024-09-30 12:20:28 +00:00
Jorge Martin Espinosa
8154aa3319 Add banner for optional migration to simplified sliding sync (#3429)
* Add banner for optional migration to native sliding sync

- Add `MatrixClient.isNativeSlidingSyncSupported()` and `MatrixClient.isUsingNativeSlidingSync` to check whether the home server supports native sliding sync and we're already using it.
- Add `NativeSlidingSyncMigrationBanner` composable to the `RoomList` screen when the home server supports native sliding sync but the current session is not using it.
- Add an extra logout successful action to the logout flow, create `EnableNativeSlidingSyncUseCase` so it can be used there.

* Update screenshots

* Make sure the sliding sync migration banner has lower priority than the encryption setup ones

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-09-09 18:13:19 +02:00
Benoit Marty
2b016227e9 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Benoit Marty
e74b3757da Remove the migration screen. #3292 2024-09-04 12:11:31 +02:00
Benoit Marty
e3c7e37f23 When user manually mark a room as read, also dismiss the notifications for this room. 2024-07-16 13:10:30 +02:00
Jorge Martin Espinosa
950e502ca6 Improve screenshot testing with ComposablePreviewScanner (#3125)
* Use ComposablePreviewScanner to rework how screenshot testing works
* Add test sharding
* Update screenshots
* Fixes for Element Gallery

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
2024-07-03 13:05:06 +02:00
Benoit Marty
038b60a271 Merge pull request #3044 from element-hq/feature/bma/testDefaultClearCacheUseCase
Add test on DefaultClearCacheUseCase
2024-06-18 10:27:45 +02:00
Jorge Martin Espinosa
feef0f6976 Add full screen intent permissions banner (#3024)
* Add full screen intent permissions banner, creating `:libraries:fullscreenintent` modules.
* Add it to notification settings too:
    - Create `libraries:fullscreenintent` modules for the permission presenter and associated data.
    - Add the presenter and states to `NotificationSettingsPresenter` and `NotificationSettingsView`.
* Use the right API to check for full screen intent permissions.
- Use the right package name for `:libraries:permission` contents.
* Fix broken tests (flaky?)
* Ignore coverage verification for fake and small presenters

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-06-18 07:41:10 +00:00
Benoit Marty
64433ea209 Move InMemoryMigrationScreenStore to a test module. 2024-06-17 15:26:50 +02:00
ganfra
b09269333d RoomList invites : update and remove tests 2024-04-16 15:45:57 +02:00
ganfra
28361be6e8 Room navigation : rename module invitelist to invite 2024-04-08 17:22:13 +02:00
ganfra
4052abf15c Analytics : add analytics on read status and favorite toggles 2024-02-19 17:38:17 +01:00
Benoit Marty
f6e4f073a3 Fix test in release. 2024-02-08 11:34:54 +01:00
Benoit Marty
8a3f33ce1a Add test for RoomListContextMenu 2024-02-08 11:34:54 +01:00
Benoit Marty
ca91b23512 Add ability mark as unread / mark as read a room. 2024-02-08 11:33:43 +01:00
Benoit Marty
0c99a457e4 Add RoomListConfig to be able to hide menu items. And hide them #2062. 2023-12-19 15:10:22 +01:00
Benoit Marty
eb82c245ad Secure backup: create a feature flag (disabled) 2023-10-31 21:52:33 +01:00
Benoit Marty
bb55a5676c Secure backup 2023-10-27 12:18:40 +02:00
Benoit Marty
6f49e670fb Remove not used dependencies to some accompanist libraries. 2023-10-10 13:48:10 +02:00
Benoit Marty
3a570aab78 Follow naming convention and cleanup the module. 2023-09-29 17:06:58 +02:00
Benoit Marty
ac1d355f65 Cleanup: there are no androidTest on those modules. 2023-07-24 12:41:02 +02:00
Yoan Pintas
8ab32bfaa0 Add analytics tracking for some screens (#698) 2023-06-29 13:39:34 +00:00
Benoit Marty
82e566175a 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
Benoit Marty
4cb9843415 Now that the composer as been removed, we do not need element resource module anymore. 2023-06-27 13:34:55 +02:00
Benoit Marty
70df081840 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
67a8802766 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
Chris Smith
2171f1a8ab Show badges for new invites (#355)
Show badges for new invites

Closes #238
2023-05-04 15:30:55 +00:00
Jorge Martin Espinosa
798bedcaed [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
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
c1f80cda80 Create LoggedIn presenter 2023-04-05 16:58:33 +02:00
Benoit Marty
581ec6a1af Use presenter factory 2023-04-05 16:31:09 +02:00
Benoit Marty
b911229f53 Create noop version for the minimal sample and test. 2023-04-05 16:27:17 +02:00
Benoit Marty
500d4801a7 Add permission modules 2023-04-05 16:25:27 +02:00
Jorge Martin Espinosa
d9183e4092 Display most recent activity in room list (#220)
* Create `RoomLastMessageFormatter` to produce readable room summaries.

* Add unit tests using Robolectric, fix bugs

* Add changelog

* Move `RoomLastMessageFormatter` back to `impl` module, allow it to receive an `EventTimelineItem` instead of `MessageContent`.
2023-03-20 11:18:25 +01:00
ganfra
7051bfc14e [Architecture] split all feature modules to api/impl 2023-03-08 16:13:45 +01:00