Commit graph

592 commits

Author SHA1 Message Date
Jorge Martin Espinosa
67e262fdc8
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
f61df38e55 Migrate license to AGPL.
Run script `uv run license-editor --repository ../element-x-android`
2024-09-06 17:19:19 +02:00
Benoit Marty
faa2f8108c Remove the migration screen. #3292 2024-09-04 12:11:31 +02:00
bmarty
5ad2764402 Sync Strings from Localazy 2024-09-02 00:15:17 +00:00
Benoit Marty
d93762bbd0 Increase test coverage of securityBannerState() 2024-08-30 09:15:53 +02:00
Benoit Marty
ad8e8305eb Add banner entry point to set up recovery 2024-08-29 18:34:55 +02:00
bmarty
cd267249ec Sync Strings from Localazy 2024-08-26 00:25:40 +00:00
Benoit Marty
f2b38e50e3 Add test on function name which may start or end with spaces and fix existing issues. 2024-08-20 17:11:30 +02:00
bmarty
3e67448006 Sync Strings from Localazy 2024-08-19 00:25:36 +00:00
ElementBot
8bd48fdc60
Sync Strings (#3297)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-08-12 06:03:23 +00:00
ganfra
0b32dbebb5 tests : refactor some classes 2024-07-31 21:14:29 +02:00
bmarty
76804d9e48 Sync Strings from Localazy 2024-07-29 00:26:27 +00:00
ElementBot
1f01bd73c4
Sync Strings (#3232)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-07-22 08:59:47 +00:00
Benoit Marty
5bda29ca7e
Rework FakeMatrixRoom so that it contains only lambdas. (#3229)
* Upgrade lint to 8.7.0-alpha01

* FakeMatrixRoom: lambda everywhere

Fix test compilation issues
2024-07-22 10:39:48 +02:00
Benoit Marty
13853a39a5 Reduce the risk of text truncation in buttons. 2024-07-17 17:46:36 +02:00
Benoit Marty
83a366af2a Fix quality (Konsist failure) 2024-07-16 16:29:33 +02:00
Benoit Marty
85ceb0296c 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
5944f112fb
Subscribe to RoomListItems in the visible range (#3169)
* Subscribe to `RoomListItems` in the visible range

This ensures the room list items always have updated info.
2024-07-11 10:54:56 +02:00
Jorge Martin Espinosa
0be7058416
Unify the way we decide whether a room is a DM or a group room (#3100)
* Add centralised 'room is DM' check

Also add extension functions for `MatrixRoom` and `MatrixRoomInfo`.

* Use the centralised method and extension functions through the app, including:

- Room list.
- Room details screen.
- Invites.
- Notifications.

Replace most `isDirect` usages with `isDm`.

* Update screenshots

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-07-10 16:28:46 +00:00
Jorge Martin Espinosa
d9a498c86a
Reduce delay when selecting room list filters (#3160)
Previously, this had to wait for a recomposition until it was launched, which took ~100ms in a debug build. With these changes, the side effect is emitted in 10-20ms instead.
2024-07-08 11:42:38 +00:00
renovate[bot]
68efc918ba
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.31 (#3145)
* Update dependency org.matrix.rustcomponents:sdk-android to v0.2.31

* Use new Rust client side sorting API

* Make `RoomListEntriesUpdate.describe()` an extension function

* Remove `RoomListSummary.Filled` and `RoomListSummary.Empty`

* Fix icon sizes to pass the lint checks

* Update screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-07-05 15:25:42 +00:00
Benoit Marty
f5ad2abdd3 Add icon for "Mark as read" and "Mark as unread" action. 2024-07-05 10:12:11 +02:00
jmartinesp
dabaa2d265 Sync Strings from Localazy 2024-07-03 11:21:27 +00:00
Jorge Martin Espinosa
b0cebf5ca0
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
bmarty
32c5da898b Sync Strings from Localazy 2024-07-01 00:22:10 +00:00
Benoit Marty
c0a6bcf2f7 Cleanup 2024-06-24 16:05:43 +02:00
Benoit Marty
6589fef196 Improve room filtering behavior. 2024-06-24 15:36:23 +02:00
ElementBot
fd6bcb7857
Sync Strings (#3077)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-06-24 09:29:35 +02:00
Benoit Marty
98f218a2b3 Code simplification. 2024-06-20 16:21:56 +02:00
Benoit Marty
7d0323d708 Create extension RoomSummaryDetails.getAvatarData to avoid code duplication. 2024-06-20 16:16:55 +02:00
Benoit Marty
33c76dfd2d Use extension MatrixUser.getAvatarData and fix compilation issue. 2024-06-20 16:06:33 +02:00
Benoit Marty
99c90f1ced Use heroes to render room avatars 2024-06-20 14:14:05 +02:00
Benoit Marty
ad02e05bf4 Use heroes to render room avatars 2024-06-20 13:10:25 +02:00
Benoit Marty
849f64f4aa
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
b741c32e91
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
b916aee958 Add test on DefaultClearCacheUseCase 2024-06-17 16:01:56 +02:00
Benoit Marty
efa7a2d046 Move InMemoryMigrationScreenStore to a test module. 2024-06-17 15:26:50 +02:00
bmarty
f3d286911c Sync Strings from Localazy 2024-06-10 00:17:04 +00:00
bmarty
66636ea967 Sync Strings from Localazy 2024-06-03 00:24:07 +00:00
Benoit Marty
3fa508f1fe Add Konsist test Class with 'ContributeBinding' annotation should have allowed prefix and fix exissting issues.
Also remove annotation `DefaultPreferences`, we only have one implementation.
2024-05-31 10:18:08 +02:00
Benoit Marty
ec8cb2e32f Change Test class suffix. 2024-05-30 10:11:18 +02:00
Benoit Marty
f5a0e83cb2
Merge pull request #2941 from element-hq/sync-localazy
Sync Strings
2024-05-29 16:27:17 +02:00
bmarty
ca5bc71057 Sync Strings from Localazy 2024-05-29 12:44:57 +00:00
Benoit Marty
37d9a9f5a9 Lambda parameters in a composable function should be in present tense, not past tense.
https://mrmans0n.github.io/compose-rules/rules/#naming-parameters-properly
2024-05-29 12:18:23 +02:00
Benoit Marty
683f7d4748
Merge branch 'develop' into renovate/io.nlopez.compose.rules-detekt-0.x 2024-05-28 08:59:36 +02:00
Benoit Marty
b3e0f6e843 Translations: pt -> pt-rBR 2024-05-27 14:51:32 +02:00
bmarty
f24e537580 Sync Strings from Localazy 2024-05-27 00:17:53 +00:00
Joe Groocock
b852578ffc
Animate room list filters when clearing
They animate cleanly back to their original locations now, and correctly
overlap each other when doing so. The only thing that is mildly jarring
is the reappearing chips, but there's no way to animate appearance in
the current version of jetpack compose, so that'll have to be fixed
later.

Signed-off-by: Joe Groocock <me@frebib.net>
2024-05-21 22:29:34 +00:00
Joe Groocock
7aa9d856b8
Animate room filter colours
This is much closer to how iOS looks, and is much nicer on the eyes.

Signed-off-by: Joe Groocock <me@frebib.net>
2024-05-21 22:29:33 +00:00
Joe Groocock
eb97bce6c6
Ensure selected/deselected filters stay on top
This looks a little more "sane", and more closely matches what iOS does
with it's filter chips. This has to manually track which filters were
"just-deselected" and move those even higher up the z stack to ensure
they appear above even when sliding right. This is because the order is
determined by the position left-to-right of the _final_ destination of
the chip. In this case we want anything that's either currently
selected, or was selected and is still fading out to appear on top.

Signed-off-by: Joe Groocock <me@frebib.net>
2024-05-21 22:16:39 +00:00