Commit Graph

46 Commits

Author SHA1 Message Date
Jorge Martin Espinosa
96e34cb8ee Add user verification and verification state violation badges (#4392)
* Move `observeRoomMemberIdentityStateChange` and associated classes to `libs:matrixui` module so they can be reused

* Add `EncryptionService.getUserIdentity` method to retrieve not only if the user is verified or not, but in which state they are

* Fix `IdentityChangePresenter` after the previous changes

* Fix `withFakeLifecycleOwner` and add `testWithLifecycleOwner` helper

* Display verified badge in DM top app bar when possible

* Display a verification violation warning icon next to the 'People' item in room details screen

* Display either a verified badge or a verification violation warning icon next to the room members in the room member list screen

* Display either a verified badge or a verification violation warning and withdraw verification button in the room member profile.

Generic user profiles won't display verification state anymore since we can't easily track changes in it.

* Add preview for room member details screen with verification violation identity state

* Add verified and violation badge to the `Profile` list item in room details screen

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-03-12 12:22:53 +01:00
Jorge Martin Espinosa
b91933625c Implement user verification (#4294)
* Add support for starting verification of a user

* Add support for replying to incoming user verification requests

* Add reset recovery key button and previews to `ChooseSelfVerificationModeView`

* Add 'Profile' item in room details screen

* Update screenshots

* Remove `showDeviceVerifiedScreen` parameter from `NavTarget.UseAnotherDevice`

* Allow exiting the FTUE flow, which will close the app. The previous state will be restored when the app is reopened.

* When outgoing verification fails, move to the `Canceled` state. Then, when resetting the state machine state also reset the verification service.

---------

Co-authored-by: ElementBot <android@element.io>
2025-03-10 11:20:17 +01:00
bmarty
9456ee921d Sync Strings from Localazy 2025-03-10 00:28:38 +00:00
bmarty
3dddd90d97 Sync Strings from Localazy 2025-02-17 00:30:17 +00:00
Benoit Marty
0d6d74512f Use ElementTheme instead of MaterialTheme 2025-02-06 15:10:15 +01:00
Benoit Marty
686467b4a0 Add missing preview. 2025-02-05 12:15:29 +01:00
Benoit Marty
bfcc741312 Display a confirmation dialog before creating a DM. 2025-02-05 09:32:33 +01:00
bmarty
5a4cac7d2d Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
bmarty
d419f2fdff Sync Strings from Localazy 2025-01-27 00:25:38 +00:00
Jorge Martin Espinosa
6bfd28b1d8 Remove or replace unnecessary BackHandler calls (#4148)
* Remove/replace `BackHandler` calls:

- For `UserProfileView`, remove the redundant `BackHandler` -> `navigateUp()` call.
- For `SetupBiometricView`, remove the `enabled = true` parameter, as this is the default value.
2025-01-15 10:43:26 +01:00
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
bmarty
7a57ec1cc1 Sync Strings from Localazy 2024-12-23 00:16:39 +00:00
bmarty
01855f09a9 Sync Strings from Localazy 2024-12-09 00:30:45 +00:00
Benoit Marty
4e688021cc Merge pull request #3967 from element-hq/feature/bma/mediaModule
Rework on media module
2024-12-02 14:41:36 +01:00
bmarty
545b4f500c Sync Strings from Localazy 2024-12-02 00:30:02 +00:00
Benoit Marty
b05d9507ea Move code to the impl module 2024-11-29 09:24:50 +01:00
ElementBot
411895456b Sync Strings - add translations to Finnish (#3883)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2024-11-18 11:37:17 +00:00
bmarty
fed502957b Sync Strings from Localazy 2024-11-04 00:27:46 +00:00
Benoit Marty
328ef75d10 Change wording to "Verify identity" 2024-10-29 21:49:08 +01:00
bmarty
8cf5729ece Sync Strings from Localazy 2024-10-28 00:27:09 +00:00
Benoit Marty
200ae60a8b Verified user badge.
Add disable action to verify user.
2024-10-22 14:09:35 +02:00
Benoit Marty
639089718d Move strings with key starting by screen_room_member_details_ to the module :features:userprofile:shared 2024-10-22 10:18:44 +02:00
Benoit Marty
98a99ead5c Remove unnecessary padding, the Column already have a padding. 2024-10-22 10:18:44 +02:00
bmarty
f19ea02390 Sync Strings from Localazy 2024-10-21 00:27:20 +00:00
Benoit Marty
2c94df3647 No need for UserProfilePresenterHelper anymore. 2024-10-17 14:13:48 +02:00
Benoit Marty
9b82c6df1c Let RoomMemberDetailsPresenter use UserProfilePresenter to reduce code duplication. 2024-10-17 14:12:18 +02:00
bmarty
05291bcf2f Sync Strings from Localazy 2024-10-07 00:28:33 +00: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
bmarty
5765d9bf9f Sync Strings from Localazy 2024-08-19 00:25:36 +00:00
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
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
e730c2c213 Fix issue in avatar rendering and add a preview. 2024-06-21 15:45:22 +02:00
Benoit Marty
174d45f4dd Rename parameter roomId to dmRoomId for clarity. 2024-06-03 18:24:03 +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
8967b6c959 Merge pull request #2922 from element-hq/feature/bma/iterateOnPreferenceDesign2
Iterate on preference design
2024-05-28 00:36:28 +02:00
Benoit Marty
bbb44db297 Translations: pt -> pt-rBR 2024-05-27 14:51:32 +02:00
Benoit Marty
a57b9cb49f Let Preference composables use ListItem.
Let PreferenceCheckbox use ListItem and add missing previews.
Let PreferenceCategory use ListSectionHeader
Let PreferenceSlide use ListItem
Let PreferenceRow use ListItem
Let PreferenceText use ListItem
2024-05-27 12:19:10 +02:00
bmarty
0241014932 Sync Strings from Localazy 2024-05-20 00:23:05 +00:00
bmarty
602b3988e4 Sync Strings from Localazy 2024-05-13 12:47:48 +00:00
Jorge Martin Espinosa
2e93d842c7 UX cleanup: DM details screen (#2820)
* UX cleanup: user profile.

- Move send DM to a CTA button.
- Add 'Call' CTA button too when there is a DM with that user and a call is possible.
- Add missing tests.

* Update screenshots

* Add tests for clicking on the avatar

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-05-08 16:05:02 +02:00
Jorge Martin Espinosa
17f5b0fe77 UX cleanup: DM details screen (#2817)
* UX cleanup: DM details screen

Reuse `MainActionsSection` for DMs too, hiding the Share CTA in that case.

* Update screenshots

* Fix tests

---------

Co-authored-by: ElementBot <benoitm+elementbot@element.io>
2024-05-08 12:49:44 +02:00
Benoit Marty
66cfaf97c9 Open user profile and room with event from permalink 2024-05-02 12:25:21 +02:00