Skip to content

Commit 0b778ff

Browse files
committed
updated preview tests
1 parent a1c5f06 commit 0b778ff

25 files changed

+61
-93
lines changed

ElementX.xcodeproj/project.pbxproj

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1092,6 +1092,7 @@
10921092
BD782053BE4C3D2F0BDE5699 /* ServiceLocator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57F95CADD0A5DBD76B990FCB /* ServiceLocator.swift */; };
10931093
BDA68E8D95B2B24B28825B8B /* LoginScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C368CAB3063EF275357ECD4 /* LoginScreenViewModel.swift */; };
10941094
BDC4EB54CC3036730475CB8B /* QRCodeLoginScreenViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25E7E9B7FEAB6169D960C206 /* QRCodeLoginScreenViewModelTests.swift */; };
1095+
BDCF42966007770A33D90E15 /* PreviewScrollView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DB56ABD78E60920ACE43087 /* PreviewScrollView.swift */; };
10951096
BDED6DA7AD1E76018C424143 /* LegalInformationScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C34667458773B02AB5FB0B2 /* LegalInformationScreenViewModel.swift */; };
10961097
BDFF0AEBF57B5B124062DAEF /* GeneratedAccessibilityTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4CEB4590CCF70F0E3C0B171 /* GeneratedAccessibilityTests.swift */; };
10971098
BE011C4473B9A8F12CBFE92A /* UserDetailsEditScreenViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61F58D94C936A1B731D78DE1 /* UserDetailsEditScreenViewModelTests.swift */; };
@@ -1153,6 +1154,7 @@
11531154
C85C7A201E4CFDA477ACEBEB /* AppLockSetupSettingsScreenViewModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8610C1D21565C950BCA6A454 /* AppLockSetupSettingsScreenViewModelProtocol.swift */; };
11541155
C8A9C595038AFA2D707AC8C1 /* NotificationPermissionsScreenViewModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20E69F67D2A70ABD08CA6D54 /* NotificationPermissionsScreenViewModelProtocol.swift */; };
11551156
C8BD80891BAD688EF2C15CDB /* MediaUploadPreviewScreenCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74DD0855F2F76D47E5555082 /* MediaUploadPreviewScreenCoordinator.swift */; };
1157+
C8D0AC22E03F652118A2BB73 /* LiveLocationRoomTimelineItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A8DCBD0ABAADFDE5AF17E1F /* LiveLocationRoomTimelineItem.swift */; };
11561158
C8D1D18E22672D48C11A5366 /* AccessibilityIdentifiers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04BB8DDE245ED86C489BA983 /* AccessibilityIdentifiers.swift */; };
11571159
C8E0FA0FF2CD6613264FA6B9 /* MessageForwardingScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFEA446F8618DBA79A9239CC /* MessageForwardingScreen.swift */; };
11581160
C8E11A335456FCF94A744E6E /* SpaceFlowCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDDE826EAB1BAB80C1104980 /* SpaceFlowCoordinator.swift */; };
@@ -1429,6 +1431,7 @@
14291431
F777C6FEE7D106136E2ED2B2 /* MessageForwardingScreenViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F6E6EDC4BBF962B2ED595A4 /* MessageForwardingScreenViewModelTests.swift */; };
14301432
F78BAD28482A467287A9A5A3 /* EventBasedMessageTimelineItemProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0900BBF0A5D5D775E917C70 /* EventBasedMessageTimelineItemProtocol.swift */; };
14311433
F7932A3F075B0D3F24DEECB5 /* VoiceMessagePreviewComposer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2AE807361805463F5AEDD1CA /* VoiceMessagePreviewComposer.swift */; };
1434+
F7977C53B2B1D73030C69761 /* LiveLocationRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52947F8F356F0BA5B1F50912 /* LiveLocationRoomTimelineView.swift */; };
14321435
F7ADDB3A8FBD95268B71D11C /* ManageAuthorizedSpacesScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 726E901DF76393E335FD7E8E /* ManageAuthorizedSpacesScreenViewModel.swift */; };
14331436
F7BC744FFA7FE248FAE7F570 /* UserIndicatorToastView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F57C8022B8A871A1DCD1750A /* UserIndicatorToastView.swift */; };
14341437
F7D709D7ECABE46641BB8B6B /* PHGPostHogProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CEEAE1BFAACD6C96B6DB731 /* PHGPostHogProtocol.swift */; };
@@ -2028,6 +2031,7 @@
20282031
52135BD9E0E7A091688F627A /* MessageForwardingScreenModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageForwardingScreenModels.swift; sourceTree = "<group>"; };
20292032
5221DFDF809142A2D6AC82B9 /* RoomScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomScreen.swift; sourceTree = "<group>"; };
20302033
5281C5CDC4A712265A0B5FBF /* PollRoomTimelineItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollRoomTimelineItem.swift; sourceTree = "<group>"; };
2034+
52947F8F356F0BA5B1F50912 /* LiveLocationRoomTimelineView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveLocationRoomTimelineView.swift; sourceTree = "<group>"; };
20312035
529513218340CC8419273165 /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = tr.lproj/Localizable.strings; sourceTree = "<group>"; };
20322036
52BD6ED18E2EB61E28C340AD /* AttributedString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttributedString.swift; sourceTree = "<group>"; };
20332037
52F5EE5DE3B55D59299DB5BC /* AppLockSetupBiometricsScreenViewModelTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppLockSetupBiometricsScreenViewModelTests.swift; sourceTree = "<group>"; };
@@ -2081,6 +2085,7 @@
20812085
5CEEAE1BFAACD6C96B6DB731 /* PHGPostHogProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PHGPostHogProtocol.swift; sourceTree = "<group>"; };
20822086
5D26A086A8278D39B5756D6F /* project.yml */ = {isa = PBXFileReference; lastKnownFileType = text.yaml; path = project.yml; sourceTree = "<group>"; };
20832087
5D53754227CEBD06358956D7 /* PinnedEventsTimelineScreenCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PinnedEventsTimelineScreenCoordinator.swift; sourceTree = "<group>"; };
2088+
5DB56ABD78E60920ACE43087 /* PreviewScrollView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PreviewScrollView.swift; sourceTree = "<group>"; };
20842089
5DE8D25D6A91030175D52A20 /* RoomTimelineItemProperties.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomTimelineItemProperties.swift; sourceTree = "<group>"; };
20852090
5E33FD32BBC44D703C7AE4F9 /* TextBasedRoomTimelineItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextBasedRoomTimelineItem.swift; sourceTree = "<group>"; };
20862091
5E43D8784B0054C048060FEB /* LabsScreenModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LabsScreenModels.swift; sourceTree = "<group>"; };
@@ -2327,6 +2332,7 @@
23272332
89BB11A792EF6F70B95B467E /* EncryptionResetTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EncryptionResetTests.swift; sourceTree = "<group>"; };
23282333
89FBFC09F9DAFF1E4BA97849 /* FormButtonStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormButtonStyles.swift; sourceTree = "<group>"; };
23292334
8A1F2AAA3F0F2B72D2FFE4D0 /* MapTilerConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTilerConfiguration.swift; sourceTree = "<group>"; };
2335+
8A8DCBD0ABAADFDE5AF17E1F /* LiveLocationRoomTimelineItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LiveLocationRoomTimelineItem.swift; sourceTree = "<group>"; };
23302336
8A9AE4967817E9608E22EB44 /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = "<group>"; };
23312337
8AE0C9653870803E4F91F474 /* RoomListFiltersStateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomListFiltersStateTests.swift; sourceTree = "<group>"; };
23322338
8AE78FA0011E07920AE83135 /* PlainMentionBuilder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlainMentionBuilder.swift; sourceTree = "<group>"; };
@@ -3140,6 +3146,7 @@
31403146
children = (
31413147
76A46ABD27628CB5FC402541 /* Backports.swift */,
31423148
F03AEAA2F66E796C365EFD58 /* ElementNavigationStack.swift */,
3149+
5DB56ABD78E60920ACE43087 /* PreviewScrollView.swift */,
31433150
D2C513A6CD99E6C3C163DA1E /* RowDivider.swift */,
31443151
693E16574C6F7F9FA1015A8C /* Search.swift */,
31453152
832397B5C3D00A4BF52C5F0B /* ShouldScrollOnKeyboardDidShow.swift */,
@@ -5218,6 +5225,7 @@
52185225
216F0DDC98F2A2C162D09C28 /* FileRoomTimelineItemContent.swift */,
52195226
3DFE4453AB0B34C203447162 /* ImageRoomTimelineItem.swift */,
52205227
B2B5EDCD05D50BA9B815C66C /* ImageRoomTimelineItemContent.swift */,
5228+
8A8DCBD0ABAADFDE5AF17E1F /* LiveLocationRoomTimelineItem.swift */,
52215229
1B2AC540DE619B36832A5DB5 /* LocationRoomTimelineItem.swift */,
52225230
CD6613DE16AD26B3A74DA1F5 /* LocationRoomTimelineItemContent.swift */,
52235231
421E716C521F96D24ECE69B3 /* NoticeRoomTimelineItem.swift */,
@@ -6251,6 +6259,7 @@
62516259
C258C9C815272911A5B132C3 /* FormattedBodyText.swift */,
62526260
59B7CC77B82C6C67DE3AD869 /* HighlightedTimelineItemModifier.swift */,
62536261
C5599255A6C98EBDA77B76E6 /* ImageRoomTimelineView.swift */,
6262+
52947F8F356F0BA5B1F50912 /* LiveLocationRoomTimelineView.swift */,
62546263
ED49073BB1C1FC649DAC2CCD /* LocationRoomTimelineView.swift */,
62556264
3F54FA7C5CB7B342EF9B9B2F /* NoticeRoomTimelineView.swift */,
62566265
4E7F7A975514E850A834B29F /* PaginationIndicatorRoomTimelineView.swift */,
@@ -8274,6 +8283,8 @@
82748283
A37BFB32EAB8AEF6DD5BA0DC /* LinkNewDeviceService.swift in Sources */,
82758284
74DF5BC17DE9F51E077FD457 /* LinkNewDeviceServiceMock.swift in Sources */,
82768285
866FA35E7A2339EF8B6D91CA /* LinkPreviewView.swift in Sources */,
8286+
C8D0AC22E03F652118A2BB73 /* LiveLocationRoomTimelineItem.swift in Sources */,
8287+
F7977C53B2B1D73030C69761 /* LiveLocationRoomTimelineView.swift in Sources */,
82778288
6E47D126DD7585E8F8237CE7 /* LoadableAvatarImage.swift in Sources */,
82788289
D9F80CE61BF8FF627FDB0543 /* LoadableImage.swift in Sources */,
82798290
256D76972BA3254F7CB7F88B /* LocationAnnotation.swift in Sources */,
@@ -8448,6 +8459,7 @@
84488459
128FFD8A3D85845F9A927F47 /* PollRoomTimelineView.swift in Sources */,
84498460
1307268DC41730E5BCF7D9A0 /* PollView.swift in Sources */,
84508461
DF504B10A4918F971A57BEF2 /* PostHogAnalyticsClient.swift in Sources */,
8462+
BDCF42966007770A33D90E15 /* PreviewScrollView.swift in Sources */,
84518463
6793E75E3EBE48EBB8F857AF /* ProcessInfo.swift in Sources */,
84528464
69DE29C3E3180BB17D840690 /* ProgressCursorModifier.swift in Sources */,
84538465
C7ABEBECDC513F7887DACF66 /* ProgressMaskModifier.swift in Sources */,

ElementX/Resources/Localizations/en-US.lproj/Localizable.strings

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,6 @@
243243
"common_image" = "Image";
244244
"common_in_reply_to" = "In reply to %1$@";
245245
"common_invite_unknown_profile" = "This Matrix ID can't be found, so the invite might not be received.";
246-
"common_ios_expiration_time" = "Ends %1$@";
247246
"common_leaving_room" = "Leaving room";
248247
"common_leaving_space" = "Leaving space";
249248
"common_light" = "Light";

ElementX/Resources/Localizations/en.lproj/Localizable.strings

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,6 @@
243243
"common_image" = "Image";
244244
"common_in_reply_to" = "In reply to %1$@";
245245
"common_invite_unknown_profile" = "This Matrix ID can't be found, so the invite might not be received.";
246-
"common_ios_expiration_time" = "Ends %1$@";
247246
"common_leaving_room" = "Leaving room";
248247
"common_leaving_space" = "Leaving space";
249248
"common_light" = "Light";

ElementX/Sources/Generated/Strings.swift

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -538,10 +538,6 @@ internal enum L10n {
538538
}
539539
/// This Matrix ID can't be found, so the invite might not be received.
540540
internal static var commonInviteUnknownProfile: String { return L10n.tr("Localizable", "common_invite_unknown_profile") }
541-
/// Ends %1$@
542-
internal static func commonIosExpirationTime(_ p1: Any) -> String {
543-
return L10n.tr("Localizable", "common_ios_expiration_time", String(describing: p1))
544-
}
545541
/// Leaving room
546542
internal static var commonLeavingRoom: String { return L10n.tr("Localizable", "common_leaving_room") }
547543
/// Leaving space

ElementX/Sources/Screens/Timeline/View/Style/TimelineItemSendInfoLabel.swift

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,7 @@ private extension TimelineItemSendInfo {
168168
case is TextBasedRoomTimelineItem:
169169
.overlay(capsuleStyle: false)
170170
case let liveLocationTimelineItem as LiveLocationRoomTimelineItem:
171-
// swiftlint:disable:next void_function_in_ternary
172-
liveLocationTimelineItem.isOutgoing ? .hidden : liveLocationTimelineItem.content.lastLocation?.geoURI != nil ? .overlay(capsuleStyle: true) : .horizontal()
171+
liveLocationTimelineItem.layout
173172
case let message as EventBasedMessageTimelineItemProtocol:
174173
switch message {
175174
case is ImageRoomTimelineItem, is VideoRoomTimelineItem:
@@ -192,6 +191,20 @@ private extension TimelineItemSendInfo {
192191
}
193192
}
194193

194+
private extension LiveLocationRoomTimelineItem {
195+
var layout: TimelineItemSendInfo.LayoutType {
196+
if content.lastLocation != nil {
197+
if content.isLive, isOutgoing {
198+
.hidden
199+
} else {
200+
.overlay(capsuleStyle: true)
201+
}
202+
} else {
203+
.horizontal()
204+
}
205+
}
206+
}
207+
195208
@MainActor
196209
private extension EncryptionAuthenticity {
197210
var foregroundStyle: SwiftUI.Color {

ElementX/Sources/Screens/Timeline/View/TimelineItemViews/LiveLocationRoomTimelineView.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ struct LiveLocationRoomTimelineView: View {
119119
.font(.compound.bodySMSemibold)
120120

121121
if timelineItem.content.isLive {
122-
Text(L10n.commonIosExpirationTime(timelineItem.content.timeoutDate.formatted(.relative(presentation: .numeric))))
122+
Text(L10n.commonEndsInTimeIos(timelineItem.content.timeoutDate.formatted(.relative(presentation: .numeric))))
123123
.foregroundStyle(.compound.textPrimary)
124124
.font(.compound.bodySM)
125125
}
@@ -128,7 +128,7 @@ struct LiveLocationRoomTimelineView: View {
128128

129129
Spacer()
130130

131-
if timelineItem.isOutgoing {
131+
if timelineItem.content.isLive, timelineItem.isOutgoing {
132132
Button { } label: {
133133
CompoundIcon(\.stop, size: .small, relativeTo: .compound.bodySMSemibold)
134134
.foregroundStyle(.compound.iconOnSolidPrimary)

ElementX/Sources/Services/Room/RoomSummary/RoomEventStringBuilder.swift

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,6 @@ struct RoomEventStringBuilder {
6464
return messageEventStringBuilder.buildAttributedStringForLiveLocation(senderDisplayName: displayName, isOutgoing: isOutgoing)
6565
case .other:
6666
return nil // We shouldn't receive these without asking for custom event types.
67-
case .liveLocation:
68-
// TODO: Implement
69-
return nil
7067
}
7168
case .failedToParseMessageLike, .failedToParseState:
7269
return prefix(L10n.commonUnsupportedEvent, with: displayName, isOutgoing: isOutgoing)

ElementX/Sources/Services/Timeline/TimelineItems/RoomTimelineItemFactory.swift

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,6 @@ struct RoomTimelineItemFactory: RoomTimelineItemFactoryProtocol {
4545
return buildLiveLocationTimelineItem(eventItemProxy, messageLikeContent, content, isOutgoing)
4646
case .other:
4747
return nil // We shouldn't receive these without asking for custom event types.
48-
case .liveLocation:
49-
// TODO: Implement
50-
return nil
5148
}
5249
case .failedToParseMessageLike(let eventType, let error):
5350
return buildUnsupportedTimelineItem(eventItemProxy, eventType, error, isOutgoing)
Lines changed: 2 additions & 2 deletions
Loading
Lines changed: 2 additions & 2 deletions
Loading

0 commit comments

Comments
 (0)