Display an icon in the room header for rooms with shared history (#5016)

* feat: Display an icon in the room header for rooms with shared history

* fix: Apply suggestions from code review

- Simplifies `isRoomHistoryShared` expressions using type inferrence.
- Adds failure messages to unit test.

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* fix: Remove extension method in favour of field on configuration.

* fix: Distinguish between `shared` and `worldReadable` icons.

* refactor: Use `RoomHistorySharingState` enum with extension methods

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
This commit is contained in:
Skye Elliot
2026-01-30 13:11:10 +00:00
committed by GitHub
parent 26cb30c614
commit 955ec0c8a9
15 changed files with 180 additions and 11 deletions
@@ -27,6 +27,7 @@ struct JoinedRoomProxyMockConfiguration {
var canonicalAlias: String?
var alternativeAliases: [String] = []
var pinnedEventIDs: Set<String> = []
var historyVisibility: RoomHistoryVisibility = .shared
var timelineStartReached = false
@@ -190,7 +191,7 @@ extension RoomInfoProxyMock {
unreadMentionsCount = 0
pinnedEventIDs = configuration.pinnedEventIDs
joinRule = configuration.joinRule
historyVisibility = .shared
historyVisibility = configuration.historyVisibility
powerLevels = RoomPowerLevelsProxyMock(configuration: configuration.powerLevelsConfiguration)
}