Commit graph

1714 commits

Author SHA1 Message Date
Jorge Martin Espinosa
51f67741ae
Adapt 'change roles' screens to the new creator/owner role (#5076)
* Replace `RoomMember.Role.CREATOR` with `RoomMember.Role.Owner` - Make `RoomMember.Role` a sealed interface instead

* Adapt room member role mapping to include the power level to distinguish between admins and owners

* Use new `RoomMember.Role` sealed interface through the app

* Change how `MembersByRole` groups members to add owners to the admins section

* Adapt the `ChangeRoles` screen to the new roles:
    - Owners can't modify other owner's roles.
    - They can modify the roles of any other user, without confirmation.

* Adapt 'roles and permissions' screen:
    - Owners can't demote themselves.
    - The admin count also counts owners.

* Add more tests and screenshots

* Add owners to its own section in the 'change roles' screen

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-07-29 14:07:16 +00:00
Jorge Martin Espinosa
e14ef24927
Prevent loop when exiting the attachments preview screen (#5078)
Disable the custom `BackHandler` when the `sendState` is `Done`. Otherwise, it can get into a loop in some cases where `postCancel()` calls the `OnDoneListener`, which triggers an up navigation, which then simulates a back press... and we end up in the custom `BackHandler` again.
2025-07-25 13:36:09 +02:00
renovate[bot]
040fde7f22
Update dependency org.matrix.rustcomponents:sdk-android to v25.7.23 (#5073)
* Update dependency org.matrix.rustcomponents:sdk-android to v25.7.23

* Adapt to SDK changes:

- Add 'creator' role, adapt existing logic to it.
- Remove `ReplyParameters`, replace with `EventId` where possible.
- Fix changes in OIDC auth methods.
- Add more join rules.

* Make sure both creators and users with power level >= 150 are displayed as 'owners' in the room member list.

* Don't close the roles and permissions screen if the user is a creator

* Use `MediaPreviewValue.DEFAULT` for `MediaPreviewConfig.DEFAULT` too

* Improve APIs around checking roles and power levels:
    - Ensure `RoomInfo.RoomPowerLevels.users` can't be directly used to check power levels since it can't check the power levels for creators.
    - Add a few helper functions to handle actions that relied on the previous `users` property, and docs to explain their usages.

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-07-24 11:58:30 +02:00
Jorge Martin Espinosa
d53457ec66
Make sure we clean up the pre-processed and uploaded media (#5039)
* Add `MediaSender.cleanUp()` and `MediaPreProcessor.cleanUp()` methods: this will remove the temporary files created when pre-processing media before sending them.

* Make sure we clean up also the previous temporary media.

* Fix the condition for the custom back handler in the attachments preview screen

* Tests: check the clean up is performed when needed
2025-07-23 08:55:20 +02:00
ganfra
9f11884ddd
Merge pull request #5054 from element-hq/sync-localazy
Sync Strings
2025-07-22 21:13:30 +02:00
bmarty
8ffbfd82e8 Sync Strings from Localazy 2025-07-22 20:46:13 +02:00
Jorge Martin Espinosa
09e127cffc
Use lower level APIs to draw the message bubbles (#5056)
Co-authored-by: ElementBot <android@element.io>
2025-07-21 12:00:31 +02:00
Benoit Marty
cdbadb5477 FAB: iterate on design 2025-07-16 10:11:53 +02:00
Benoit Marty
827b02992d Iterate on FloatingActionButton shape and colors. 2025-07-16 09:47:08 +02:00
Benoit Marty
9ce6569872 Fix test 2025-07-10 10:36:57 +02:00
Benoit Marty
dc556e0298 [a11y] Improve accessibility of picto next to the timestamp.
https://github.com/element-hq/customer-success/issues/572
2025-07-09 17:32:59 +02:00
Jorge Martin Espinosa
dc83abaec1
Make ContentAvoidingLayoutData an immutable data class (#4999) 2025-07-08 18:26:18 +02:00
Benoit Marty
1782e6d30b Apply gradient to focused Event. 2025-07-07 15:03:30 +02:00
ElementBot
d9ede0544c
Sync Strings from Localazy (#4983)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2025-07-04 14:37:59 +00:00
Benoit Marty
8910487e96 Fix issue with modifier. 2025-07-04 12:42:45 +02:00
Benoit Marty
283dd4bd33 Format code. 2025-07-04 12:41:24 +02:00
Benoit Marty
2ba54105d2 [a11y] Add heading() to date separators. 2025-07-04 12:16:05 +02:00
Benoit Marty
70aa31df00 [a11y] Ensure that heading() is applied to all screen titles. 2025-07-04 12:15:42 +02:00
Benoit Marty
5d81a0264b [a11y] Add long click label 2025-07-04 09:34:14 +02:00
Benoit Marty
ef8d57dff8 [a11y] Use built-in onClickLabel parameter. 2025-07-04 09:34:13 +02:00
Benoit Marty
0029d13417 Visible must be annotated with Immutable 2025-07-02 14:28:13 +02:00
Benoit Marty
ab51ddda1c Improve test coverage of PinnedMessagesBannerState 2025-07-02 13:51:00 +02:00
Benoit Marty
9c88e806de Improve test coverage of SendActionState 2025-07-02 13:23:17 +02:00
ganfra
773fa1657a Merge branch 'develop' into feature/fga/csam_preferences_server 2025-06-30 21:42:06 +02:00
ganfra
ca46166c67 change (media preview config) : final refactoring and tests 2025-06-30 21:31:58 +02:00
bmarty
284241a4ec Sync Strings from Localazy 2025-06-30 00:33:54 +00:00
Jorge Martin Espinosa
a10734de02
Simplify message composer layout (#4884)
Co-authored-by: ElementBot <android@element.io>
2025-06-24 14:05:28 +02:00
Benoit Marty
004863208a
Merge pull request #4923 from element-hq/feature/bma/spaceAvatar2
Iterate on avatar to be able to render Space avatar Part2
2025-06-24 12:05:59 +02:00
renovate[bot]
342aae624a
fix(deps): update dependency org.robolectric:robolectric to v4.15.1 (#4911)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-06-24 11:06:45 +02:00
Benoit Marty
52ad634504 Remove default param for Avatar.avatarType 2025-06-23 21:36:53 +02:00
Benoit Marty
2ac94f2827 Cleanup 2025-06-23 17:57:44 +02:00
Benoit Marty
3669128e60 Introduce AvatarType to be able to render space avatars 2025-06-23 17:08:14 +02:00
Benoit Marty
512ed810f7 Improve preview of AttachmentsPreviewViewPreview to have the case with a caption. 2025-06-20 14:55:45 +02:00
Benoit Marty
be62f2cd69 a11y: now that the grouped events are read one by one, we also need to reverse the order because the timeline is last message at the top when screen reader is enabled. 2025-06-20 09:34:38 +02:00
Benoit Marty
44940fc093 a11y: improve accessibility on grouped state events header. 2025-06-19 17:08:05 +02:00
ganfra
a8d96a6292
Merge pull request #4896 from element-hq/feature/fga/fix_dm_predecessor_room_banner
fix (room upgrade) : room predecessor banner on DM room
2025-06-18 18:21:46 +02:00
ganfra
11aa5346f9 fix (room upgrade) : room predecessor banner should be displayed for DM too 2025-06-18 17:40:24 +02:00
ganfra
680b63d460
Merge pull request #4895 from element-hq/feature/fga/can-edit-permission
fix (event action): allow to edit only if permission to send message
2025-06-18 17:28:59 +02:00
renovate[bot]
0b238b0b8e
fix(deps): update dependency org.matrix.rustcomponents:sdk-android to v25.6.18 (#4894)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
2025-06-18 15:10:47 +00:00
ganfra
713bae06b0 test (event action): clean test 2025-06-18 16:45:48 +02:00
ganfra
323d8cf7b3 fix (event action): allow to edit only if permission to send message 2025-06-18 16:20:22 +02:00
ganfra
b8cef93681 change (room avatar) : fix test after refactor 2025-06-18 14:41:18 +02:00
ganfra
3cf236907b change (room avatar) : clean code related to room name/avatar 2025-06-17 20:37:41 +02:00
ganfra
254216ef18 change (room avatar) : use the new RoomAvatar with the isTombstoned param 2025-06-17 10:37:07 +02:00
ganfra
f47c0f648b change (room avatar) : expose isTombstone where we need to display the RoomAvatar 2025-06-17 10:37:07 +02:00
ganfra
2bdb3f8a1f
Merge pull request #4862 from element-hq/feature/fga/room-version-upgrade
Feature : room version upgrade
2025-06-16 21:17:59 +02:00
Benoit Marty
564beb3fee
Merge pull request #4877 from element-hq/feature/bma/a11yReactions
A11Y: improve accessibility on event reactions.
2025-06-16 20:57:58 +02:00
ganfra
e2b1ab2632 Merge branch 'develop' into feature/fga/room-version-upgrade 2025-06-16 20:46:28 +02:00
ganfra
e9117d94e9 feature (room upgrade) : add "same room" permalink toast to localazy 2025-06-16 20:45:55 +02:00
Benoit Marty
dbd0e4a098 a11y: Improve accessibility on ReactionSummaryView 2025-06-16 14:54:46 +02:00