Commit graph

13269 commits

Author SHA1 Message Date
Skye Elliot
03bd85b3fc
Remove "history may be shared" banner. (#6087)
* Revert "Add alert to encrypted rooms with visible history (Android). (#5709)"

This reverts commit 59f51d8627.

* fix: Restore identity state change preview and snapshot.
2026-01-27 14:15:41 +00:00
Jorge Martin Espinosa
61cbc54942
Add 'Create room' option to menu in space screen (#6095) 2026-01-27 14:07:06 +01:00
Richard van der Hoff
e884cbf76e
Show an icon in the room header for shared history (#6090)
Add a decoration to the header for encrypted rooms with `history_visibility:
{shared|public}`.

Fixes: #6070

---------

Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Jorge Martín <jorgem@element.io>
2026-01-27 11:31:01 +00:00
renovate[bot]
008a171d3b
Update dependency net.zetetic:sqlcipher-android to v4.13.0 (#6094)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-27 11:15:20 +01:00
renovate[bot]
5e39e80ab5
Update dependency io.nlopez.compose.rules:detekt to v0.5.6 (#6093)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-27 11:14:46 +01:00
Jorge Martin Espinosa
6a9d084a50
Add an empty state for the space screen if the user can modify its graph (#6064)
* Add an empty state for the space screen if the user can modify its graph. It adds a new 'create room' button that allows you to open the create room screen with some preset values.

* When computing the editable spaces in `ConfigureRoomPresenter`, also set up the initial selected parent space if possible

* Use `Builder` pattern for `CreateRoomEntryPoint`

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-01-27 11:12:12 +01:00
Benoit Marty
fc8afab1bb
Merge pull request #6092 from element-hq/feature/bma/endPollConfirmation
Display a confirmation dialog when ending a poll from the event bottom sheet
2026-01-27 10:47:12 +01:00
Benoit Marty
9a6ebe9639 Use presenter test extension. 2026-01-27 10:08:25 +01:00
Benoit Marty
f4802d960e ReadReceiptBottomSheetEvents -> ReadReceiptBottomSheetEvent 2026-01-27 10:03:28 +01:00
Benoit Marty
0ca69f0e5c ReactionSummaryEvents -> ReactionSummaryEvent 2026-01-27 10:02:44 +01:00
Benoit Marty
b6fcb0240d EmojiPickerEvents -> EmojiPickerEvent 2026-01-27 10:02:08 +01:00
Benoit Marty
f9a39fd552 CustomReactionEvents -> CustomReactionEvent 2026-01-27 10:01:38 +01:00
Benoit Marty
3133db3cf6 ReportMessageEvents -> ReportMessageEvent 2026-01-27 10:00:44 +01:00
Benoit Marty
9227d96d3e PinnedMessagesListEvents -> PinnedMessagesListEvent 2026-01-27 10:00:02 +01:00
Benoit Marty
3af41c814f PinnedMessagesBannerEvents -> PinnedMessagesBannerEvent 2026-01-27 09:59:18 +01:00
Benoit Marty
79b8742e95 ResolveVerifiedUserSendFailureEvent -> ResolveVerifiedUserSendFailureEven 2026-01-27 09:58:44 +01:00
Benoit Marty
f74f6b0d45 AttachmentsPreviewEvents -> AttachmentsPreviewEvent 2026-01-27 09:57:36 +01:00
Benoit Marty
f5b5bee326 LinkEvents -> LinkEvent 2026-01-27 09:55:20 +01:00
Benoit Marty
dc3152af12 EventFromTimelineItem -> TimelineItemEvent 2026-01-27 09:47:49 +01:00
Benoit Marty
4d5ec1cf8b TimelineEvents -> TimelineEvent 2026-01-27 09:45:10 +01:00
Benoit Marty
bdd8d373c5 MessagesEvents -> MessagesEvent 2026-01-27 09:38:45 +01:00
Benoit Marty
a0b60394c4 Use presenter test extension. 2026-01-27 09:35:51 +01:00
Benoit Marty
5721ae2d3b ActionListEvents -> ActionListEvent 2026-01-27 09:34:18 +01:00
Benoit Marty
89fac40265 Add confirmation dialog when ending poll from the bottom sheet. 2026-01-27 09:26:03 +01:00
Benoit Marty
8db6409a42 Remove unused MessagesEvents.Dismiss 2026-01-27 09:13:07 +01:00
Jorge Martin Espinosa
80ba0e9b0d
Fix rageshakes not uploading if they are too long (#6075)
* Fix rageshakes not uploading if they are too long. The max log line size in the default rageshake server is `1_000_000`.

* Change upload order to ensure the current logs and the push rules are always sent.

* Add 'buffer' for unexpected log lines.
2026-01-27 07:44:12 +01:00
Jorge Martin Espinosa
62768359cb
Create a new room in a space (#6061)
* Add `SpaceService.editableSpaces` and `SpaceService.addChildToSpace`

* Add `parentSpace` to `CreateRoomConfig`

* Allow setting a parent space to a room in `ConfigureRoomPresenter`, make sure the room is added to the parent space when creating it

* `ConfigureRoomPresenter`: Load the list of possible spaces a room can be added to

* Refactor `RoomVisibilityState` to internally use `JoinRuleItem`

This gets rid of `RoomAccess` and `RoomAccessItem`, and it will allow us to map the join rule items in a cleaner way to both join rules and the UI

* Implement the UI changes:

- Display the parent space.
- Allow selecting a new one.
- Import needed strings.

* Fix existing tests

* Add `@Immutable` annotation to `SpaceRoom`, since it was detected as unstable.

Maybe because of `RoomType`?

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2026-01-26 18:23:02 +01:00
renovate[bot]
b37ab04ff6
fix(deps): update dependency io.mockk:mockk to v1.14.9 (#6089)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 17:06:30 +01:00
Jorge Martin Espinosa
7d731e192a
Try fixing performance metrics (#6046)
We've detected outliers in the `Up-to-date room list` and `Open a room` transactions in Sentry.

This commit tries to make sure we're starting/stopping the long running transactions when needed.
2026-01-26 15:41:58 +01:00
Benoit Marty
00d318ea0b
Sync all strings and fix compilation issue. (#6088) 2026-01-26 15:33:11 +01:00
renovate[bot]
828dc32c92
fix(deps): update media3 to v1.9.1 (#6086)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 14:58:36 +01:00
renovate[bot]
dea41b4b84
fix(deps): update roborazzi to v1.57.0 (#6080)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 14:58:09 +01:00
Benoit Marty
e8b14e62cf Sync all strings and fix compilation issue. 2026-01-26 14:13:06 +01:00
ElementBot
3ab67a5e15
Sync Strings from Localazy (#6085)
Co-authored-by: bmarty <3940906+bmarty@users.noreply.github.com>
2026-01-26 12:06:38 +01:00
renovate[bot]
45b21eae1b
fix(deps): update kotlin (#6076)
* fix(deps): update kotlin

* Update gradle/libs.versions.toml

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Benoit Marty <benoitm@element.io>
2026-01-26 09:41:37 +00:00
renovate[bot]
fe9c704820
fix(deps): update metro to v0.10.1 (#6077)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 08:39:29 +01:00
Jorge Martin Espinosa
9509121ffe
Remove obfuscation in proguard (#6067)
* Remove obfuscation in proguard for the OSS app. Fully allow it by default for enterprise ones.

* Add logic to use additional customizable proguard files depending on whether the build is an enterprise one or not.
2026-01-23 16:39:11 +01:00
ganfra
5d40c64a3b
Merge pull request #6074 from element-hq/feature/fga/fix_edit_details
Fix RoomDetailsEditView avatar picker for spaces
2026-01-23 15:55:37 +01:00
ElementBot
d52cc97d10 Update screenshots 2026-01-23 11:31:45 +00:00
ganfra
11f6def9ca Fix RoomDetailsEditView avatar picker for spaces
- Use correct AvatarType based on whether editing a space or room
- Add roomRawName to remember key to update avatar when name changes
- Respect canChangeAvatar state to disable picker when not permitted
2026-01-23 12:12:12 +01:00
ganfra
e8ed268eb2 Fix AvatarPickerView touch target and disabled state
- Make edit button clickable for better touch accessibility
- Hide edit button and erase background when disabled
- Extract interactionSource to share between clickable areas
2026-01-23 12:11:51 +01:00
ganfra
766c6ef373
Merge pull request #6072 from element-hq/feature/fga/search_bar_text_field_state
Let SearchBar/SearchField use TextFieldState
2026-01-23 11:07:37 +01:00
ganfra
5b700f7b98 Let SearchBar/SearchField use TextFieldState 2026-01-23 10:32:58 +01:00
Jorge Martin Espinosa
57e0b74482
Use MediaPreviewValue.Private to check if media should be displayed in notifications (#6038)
* Use `MediaPreviewValue.Private` to check if images should be displayed in notifications

Also added `NotificationData.roomJoinRule` so we can use it to check if the room is public or not

* Add logging message for cases when we should have an image uri it turns out we don't
2026-01-23 09:01:52 +00:00
ganfra
3f624c601c
Merge pull request #6063 from element-hq/feature/fga/space_add_existing_room
Implement Space 'Add existing rooms' feature
2026-01-22 20:31:13 +01:00
ganfra
c53dbf7b2d Quality improvements after PR review 2026-01-22 19:57:04 +01:00
Benoit Marty
3601fec9ea
Merge pull request #6066 from element-hq/feature/bma/fix/joinRoomWithSpecialAlias
First try to resolve the room before checking for the alias validity
2026-01-22 17:45:33 +01:00
Benoit Marty
71a97f0f09 Use presenter test extension. 2026-01-22 17:18:59 +01:00
Benoit Marty
570903ff6b JoinRoomByAddressEvents -> JoinRoomByAddressEvent 2026-01-22 17:16:59 +01:00
Benoit Marty
a243ef7b0b First try to resolve the room before checking for the alias validity. Fixes #5611 2026-01-22 17:09:54 +01:00