* Revert "Add alert to encrypted rooms with visible history (Android). (#5709)"
This reverts commit 59f51d8627.
* fix: Restore identity state change preview and snapshot.
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>
* 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>
* 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.
* 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>
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.
* 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.
- 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
- Make edit button clickable for better touch accessibility
- Hide edit button and erase background when disabled
- Extract interactionSource to share between clickable areas
* 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