mirror of
https://github.com/element-hq/element-x-ios.git
synced 2025-03-10 21:39:12 +00:00
Remove Read Receipts Feature Flag (#2228)
This commit is contained in:
parent
a78dea392f
commit
b2e99bcfc5
@ -44,7 +44,6 @@ final class AppSettings {
|
|||||||
// Feature flags
|
// Feature flags
|
||||||
case shouldCollapseRoomStateEvents
|
case shouldCollapseRoomStateEvents
|
||||||
case userSuggestionsEnabled
|
case userSuggestionsEnabled
|
||||||
case readReceiptsEnabled
|
|
||||||
case swiftUITimelineEnabled
|
case swiftUITimelineEnabled
|
||||||
case chatBackupEnabled
|
case chatBackupEnabled
|
||||||
}
|
}
|
||||||
@ -265,9 +264,6 @@ final class AppSettings {
|
|||||||
|
|
||||||
@UserPreference(key: UserDefaultsKeys.userSuggestionsEnabled, defaultValue: false, storageType: .volatile)
|
@UserPreference(key: UserDefaultsKeys.userSuggestionsEnabled, defaultValue: false, storageType: .volatile)
|
||||||
var userSuggestionsEnabled
|
var userSuggestionsEnabled
|
||||||
|
|
||||||
@UserPreference(key: UserDefaultsKeys.readReceiptsEnabled, defaultValue: true, storageType: .userDefaults(store))
|
|
||||||
var readReceiptsEnabled
|
|
||||||
|
|
||||||
@UserPreference(key: UserDefaultsKeys.swiftUITimelineEnabled, defaultValue: false, storageType: .volatile)
|
@UserPreference(key: UserDefaultsKeys.swiftUITimelineEnabled, defaultValue: false, storageType: .volatile)
|
||||||
var swiftUITimelineEnabled
|
var swiftUITimelineEnabled
|
||||||
|
@ -122,7 +122,6 @@ struct RoomScreenViewState: BindableState {
|
|||||||
var members: [String: RoomMemberState] = [:]
|
var members: [String: RoomMemberState] = [:]
|
||||||
var showLoading = false
|
var showLoading = false
|
||||||
var timelineStyle: TimelineStyle
|
var timelineStyle: TimelineStyle
|
||||||
var readReceiptsEnabled: Bool
|
|
||||||
var isEncryptedOneToOneRoom = false
|
var isEncryptedOneToOneRoom = false
|
||||||
var timelineViewState = TimelineViewState() // check the doc before changing this
|
var timelineViewState = TimelineViewState() // check the doc before changing this
|
||||||
var swiftUITimelineEnabled = false
|
var swiftUITimelineEnabled = false
|
||||||
|
@ -84,7 +84,6 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
|||||||
roomTitle: roomProxy.roomTitle,
|
roomTitle: roomProxy.roomTitle,
|
||||||
roomAvatarURL: roomProxy.avatarURL,
|
roomAvatarURL: roomProxy.avatarURL,
|
||||||
timelineStyle: appSettings.timelineStyle,
|
timelineStyle: appSettings.timelineStyle,
|
||||||
readReceiptsEnabled: appSettings.readReceiptsEnabled,
|
|
||||||
isEncryptedOneToOneRoom: roomProxy.isEncryptedOneToOneRoom,
|
isEncryptedOneToOneRoom: roomProxy.isEncryptedOneToOneRoom,
|
||||||
ownUserID: roomProxy.ownUserID,
|
ownUserID: roomProxy.ownUserID,
|
||||||
hasOngoingCall: roomProxy.hasOngoingCall,
|
hasOngoingCall: roomProxy.hasOngoingCall,
|
||||||
@ -315,10 +314,6 @@ class RoomScreenViewModel: RoomScreenViewModelType, RoomScreenViewModelProtocol
|
|||||||
appSettings.$timelineStyle
|
appSettings.$timelineStyle
|
||||||
.weakAssign(to: \.state.timelineStyle, on: self)
|
.weakAssign(to: \.state.timelineStyle, on: self)
|
||||||
.store(in: &cancellables)
|
.store(in: &cancellables)
|
||||||
|
|
||||||
appSettings.$readReceiptsEnabled
|
|
||||||
.weakAssign(to: \.state.readReceiptsEnabled, on: self)
|
|
||||||
.store(in: &cancellables)
|
|
||||||
|
|
||||||
roomProxy.members
|
roomProxy.members
|
||||||
.map { members in
|
.map { members in
|
||||||
|
@ -100,7 +100,6 @@ struct RoomScreen: View {
|
|||||||
.id(context.viewState.roomID)
|
.id(context.viewState.roomID)
|
||||||
.environmentObject(context)
|
.environmentObject(context)
|
||||||
.environment(\.timelineStyle, context.viewState.timelineStyle)
|
.environment(\.timelineStyle, context.viewState.timelineStyle)
|
||||||
.environment(\.readReceiptsEnabled, context.viewState.readReceiptsEnabled)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ViewBuilder
|
@ViewBuilder
|
||||||
|
@ -399,9 +399,6 @@ struct TimelineItemBubbledStylerView_Previews: PreviewProvider, TestablePreview
|
|||||||
static var previews: some View {
|
static var previews: some View {
|
||||||
mockTimeline
|
mockTimeline
|
||||||
.previewDisplayName("Mock Timeline")
|
.previewDisplayName("Mock Timeline")
|
||||||
mockTimeline
|
|
||||||
.environment(\.readReceiptsEnabled, true)
|
|
||||||
.previewDisplayName("Mock Timeline with read receipts")
|
|
||||||
mockTimeline
|
mockTimeline
|
||||||
.environment(\.layoutDirection, .rightToLeft)
|
.environment(\.layoutDirection, .rightToLeft)
|
||||||
.previewDisplayName("Mock Timeline RTL")
|
.previewDisplayName("Mock Timeline RTL")
|
||||||
|
@ -82,9 +82,4 @@ extension EnvironmentValues {
|
|||||||
get { self[TimelineGroupStyleKey.self] }
|
get { self[TimelineGroupStyleKey.self] }
|
||||||
set { self[TimelineGroupStyleKey.self] = newValue }
|
set { self[TimelineGroupStyleKey.self] = newValue }
|
||||||
}
|
}
|
||||||
|
|
||||||
var readReceiptsEnabled: Bool {
|
|
||||||
get { self[ReadReceiptsEnabledKey.self] }
|
|
||||||
set { self[ReadReceiptsEnabledKey.self] = newValue }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -21,7 +21,6 @@ struct TimelineItemStatusView: View {
|
|||||||
let timelineItem: EventBasedTimelineItemProtocol
|
let timelineItem: EventBasedTimelineItemProtocol
|
||||||
let adjustedDeliveryStatus: TimelineItemDeliveryStatus?
|
let adjustedDeliveryStatus: TimelineItemDeliveryStatus?
|
||||||
@Environment(\.timelineStyle) private var style
|
@Environment(\.timelineStyle) private var style
|
||||||
@Environment(\.readReceiptsEnabled) private var readReceiptsEnabled
|
|
||||||
@EnvironmentObject private var context: RoomScreenViewModel.Context
|
@EnvironmentObject private var context: RoomScreenViewModel.Context
|
||||||
|
|
||||||
private var isLastOutgoingMessage: Bool {
|
private var isLastOutgoingMessage: Bool {
|
||||||
@ -34,7 +33,7 @@ struct TimelineItemStatusView: View {
|
|||||||
|
|
||||||
@ViewBuilder
|
@ViewBuilder
|
||||||
private var mainContent: some View {
|
private var mainContent: some View {
|
||||||
if !timelineItem.properties.orderedReadReceipts.isEmpty, readReceiptsEnabled {
|
if !timelineItem.properties.orderedReadReceipts.isEmpty {
|
||||||
readReceipts
|
readReceipts
|
||||||
} else {
|
} else {
|
||||||
deliveryStatusBadge
|
deliveryStatusBadge
|
||||||
|
@ -47,7 +47,6 @@ protocol DeveloperOptionsProtocol: AnyObject {
|
|||||||
var otlpTracingEnabled: Bool { get set }
|
var otlpTracingEnabled: Bool { get set }
|
||||||
var shouldCollapseRoomStateEvents: Bool { get set }
|
var shouldCollapseRoomStateEvents: Bool { get set }
|
||||||
var userSuggestionsEnabled: Bool { get set }
|
var userSuggestionsEnabled: Bool { get set }
|
||||||
var readReceiptsEnabled: Bool { get set }
|
|
||||||
var swiftUITimelineEnabled: Bool { get set }
|
var swiftUITimelineEnabled: Bool { get set }
|
||||||
var chatBackupEnabled: Bool { get set }
|
var chatBackupEnabled: Bool { get set }
|
||||||
|
|
||||||
|
@ -43,11 +43,6 @@ struct DeveloperOptionsScreen: View {
|
|||||||
Toggle(isOn: $context.shouldCollapseRoomStateEvents) {
|
Toggle(isOn: $context.shouldCollapseRoomStateEvents) {
|
||||||
Text("Collapse room state events")
|
Text("Collapse room state events")
|
||||||
}
|
}
|
||||||
|
|
||||||
Toggle(isOn: $context.readReceiptsEnabled) {
|
|
||||||
Text("Show read receipts")
|
|
||||||
Text("Requires app reboot")
|
|
||||||
}
|
|
||||||
|
|
||||||
Toggle(isOn: $context.swiftUITimelineEnabled) {
|
Toggle(isOn: $context.swiftUITimelineEnabled) {
|
||||||
Text("SwiftUI Timeline")
|
Text("SwiftUI Timeline")
|
||||||
|
@ -388,7 +388,6 @@ class MockScreen: Identifiable {
|
|||||||
navigationStackCoordinator.setRootCoordinator(coordinator)
|
navigationStackCoordinator.setRootCoordinator(coordinator)
|
||||||
return navigationStackCoordinator
|
return navigationStackCoordinator
|
||||||
case .roomSmallTimelineWithReadReceipts:
|
case .roomSmallTimelineWithReadReceipts:
|
||||||
ServiceLocator.shared.settings.readReceiptsEnabled = true
|
|
||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunkWithReadReceipts
|
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunkWithReadReceipts
|
||||||
|
BIN
UnitTests/__Snapshots__/PreviewTests/test_timelineItemBubbledStylerView.Mock-Timeline-RTL.png
(Stored with Git LFS)
BIN
UnitTests/__Snapshots__/PreviewTests/test_timelineItemBubbledStylerView.Mock-Timeline-RTL.png
(Stored with Git LFS)
Binary file not shown.
Binary file not shown.
BIN
UnitTests/__Snapshots__/PreviewTests/test_timelineItemBubbledStylerView.Mock-Timeline.png
(Stored with Git LFS)
BIN
UnitTests/__Snapshots__/PreviewTests/test_timelineItemBubbledStylerView.Mock-Timeline.png
(Stored with Git LFS)
Binary file not shown.
BIN
UnitTests/__Snapshots__/PreviewTests/test_timelineItemPlainStylerView.1.png
(Stored with Git LFS)
BIN
UnitTests/__Snapshots__/PreviewTests/test_timelineItemPlainStylerView.1.png
(Stored with Git LFS)
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user