Commit Graph

425 Commits

Author SHA1 Message Date
bmarty
d288ace4bd Sync Strings from Localazy 2024-07-29 00:26:27 +00:00
ElementBot
9522569860 Sync Strings (#3232)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-07-22 08:59:47 +00:00
Benoit Marty
94f38f1af5 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
1dcdde98c2 Reduce the risk of text truncation in buttons. 2024-07-17 17:46:36 +02:00
Benoit Marty
eec4b626d0 Fix quality (Konsist failure) 2024-07-16 16:29:33 +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
176755ac33 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
bb47ff8f49 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
a3de1e769b 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]
8aa4fbdade 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
4c135a1111 Add icon for "Mark as read" and "Mark as unread" action. 2024-07-05 10:12:11 +02:00
jmartinesp
58f2cbf489 Sync Strings from Localazy 2024-07-03 11:21:27 +00:00
bmarty
99ae2b9640 Sync Strings from Localazy 2024-07-01 00:22:10 +00:00
Benoit Marty
4598e69a42 Cleanup 2024-06-24 16:05:43 +02:00
Benoit Marty
f3a5d65808 Improve room filtering behavior. 2024-06-24 15:36:23 +02:00
ElementBot
072daa080a Sync Strings (#3077)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-06-24 09:29:35 +02:00
Benoit Marty
b122c2c0a0 Code simplification. 2024-06-20 16:21:56 +02:00
Benoit Marty
7cdcf872b3 Create extension RoomSummaryDetails.getAvatarData to avoid code duplication. 2024-06-20 16:16:55 +02:00
Benoit Marty
9f7f0b9acb Use extension MatrixUser.getAvatarData and fix compilation issue. 2024-06-20 16:06:33 +02:00
Benoit Marty
042ba6b35e Use heroes to render room avatars 2024-06-20 14:14:05 +02:00
Benoit Marty
11e4ee34ed Use heroes to render room avatars 2024-06-20 13:10:25 +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
bmarty
57510316ec Sync Strings from Localazy 2024-06-10 00:17:04 +00:00
bmarty
f501f27d27 Sync Strings from Localazy 2024-06-03 00:24:07 +00:00
Benoit Marty
a00ee18f96 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
cdf6f48112 Change Test class suffix. 2024-05-30 10:11:18 +02:00
Benoit Marty
0e4b30e58d Merge pull request #2941 from element-hq/sync-localazy
Sync Strings
2024-05-29 16:27:17 +02:00
bmarty
46b6ae6251 Sync Strings from Localazy 2024-05-29 12:44:57 +00:00
Benoit Marty
87689d787e 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
8cd392a2b8 Merge branch 'develop' into renovate/io.nlopez.compose.rules-detekt-0.x 2024-05-28 08:59:36 +02:00
Benoit Marty
bbb44db297 Translations: pt -> pt-rBR 2024-05-27 14:51:32 +02:00
bmarty
52be64fe73 Sync Strings from Localazy 2024-05-27 00:17:53 +00:00
Joe Groocock
a5e97475bf 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
9fa8d97d57 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
102025f1a6 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
Jorge Martin Espinosa
0e05a0e4ed Session falsely displayed as 'verified' with no internet connection (#2884)
* Session falsely displayed as 'verified' with no internet connection
	- Remove the need to wait for `isReady` for `SessionVerificationService.canVerifySessionFlow` to fix this.
	- Rename `SessionVerificationService.canVerifySessionFlow` to `needsSessionVerification`.
	- Make `isReady` private.
2024-05-21 11:41:18 +00:00
bmarty
0241014932 Sync Strings from Localazy 2024-05-20 00:23:05 +00:00
Benoit Marty
7b70cac7c5 Rework Modifier.applyIf.
It was using `Modifier.composed` which is not good for performance and detekt is warning about this.
2024-05-17 17:00:27 +02:00
bmarty
602b3988e4 Sync Strings from Localazy 2024-05-13 12:47:48 +00:00
Jorge Martin Espinosa
9aadec8435 Enforce mandatory session verification only for new logins (#2811)
* Enforce mandatory session verification only for new logins

- Creates `AppMigration` base interface as a way to isolate migration logic, app migrations must implement this interface.
- Creates `AppMigration01` with the existing logs removal migration and `AppMigration02` with the logic to allow existing sessions to skip verification.
- Add `DefaultSessionPreferencesStoreFactory.remove(sessionId)` to allow a ephemeral session store access to exist outside the `SessionScope` for this new migration.

* Fix tests

* Add more tests.

This also includes creating several abstractions.

* Review changes.

- Make `orderedMigrations` a class property, `migrations` just a constructor parameter to avoid incorrect usages.
- Create `lastMigration` property too, use it instead of `MIGRATION_VERSION`.
2024-05-07 14:06:34 +00:00
bmarty
d2eb0d9820 Sync Strings from Localazy 2024-05-06 00:19:35 +00:00
Benoit Marty
66cfaf97c9 Open user profile and room with event from permalink 2024-05-02 12:25:21 +02:00
bmarty
7383ac6678 Sync Strings from Localazy 2024-04-29 00:18:59 +00:00
Benoit Marty
2b121d97ac Remove flag RoomListFilters.
This is also fixing the filter reset issue when going back to the room list.
2024-04-25 15:55:29 +02:00
Benoit Marty
f1a31e3b3c Ensure roomId are not rendered in the UI.
Add preview to see the effect.
Use RoomAvatar data fallback everywhere, to not use roomId (`!` char) for the avatar initial, but rather `#`.
2024-04-25 11:52:40 +02:00
bmarty
e37cbad059 Sync Strings from Localazy 2024-04-22 00:18:11 +00:00
Benoit Marty
0938935d16 Rename Preview to follow code convention 2024-04-19 14:30:45 +02:00
Benoit Marty
cdcd5c2d5e Remove empty line and ensure check.sh script run ktlint. 2024-04-19 10:02:39 +02:00