From 76b04c48ec6a46b66ae257c59af1aa9f6c0de58e Mon Sep 17 00:00:00 2001 From: Doug <6060466+pixlwave@users.noreply.github.com> Date: Mon, 4 Dec 2023 14:47:43 +0000 Subject: [PATCH] Use ListRow in InviteUsersScreen and MessageForwardingScreen. (#2196) * Use ListRow in InviteUsersScreen and MessageForwardingScreen. * Remove button styles and fix snapshots. --- ElementX.xcodeproj/project.pbxproj | 26 +-- .../xcshareddata/swiftpm/Package.resolved | 2 +- .../Other/AccessibilityIdentifiers.swift | 1 + .../Form Styles/FormButtonStyles.swift | 189 +----------------- .../Other/SwiftUI/Form Styles/FormRow.swift | 22 -- .../Form Styles/FormRowLabelStyle.swift | 82 -------- .../Other/SwiftUI/Views/UserProfileCell.swift | 130 ------------ .../SwiftUI/Views/UserProfileListRow.swift | 96 +++++++++ .../View/InviteUsersScreen.swift | 51 +++-- .../View/MessageForwardingScreen.swift | 37 ++-- .../View/Timeline/PollOptionView.swift | 7 +- .../View/StartChatScreen.swift | 14 +- ...nator.swift => BlankFormCoordinator.swift} | 3 +- .../Sources/InviteUsersScreenUITests.swift | 6 +- ...iPad-9th-generation.appLockSetupFlow-0.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-1.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-2.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-3.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-4.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-5.png | 4 +- ...Pad-9th-generation.appLockSetupFlow-99.png | 4 +- ...generation.appLockSetupFlowMandatory-0.png | 4 +- ...generation.appLockSetupFlowMandatory-1.png | 4 +- ...generation.appLockSetupFlowMandatory-2.png | 4 +- ...-9th-generation.appLockSetupFlowUnlock.png | 4 +- ...n-GB-iPad-9th-generation.inviteUsers-1.png | 4 +- .../en-GB-iPad-9th-generation.inviteUsers.png | 4 +- ...Pad-9th-generation.inviteUsersInRoom-1.png | 4 +- ...ion.inviteUsersInRoomExistingMembers-1.png | 4 +- .../en-GB-iPad-9th-generation.startChat-1.png | 4 +- .../en-GB-iPad-9th-generation.startChat-2.png | 4 +- .../en-GB-iPad-9th-generation.startChat.png | 4 +- .../en-GB-iPhone-14.appLockSetupFlow-0.png | 4 +- .../en-GB-iPhone-14.appLockSetupFlow-1.png | 4 +- .../en-GB-iPhone-14.appLockSetupFlow-2.png | 4 +- .../en-GB-iPhone-14.appLockSetupFlow-99.png | 4 +- ...-iPhone-14.appLockSetupFlowMandatory-0.png | 4 +- ...-iPhone-14.appLockSetupFlowMandatory-1.png | 4 +- ...en-GB-iPhone-14.appLockSetupFlowUnlock.png | 4 +- .../en-GB-iPhone-14.inviteUsers-1.png | 4 +- .../en-GB-iPhone-14.inviteUsers.png | 4 +- .../en-GB-iPhone-14.inviteUsersInRoom-1.png | 4 +- ...-14.inviteUsersInRoomExistingMembers-1.png | 4 +- .../en-GB-iPhone-14.startChat-1.png | 4 +- .../en-GB-iPhone-14.startChat-2.png | 4 +- .../Application/en-GB-iPhone-14.startChat.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-0.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-1.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-2.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-3.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-4.png | 4 +- ...iPad-9th-generation.appLockSetupFlow-5.png | 4 +- ...Pad-9th-generation.appLockSetupFlow-99.png | 4 +- ...generation.appLockSetupFlowMandatory-0.png | 4 +- ...generation.appLockSetupFlowMandatory-1.png | 4 +- ...generation.appLockSetupFlowMandatory-2.png | 4 +- ...-9th-generation.appLockSetupFlowUnlock.png | 4 +- ...eudo-iPad-9th-generation.inviteUsers-1.png | 4 +- ...pseudo-iPad-9th-generation.inviteUsers.png | 4 +- ...Pad-9th-generation.inviteUsersInRoom-1.png | 4 +- ...ion.inviteUsersInRoomExistingMembers-1.png | 4 +- ...pseudo-iPad-9th-generation.startChat-1.png | 4 +- ...pseudo-iPad-9th-generation.startChat-2.png | 4 +- .../pseudo-iPad-9th-generation.startChat.png | 4 +- .../pseudo-iPhone-14.appLockSetupFlow-0.png | 4 +- .../pseudo-iPhone-14.appLockSetupFlow-1.png | 4 +- .../pseudo-iPhone-14.appLockSetupFlow-2.png | 4 +- ...-iPhone-14.appLockSetupFlowMandatory-0.png | 4 +- ...-iPhone-14.appLockSetupFlowMandatory-1.png | 4 +- ...seudo-iPhone-14.appLockSetupFlowUnlock.png | 4 +- .../pseudo-iPhone-14.inviteUsers-1.png | 4 +- .../pseudo-iPhone-14.inviteUsers.png | 4 +- .../pseudo-iPhone-14.inviteUsersInRoom-1.png | 4 +- ...-14.inviteUsersInRoomExistingMembers-1.png | 4 +- .../pseudo-iPhone-14.startChat-1.png | 4 +- .../pseudo-iPhone-14.startChat-2.png | 4 +- .../pseudo-iPhone-14.startChat.png | 4 +- .../PreviewTests/test_formButtonStyles.1.png | 4 +- .../test_messageForwardingScreen.1.png | 4 +- .../PreviewTests/test_userProfileCell.1.png | 4 +- project.yml | 2 +- 81 files changed, 304 insertions(+), 628 deletions(-) delete mode 100644 ElementX/Sources/Other/SwiftUI/Form Styles/FormRow.swift delete mode 100644 ElementX/Sources/Other/SwiftUI/Form Styles/FormRowLabelStyle.swift delete mode 100644 ElementX/Sources/Other/SwiftUI/Views/UserProfileCell.swift create mode 100644 ElementX/Sources/Other/SwiftUI/Views/UserProfileListRow.swift rename ElementX/Sources/UITests/{BlanckFormCoordinator.swift => BlankFormCoordinator.swift} (96%) diff --git a/ElementX.xcodeproj/project.pbxproj b/ElementX.xcodeproj/project.pbxproj index d3062e2b2..418193a19 100644 --- a/ElementX.xcodeproj/project.pbxproj +++ b/ElementX.xcodeproj/project.pbxproj @@ -199,7 +199,6 @@ 355B11D08CE0CEF97A813236 /* AppRoutes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27A9E3FBE8A66B5A17AD7F74 /* AppRoutes.swift */; }; 3582056513A384F110EC8274 /* MediaPlayerProviderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D7A2C4A3A74F0D2FFE9356A /* MediaPlayerProviderTests.swift */; }; 35E975CFDA60E05362A7CF79 /* target.yml in Resources */ = {isa = PBXBuildFile; fileRef = 1222DB76B917EB8A55365BA5 /* target.yml */; }; - 3623BACEA8F5BCC63E26A0D3 /* BlanckFormCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F94F70480243CAA65A2008C /* BlanckFormCoordinator.swift */; }; 366D5BFE52CB79E804C7D095 /* CallScreenViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAD9547E47C58930E2CE8306 /* CallScreenViewModelTests.swift */; }; 368C8758FCD079E6AAA18C2C /* NoticeRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5B243E7818E5E9F6A4EDC7A /* NoticeRoomTimelineView.swift */; }; 36AC963F2F04069B7FF1AA0C /* UIConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E6D88E8AFFBF2C1D589C0FA /* UIConstants.swift */; }; @@ -241,7 +240,6 @@ 407DCE030E0F9B7C9861D38A /* Mapbox in Frameworks */ = {isa = PBXBuildFile; productRef = C1BF15833233CD3BDB7E2B1D /* Mapbox */; }; 40B79D20A873620F7F128A2C /* UserPreference.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35FA991289149D31F4286747 /* UserPreference.swift */; }; 414F50CFCFEEE2611127DCFB /* RestorationToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3558A15CFB934F9229301527 /* RestorationToken.swift */; }; - 4166A7DD2A4E2EFF0EB9369B /* FormRowLabelStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1897720266C036471AD9D1B /* FormRowLabelStyle.swift */; }; 41CE5E1289C8768FC5B6490C /* RoomTimelineItemViewState.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C2D52E36AD614B3C003EF6 /* RoomTimelineItemViewState.swift */; }; 41DFDD212D1BE57CA50D783B /* KZFileWatchers in Frameworks */ = {isa = PBXBuildFile; productRef = 81DB3AB6CE996AB3954F4F03 /* KZFileWatchers */; }; 41F553349AF44567184822D8 /* APNSPayload.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94D670124FC3E84F23A62CCF /* APNSPayload.swift */; }; @@ -341,7 +339,6 @@ 5C02841B2A86327B2C377682 /* NotificationConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = C830A64609CBD152F06E0457 /* NotificationConstants.swift */; }; 5C164551F7D26E24F09083D3 /* StaticLocationScreenViewModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = C616D90B1E2F033CAA325439 /* StaticLocationScreenViewModelProtocol.swift */; }; 5C8AFBF168A41E20835F3B86 /* LoginScreenUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DB34B0C74CD242FED9DD069 /* LoginScreenUITests.swift */; }; - 5CE74302A0725F56F1E9D2A0 /* FormRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = E80F9E9B93B6ECE9A937B1C6 /* FormRow.swift */; }; 5D27B6537591471A42C89027 /* EmoteRoomTimelineItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 450E04B2A976CC4C8CC1807C /* EmoteRoomTimelineItem.swift */; }; 5D2AF8C0DF872E7985F8FE54 /* TimelineDeliveryStatusView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5AC06FC11B6638F7BF1670E /* TimelineDeliveryStatusView.swift */; }; 5D4643E485C179B2F485C519 /* MentionSuggestionItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FD0E68C42CA7DDCD4CAD68D /* MentionSuggestionItemView.swift */; }; @@ -906,11 +903,13 @@ EAF2B3E6C6AEC4AD3A8BD454 /* RoomMemberDetailsScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84A87D0471D438A233C2CF4A /* RoomMemberDetailsScreenViewModel.swift */; }; EB87DF90CF6F8D5D12404C6E /* SecureBackupLogoutConfirmationScreenViewModelTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 848F69921527D31CAACB93AF /* SecureBackupLogoutConfirmationScreenViewModelTests.swift */; }; EB88DBD77221E2CFE463018C /* NSE.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 0D8F620C8B314840D8602E3F /* NSE.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; + EB9F4688006B52E69DF5358F /* BlankFormCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C7F63EB1525E697CAEB002B /* BlankFormCoordinator.swift */; }; EBDB339A7C127F068B6E52E5 /* VoiceMessageRecordingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A634D8DD1E10D858CF7995D /* VoiceMessageRecordingView.swift */; }; EBE13FAB4E29738AC41BD3E5 /* InfoPlistReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A580295A56B55A856CC4084 /* InfoPlistReader.swift */; }; EC280623A42904341363EAAF /* Collections in Frameworks */ = {isa = PBXBuildFile; productRef = A20EA00CCB9DBE0FFB17DD09 /* Collections */; }; ECA636DAF071C611FDC2BB57 /* Strings+Untranslated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A18F6CE4D694D21E4EA9B25 /* Strings+Untranslated.swift */; }; ED564C8C7C43CF5F67000368 /* PlatformViewVersionPredicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D26813CCE39221FE30BF22CD /* PlatformViewVersionPredicate.swift */; }; + ED90A59F068FD0CA27E602ED /* UserProfileListRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = E10DA51DBC8C7E1460DBCCBD /* UserProfileListRow.swift */; }; EDF8919F15DE0FF00EF99E70 /* DocumentPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F5567A7EF6F2AB9473236F6 /* DocumentPicker.swift */; }; EE4E2C1922BBF5169E213555 /* PillAttachmentViewProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B53D6C5C0D14B04D3AB3F6E /* PillAttachmentViewProvider.swift */; }; EE4F5601356228FF72FC56B6 /* MockClientProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F40F48279322E504153AB0D /* MockClientProxy.swift */; }; @@ -959,7 +958,6 @@ F833D5B5BE6707F961FA88DB /* SecureBackupController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A1119E9C63AE530252640D2 /* SecureBackupController.swift */; }; F86102DC2C68BBBB0521BAAE /* SoftLogoutScreenModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BB385E148DE55C85C0A02D6 /* SoftLogoutScreenModels.swift */; }; F8E725D42023ECA091349245 /* AudioRoomTimelineItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57EAAF82432B0B53881CF826 /* AudioRoomTimelineItem.swift */; }; - F94000E3D91B11C527DA8807 /* UserProfileCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 923485F85E1D765EF9D20E88 /* UserProfileCell.swift */; }; F9842667B68DC6FA1F9ECCBB /* NSItemProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = F72EFC8C634469F9262659C7 /* NSItemProvider.swift */; }; F99FB21EFC6D99D247FE7CBE /* Kingfisher in Frameworks */ = {isa = PBXBuildFile; productRef = DE8DC9B3FBA402117DC4C49F /* Kingfisher */; }; F9EA79092C18A8CFE4922DD2 /* PollFormScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = F64A8582F65567AC38C2976A /* PollFormScreenViewModel.swift */; }; @@ -1145,6 +1143,7 @@ 1B927CF5EF7FCCDA5EDC474B /* NotificationItemProxyProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationItemProxyProtocol.swift; sourceTree = ""; }; 1BA5A62DA4B543827FF82354 /* LAContextMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LAContextMock.swift; sourceTree = ""; }; 1C21A715237F2B6D6E80998C /* SecureBackupControllerProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureBackupControllerProtocol.swift; sourceTree = ""; }; + 1C7F63EB1525E697CAEB002B /* BlankFormCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlankFormCoordinator.swift; sourceTree = ""; }; 1CC09F30B0E1010951952BDC /* SecureBackupLogoutConfirmationScreenUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureBackupLogoutConfirmationScreenUITests.swift; sourceTree = ""; }; 1CC575D1895FA62591451A93 /* RoomMemberDetailsScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomMemberDetailsScreen.swift; sourceTree = ""; }; 1D56469A9EE0CFA2B7BA9760 /* SessionVerificationControllerProxyProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SessionVerificationControllerProxyProtocol.swift; sourceTree = ""; }; @@ -1533,7 +1532,6 @@ 8F421E51DF00377DE1A01354 /* CompletionSuggestionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CompletionSuggestionView.swift; sourceTree = ""; }; 8F61A0DD8243B395499C99A2 /* InvitesScreenUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InvitesScreenUITests.swift; sourceTree = ""; }; 8F7D42E66E939B709C1EC390 /* MockRoomSummaryProvider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockRoomSummaryProvider.swift; sourceTree = ""; }; - 8F94F70480243CAA65A2008C /* BlanckFormCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlanckFormCoordinator.swift; sourceTree = ""; }; 8FC803282F9268D49F4ABF14 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 907FA4DE17DEA1A3738EFB83 /* AudioRecorder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioRecorder.swift; sourceTree = ""; }; 90A55430639712CFACA34F43 /* TextRoomTimelineItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TextRoomTimelineItem.swift; sourceTree = ""; }; @@ -1541,7 +1539,6 @@ 913C8E13B8B602C7B6C0C4AE /* PillTextAttachmentData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PillTextAttachmentData.swift; sourceTree = ""; }; 91831D7042EADD0CC2B5EC36 /* SecureBackupScreenUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureBackupScreenUITests.swift; sourceTree = ""; }; 91CF6F7D08228D16BA69B63B /* zh-Hant-TW */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hant-TW"; path = "zh-Hant-TW.lproj/Localizable.strings"; sourceTree = ""; }; - 923485F85E1D765EF9D20E88 /* UserProfileCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserProfileCell.swift; sourceTree = ""; }; 92390F9FA98255440A6BF5F8 /* OIDCAuthenticationPresenter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OIDCAuthenticationPresenter.swift; sourceTree = ""; }; 92FCD9116ADDE820E4E30F92 /* UIKitBackgroundTask.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIKitBackgroundTask.swift; sourceTree = ""; }; 9332DFE9642F0A46ECA0497B /* BlurHashEncode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlurHashEncode.swift; sourceTree = ""; }; @@ -1777,7 +1774,6 @@ D0A45283CF1DB96E583BECA6 /* ImageRoomTimelineView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageRoomTimelineView.swift; sourceTree = ""; }; D0C2D52E36AD614B3C003EF6 /* RoomTimelineItemViewState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomTimelineItemViewState.swift; sourceTree = ""; }; D121B4FCFC38DBCC17BCC6D6 /* ComposerToolbar.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposerToolbar.swift; sourceTree = ""; }; - D1897720266C036471AD9D1B /* FormRowLabelStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormRowLabelStyle.swift; sourceTree = ""; }; D1BC84BA0AF11C2128D58ABD /* Common.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Common.swift; sourceTree = ""; }; D263254AFE5B7993FFBBF324 /* NSE.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = NSE.entitlements; sourceTree = ""; }; D26813CCE39221FE30BF22CD /* PlatformViewVersionPredicate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PlatformViewVersionPredicate.swift; sourceTree = ""; }; @@ -1826,6 +1822,7 @@ DF3D25B3EDB283B5807EADCF /* ReadMarkerRoomTimelineItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadMarkerRoomTimelineItem.swift; sourceTree = ""; }; E062C1750EFC8627DE4CAB8E /* MapTilerAuthorization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTilerAuthorization.swift; sourceTree = ""; }; E0FCA0957FAA0E15A9F5579D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = en; path = en.lproj/Untranslated.stringsdict; sourceTree = ""; }; + E10DA51DBC8C7E1460DBCCBD /* UserProfileListRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserProfileListRow.swift; sourceTree = ""; }; E1573D28C8A9FB6399D0EEFB /* SecureBackupLogoutConfirmationScreenCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureBackupLogoutConfirmationScreenCoordinator.swift; sourceTree = ""; }; E1A5FEF17ED7E6176D922D4F /* RoomDetailsScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomDetailsScreen.swift; sourceTree = ""; }; E1E0B4A34E69BD2132BEC521 /* MessageText.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageText.swift; sourceTree = ""; }; @@ -1854,7 +1851,6 @@ E6F5D66F158A6662F953733E /* NotificationSettingsProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationSettingsProxy.swift; sourceTree = ""; }; E6FCC416A3BFE73DF7B3E6BF /* RoomTimelineControllerFactory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomTimelineControllerFactory.swift; sourceTree = ""; }; E71C28CF29CD05B6D6AE8580 /* HomeScreenSessionVerificationBanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeScreenSessionVerificationBanner.swift; sourceTree = ""; }; - E80F9E9B93B6ECE9A937B1C6 /* FormRow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormRow.swift; sourceTree = ""; }; E8294DB9E95C0C0630418466 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = ""; }; E8774CF614849664B5B3C2A1 /* UserSessionFlowCoordinatorStateMachine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserSessionFlowCoordinatorStateMachine.swift; sourceTree = ""; }; E8A1BBEF7318CA6B6ACCF4AE /* AppLockSetupUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppLockSetupUITests.swift; sourceTree = ""; }; @@ -2253,8 +2249,6 @@ isa = PBXGroup; children = ( 95A1CCDEE545CB6453B084BF /* FormButtonStyles.swift */, - E80F9E9B93B6ECE9A937B1C6 /* FormRow.swift */, - D1897720266C036471AD9D1B /* FormRowLabelStyle.swift */, ); path = "Form Styles"; sourceTree = ""; @@ -2414,7 +2408,7 @@ 2ECFF6B05DAA37EB10DBF7E8 /* UITests */ = { isa = PBXGroup; children = ( - 8F94F70480243CAA65A2008C /* BlanckFormCoordinator.swift */, + 1C7F63EB1525E697CAEB002B /* BlankFormCoordinator.swift */, 46C208DA43CE25D13E670F40 /* UITestsAppCoordinator.swift */, EBEB8D9F4940E161B18FE4BC /* UITestsNotificationCenter.swift */, 6CEBE5EA91E8691EDF364EC2 /* UITestsScreenIdentifier.swift */, @@ -2501,7 +2495,7 @@ 648DD1C10E4957CB791FE0B8 /* OverridableAvatarImage.swift */, C705E605EF57C19DBE86FFA1 /* PlaceholderAvatarImage.swift */, 839E2C35DF3F9C7B54C3CE49 /* RoundedCornerShape.swift */, - 923485F85E1D765EF9D20E88 /* UserProfileCell.swift */, + E10DA51DBC8C7E1460DBCCBD /* UserProfileListRow.swift */, ); path = Views; sourceTree = ""; @@ -5381,7 +5375,7 @@ 6D046D653DA28ADF1E6E59A4 /* BackgroundTaskServiceProtocol.swift in Sources */, A4B0BAD62A12ED76BD611B79 /* BadgeView.swift in Sources */, 38546A6010A2CF240EC9AF73 /* BindableState.swift in Sources */, - 3623BACEA8F5BCC63E26A0D3 /* BlanckFormCoordinator.swift in Sources */, + EB9F4688006B52E69DF5358F /* BlankFormCoordinator.swift in Sources */, 5EE1D4E316D66943E97FDCF2 /* BloomView.swift in Sources */, B6DF6B6FA8734B70F9BF261E /* BlurHashDecode.swift in Sources */, E794AB6ABE1FF5AF0573FEA1 /* BlurHashEncode.swift in Sources */, @@ -5478,8 +5472,6 @@ 1F04C63D4FA95948E3F52147 /* FileRoomTimelineView.swift in Sources */, F5D2270B5021D521C0D22E11 /* FlowCoordinatorProtocol.swift in Sources */, B3EDDEC1839BB5A3747624BB /* FormButtonStyles.swift in Sources */, - 5CE74302A0725F56F1E9D2A0 /* FormRow.swift in Sources */, - 4166A7DD2A4E2EFF0EB9369B /* FormRowLabelStyle.swift in Sources */, A0A0D2A9564BDA3FDE2E360F /* FormattedBodyText.swift in Sources */, 0ED691ADC9C2EA457E7A9427 /* FormattingToolbar.swift in Sources */, 46BA7F4B4D3A7164DED44B88 /* FullscreenDialog.swift in Sources */, @@ -5924,7 +5916,7 @@ E3291AD16D7A5CB14781819C /* UserNotificationCenterProtocol.swift in Sources */, 40B79D20A873620F7F128A2C /* UserPreference.swift in Sources */, 80DEA2A4B20F9E279EAE6B2B /* UserProfile+Mock.swift in Sources */, - F94000E3D91B11C527DA8807 /* UserProfileCell.swift in Sources */, + ED90A59F068FD0CA27E602ED /* UserProfileListRow.swift in Sources */, E21FE4C5B614F311C0955859 /* UserProfileProxy.swift in Sources */, 9CCC77C31CB399661A034739 /* UserProperties+Element.swift in Sources */, 8AB8ED1051216546CB35FA0E /* UserSession.swift in Sources */, @@ -6692,7 +6684,7 @@ repositoryURL = "https://github.com/vector-im/compound-ios"; requirement = { kind = revision; - revision = 8774e358ac6927f041400733ac681456f0910c10; + revision = 56456508d27b7defef647da15d1bd854d6f88a2d; }; }; 9A472EE0218FE7DCF5283429 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */ = { diff --git a/ElementX.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/ElementX.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index bef146629..54520f10c 100644 --- a/ElementX.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/ElementX.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -14,7 +14,7 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/vector-im/compound-ios", "state" : { - "revision" : "8774e358ac6927f041400733ac681456f0910c10" + "revision" : "56456508d27b7defef647da15d1bd854d6f88a2d" } }, { diff --git a/ElementX/Sources/Other/AccessibilityIdentifiers.swift b/ElementX/Sources/Other/AccessibilityIdentifiers.swift index dcdba7607..7390bbd3d 100644 --- a/ElementX/Sources/Other/AccessibilityIdentifiers.swift +++ b/ElementX/Sources/Other/AccessibilityIdentifiers.swift @@ -114,6 +114,7 @@ enum A11yIdentifiers { struct InviteUsersScreen { let proceed = "invite_users-proceed" + let userProfile = "invite_users-user_profile" } struct LoginScreen { diff --git a/ElementX/Sources/Other/SwiftUI/Form Styles/FormButtonStyles.swift b/ElementX/Sources/Other/SwiftUI/Form Styles/FormButtonStyles.swift index 860a7988a..3984b1821 100644 --- a/ElementX/Sources/Other/SwiftUI/Form Styles/FormButtonStyles.swift +++ b/ElementX/Sources/Other/SwiftUI/Form Styles/FormButtonStyles.swift @@ -14,113 +14,9 @@ // limitations under the License. // +import Compound import SwiftUI -/// A view to be added on the trailing edge of a form row. -struct FormRowAccessory: View { - @Environment(\.isEnabled) private var isEnabled - - enum Kind { - case navigationLink - case progressView - case singleSelection(isSelected: Bool) - case multipleSelection(isSelected: Bool) - } - - let kind: Kind - - static var navigationLink: Self { - .init(kind: .navigationLink) - } - - static var progressView: Self { - .init(kind: .progressView) - } - - static func singleSelection(isSelected: Bool) -> Self { - .init(kind: .singleSelection(isSelected: isSelected)) - } - - static func multipleSelection(isSelected: Bool) -> Self { - .init(kind: .multipleSelection(isSelected: isSelected)) - } - - var body: some View { - switch kind { - case .navigationLink: - Image(systemName: "chevron.forward") - .font(.compound.bodyMDSemibold) - .foregroundColor(.compound.iconTertiaryAlpha) - case .progressView: - ProgressView() - case .singleSelection(let isSelected): - if isSelected { - Image(systemName: "checkmark.circle.fill") - .font(.compound.bodyLG) - .foregroundColor(isSelected && isEnabled ? .compound.iconPrimary : .compound.iconTertiary) - .accessibilityAddTraits(.isSelected) - } - case .multipleSelection(let isSelected): - Image(systemName: isSelected ? "checkmark.circle.fill" : "circle") - .font(.compound.bodyLG) - .foregroundColor(isSelected && isEnabled ? .compound.iconPrimary : .compound.iconTertiary) - .accessibilityAddTraits(isSelected ? .isSelected : []) - } - } - - init(kind: Kind) { - self.kind = kind - } -} - -/// Default button styling for form rows. -/// -/// The primitive style is needed to set the list row insets to `0`. The inner style is then needed -/// to change the background colour depending on whether the button is currently pressed or not. -struct FormButtonStyle: PrimitiveButtonStyle { - var iconAlignment: VerticalAlignment = .firstTextBaseline - /// An accessory to be added on the trailing side of the row. - var accessory: FormRowAccessory? - - func makeBody(configuration: Configuration) -> some View { - Button(action: configuration.trigger) { - configuration.label - .labelStyle(FormRowLabelStyle(alignment: iconAlignment, role: configuration.role)) - .frame(maxHeight: .infinity) // Make sure the label fills the cell vertically. - } - .buttonStyle(Style(accessory: accessory)) - .listRowInsets(EdgeInsets()) // Remove insets so the background fills the cell. - } - - /// Inner style used to set the pressed background colour. - private struct Style: ButtonStyle { - var accessory: FormRowAccessory? - - func makeBody(configuration: Configuration) -> some View { - HStack(spacing: 8) { - configuration.label - .labelStyle(FormRowLabelStyle(role: configuration.role)) - .foregroundColor(.compound.textPrimary) - .frame(maxWidth: .infinity, alignment: .leading) - - accessory - } - .contentShape(Rectangle()) - .padding(FormRow.insets) // Re-apply the normal insets using padding. - .background(backgroundColor(for: configuration)) - } - - private func backgroundColor(for configuration: Configuration) -> Color { - switch accessory?.kind { - case .none, .navigationLink, .progressView: - return configuration.isPressed ? .compound.bgSubtlePrimary : .compound.bgCanvasDefaultLevel1 - default: - return .compound.bgCanvasDefaultLevel1 - } - } - } -} - /// Small squared action button style for settings screens struct FormActionButtonStyle: ButtonStyle { let title: String @@ -146,88 +42,13 @@ struct FormActionButtonStyle: ButtonStyle { struct FormButtonStyles_Previews: PreviewProvider, TestablePreview { static var previews: some View { Form { - Section { + Section { } header: { Button { } label: { - Label("Hello world", systemImage: "globe") + CompoundIcon(asset: Asset.Images.shareIos) } - .buttonStyle(FormButtonStyle()) - - Button { } label: { - Label("Block user", systemImage: "circle.slash") - } - .buttonStyle(FormButtonStyle(accessory: .progressView)) - .disabled(true) - - Button { } label: { - Label("Show something", systemImage: "rectangle.portrait") - } - .buttonStyle(FormButtonStyle(accessory: .navigationLink)) - - Button(role: .destructive) { } label: { - Label("Destroy", systemImage: "trash") - } - .buttonStyle(FormButtonStyle()) - - ShareLink(item: "test") - .buttonStyle(FormButtonStyle()) + .buttonStyle(FormActionButtonStyle(title: "Share")) } - .compoundFormSection() - - Section("Single selection") { - Button { } label: { - Text("Hello world") - } - .buttonStyle(FormButtonStyle()) - - Button { } label: { - Text("Selected") - } - .buttonStyle(FormButtonStyle(accessory: .singleSelection(isSelected: true))) - - Button { } label: { - Text("Selected (disabled)") - } - .buttonStyle(FormButtonStyle(accessory: .singleSelection(isSelected: true))) - .disabled(true) - - Button { } label: { - Text("Unselected") - } - .buttonStyle(FormButtonStyle(accessory: .singleSelection(isSelected: false))) - } - .compoundFormSection() - - Section("Multiple selection") { - Button { } label: { - Text("Hello world") - } - .buttonStyle(FormButtonStyle()) - - Button { } label: { - Text("Selected") - } - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: true))) - - Button { } label: { - Text("Selected (disabled)") - } - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: true))) - .disabled(true) - - Button { } label: { - Text("Unselected") - } - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: false))) - } - .compoundFormSection() - - Section { - Button(role: .destructive) { } label: { - Label("Destroy", systemImage: "x.circle") - } - .buttonStyle(FormButtonStyle()) - } - .compoundFormSection() } + .compoundList() } } diff --git a/ElementX/Sources/Other/SwiftUI/Form Styles/FormRow.swift b/ElementX/Sources/Other/SwiftUI/Form Styles/FormRow.swift deleted file mode 100644 index 5bbdf64f1..000000000 --- a/ElementX/Sources/Other/SwiftUI/Form Styles/FormRow.swift +++ /dev/null @@ -1,22 +0,0 @@ -// -// Copyright 2023 New Vector Ltd -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import SwiftUI - -enum FormRow { - /// Element specific insets that are used for all our Form rows. - static let insets = EdgeInsets(top: 7, leading: 16, bottom: 7, trailing: 16) -} diff --git a/ElementX/Sources/Other/SwiftUI/Form Styles/FormRowLabelStyle.swift b/ElementX/Sources/Other/SwiftUI/Form Styles/FormRowLabelStyle.swift deleted file mode 100644 index 87c224f8f..000000000 --- a/ElementX/Sources/Other/SwiftUI/Form Styles/FormRowLabelStyle.swift +++ /dev/null @@ -1,82 +0,0 @@ -// -// Copyright 2023 New Vector Ltd -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import SwiftUI - -struct FormRowLabelStyle: LabelStyle { - var alignment = VerticalAlignment.firstTextBaseline - var role: ButtonRole? - - private var titleColor: Color { - if role == .destructive { - return .compound.textCriticalPrimary - } else { - return .compound.textPrimary - } - } - - private var iconBackgroundColor: Color { - if role == .destructive { - return .compound._bgCriticalSubtleAlpha - } else { - return .compound._bgSubtleSecondaryAlpha - } - } - - private var iconForegroundColor: Color { - if role == .destructive { - return .compound.textCriticalPrimary - } else { - return .compound.iconTertiaryAlpha - } - } - - func makeBody(configuration: Configuration) -> some View { - HStack(alignment: alignment, spacing: 16) { - configuration.icon - .foregroundColor(iconForegroundColor) - .padding(4) - .scaledFrame(size: 30) - .background(iconBackgroundColor) - .clipShape(RoundedRectangle(cornerRadius: 8)) - configuration.title - .font(.compound.bodyLG) - .foregroundColor(titleColor) - } - } -} - -struct FormRowLabelStyle_Previews: PreviewProvider, TestablePreview { - static var previews: some View { - VStack(alignment: .leading, spacing: 12) { - Label("Person", systemImage: "person") - .labelStyle(FormRowLabelStyle()) - - Label("Help", systemImage: "questionmark.circle") - .labelStyle(FormRowLabelStyle()) - - Label("Camera", systemImage: "camera") - .labelStyle(FormRowLabelStyle()) - - Label("Help", systemImage: "questionmark") - .labelStyle(FormRowLabelStyle()) - - Label("Destroy", systemImage: "x.circle") - .labelStyle(FormRowLabelStyle(role: .destructive)) - } - .padding() - } -} diff --git a/ElementX/Sources/Other/SwiftUI/Views/UserProfileCell.swift b/ElementX/Sources/Other/SwiftUI/Views/UserProfileCell.swift deleted file mode 100644 index 68d43cd8b..000000000 --- a/ElementX/Sources/Other/SwiftUI/Views/UserProfileCell.swift +++ /dev/null @@ -1,130 +0,0 @@ -// -// Copyright 2023 New Vector Ltd -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// - -import MatrixRustSDK -import SwiftUI - -struct UserProfileCell: View { - let user: UserProfileProxy - let membership: MembershipState? - let imageProvider: ImageProviderProtocol? - - private var subtitle: String? { - if let membershipText = membership?.localizedDescription { - return membershipText - } else if user.displayName != nil { - return user.userID - } else { - return nil - } - } - - var body: some View { - HStack(spacing: 16) { - LoadableAvatarImage(url: user.avatarURL, - name: user.displayName, - contentID: user.userID, - avatarSize: .user(on: .startChat), - imageProvider: imageProvider) - .accessibilityHidden(true) - - VStack(alignment: .leading, spacing: 0) { - Text(user.displayName ?? user.userID) - .font(.compound.headingSM) - .foregroundColor(.compound.textPrimary) - - if let subtitle { - Text(subtitle) - .font(.compound.bodyMD) - .foregroundColor(.compound.textSecondary) - } - - warningContent - .padding(.top, 2) - } - .accessibilityElement(children: .combine) - } - } - - // MARK: - Private - - @ViewBuilder - private var warningContent: some View { - if !user.isVerified, membership == nil { - HStack(alignment: .firstTextBaseline, spacing: 5) { - Text(Image(systemName: "exclamationmark.circle.fill")) - .foregroundColor(.compound.textCriticalPrimary) - - Text(L10n.commonInviteUnknownProfile) - .foregroundColor(.compound.textSecondary) - } - .font(.compound.bodyXS) - } - } -} - -private extension MembershipState { - var localizedDescription: String? { - switch self { - case .join: - return L10n.screenRoomDetailsAlreadyAMember - case .invite: - return L10n.screenRoomDetailsAlreadyInvited - default: - return nil - } - } -} - -struct UserProfileCell_Previews: PreviewProvider, TestablePreview { - static let action: () -> Void = { } - - static var previews: some View { - Form { - Button(action: action) { - UserProfileCell(user: .mockAlice, membership: nil, imageProvider: MockMediaProvider()) - } - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: true))) - .previewDisplayName("Selected user") - - Button(action: action) { - UserProfileCell(user: .mockBob, membership: nil, imageProvider: MockMediaProvider()) - } - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: false))) - .previewDisplayName("Unselected user") - - Button(action: action) { - UserProfileCell(user: .mockCharlie, membership: .join, imageProvider: MockMediaProvider()) - } - .disabled(true) - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: true))) - .previewDisplayName("Selected disabled user") - - Button(action: action) { - UserProfileCell(user: .init(userID: "@someone:matrix.org"), membership: .join, imageProvider: MockMediaProvider()) - } - .disabled(true) - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: true))) - .previewDisplayName("Unverified joined user") - - Button(action: action) { - UserProfileCell(user: .init(userID: "@someone:matrix.org"), membership: nil, imageProvider: MockMediaProvider()) - } - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: false))) - .previewDisplayName("Unverified user") - } - } -} diff --git a/ElementX/Sources/Other/SwiftUI/Views/UserProfileListRow.swift b/ElementX/Sources/Other/SwiftUI/Views/UserProfileListRow.swift new file mode 100644 index 000000000..c71278ff7 --- /dev/null +++ b/ElementX/Sources/Other/SwiftUI/Views/UserProfileListRow.swift @@ -0,0 +1,96 @@ +// +// Copyright 2023 New Vector Ltd +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import Compound +import MatrixRustSDK +import SwiftUI + +struct UserProfileListRow: View { + let user: UserProfileProxy + let membership: MembershipState? + let imageProvider: ImageProviderProtocol? + + let kind: ListRow.Kind + + var isUnknownProfile: Bool { !user.isVerified && membership == nil } + + private var subtitle: String? { + guard !isUnknownProfile else { return L10n.commonInviteUnknownProfile } + + if let membershipText = membership?.localizedDescription { + return membershipText + } else if user.displayName != nil { + return user.userID + } else { + return nil + } + } + + var body: some View { + ListRow(label: .avatar(title: user.displayName ?? user.userID, + description: subtitle, + icon: avatar, + role: isUnknownProfile ? .error : nil), + kind: kind) + } + + var avatar: LoadableAvatarImage { + LoadableAvatarImage(url: user.avatarURL, + name: user.displayName, + contentID: user.userID, + avatarSize: .user(on: .startChat), + imageProvider: imageProvider) + } +} + +private extension MembershipState { + var localizedDescription: String? { + switch self { + case .join: + return L10n.screenRoomDetailsAlreadyAMember + case .invite: + return L10n.screenRoomDetailsAlreadyInvited + default: + return nil + } + } +} + +struct UserProfileCell_Previews: PreviewProvider, TestablePreview { + static let action: () -> Void = { } + + static var previews: some View { + Form { + UserProfileListRow(user: .mockAlice, membership: nil, imageProvider: MockMediaProvider(), + kind: .multiSelection(isSelected: true, action: action)) + + UserProfileListRow(user: .mockBob, membership: nil, imageProvider: MockMediaProvider(), + kind: .multiSelection(isSelected: false, action: action)) + + UserProfileListRow(user: .mockCharlie, membership: .join, imageProvider: MockMediaProvider(), + kind: .multiSelection(isSelected: true, action: action)) + .disabled(true) + + UserProfileListRow(user: .init(userID: "@someone:matrix.org"), membership: .join, imageProvider: MockMediaProvider(), + kind: .multiSelection(isSelected: false, action: action)) + .disabled(true) + + UserProfileListRow(user: .init(userID: "@someone:matrix.org"), membership: nil, imageProvider: MockMediaProvider(), + kind: .multiSelection(isSelected: false, action: action)) + } + .compoundList() + } +} diff --git a/ElementX/Sources/Screens/InviteUsersScreen/View/InviteUsersScreen.swift b/ElementX/Sources/Screens/InviteUsersScreen/View/InviteUsersScreen.swift index 5ab309691..dae4a7f39 100644 --- a/ElementX/Sources/Screens/InviteUsersScreen/View/InviteUsersScreen.swift +++ b/ElementX/Sources/Screens/InviteUsersScreen/View/InviteUsersScreen.swift @@ -20,9 +20,13 @@ import SwiftUI struct InviteUsersScreen: View { @ObservedObject var context: InviteUsersScreenViewModel.Context + var showTopSection: Bool { + !context.viewState.selectedUsers.isEmpty || context.viewState.isSearching + } + var body: some View { mainContent - .compoundForm() + .compoundList() .scrollDismissesKeyboard(.immediately) .navigationTitle(L10n.screenCreateRoomAddPeopleTitle) .navigationBarTitleDisplayMode(.inline) @@ -40,19 +44,21 @@ struct InviteUsersScreen: View { private var mainContent: some View { GeometryReader { proxy in Form { - // this is a fix for having the carousel not clipped, and inside the form, so when the search is dismissed, it wont break the design - Section { - EmptyView() - } header: { - VStack(spacing: 8) { - selectedUsersSection - .textCase(.none) - .frame(width: proxy.size.width) - - if context.viewState.isSearching { - ProgressView() - .frame(maxWidth: .infinity, alignment: .center) - .listRowBackground(Color.clear) + if showTopSection { + // this is a fix for having the carousel not clipped, and inside the form, so when the search is dismissed, it wont break the design + Section { + EmptyView() + } header: { + VStack(spacing: 16) { + selectedUsersSection + .textCase(.none) + .frame(width: proxy.size.width) + + if context.viewState.isSearching { + ProgressView() + .frame(maxWidth: .infinity, alignment: .center) + .listRowBackground(Color.clear) + } } } } @@ -80,20 +86,21 @@ struct InviteUsersScreen: View { if !context.viewState.usersSection.users.isEmpty { Section { ForEach(context.viewState.usersSection.users, id: \.userID) { user in - Button { context.send(viewAction: .toggleUser(user)) } label: { - UserProfileCell(user: user, - membership: context.viewState.membershipState(user), - imageProvider: context.imageProvider) - } - .disabled(context.viewState.isUserDisabled(user)) - .buttonStyle(FormButtonStyle(accessory: .multipleSelection(isSelected: context.viewState.isUserSelected(user)))) + UserProfileListRow(user: user, + membership: context.viewState.membershipState(user), + imageProvider: context.imageProvider, + kind: .multiSelection(isSelected: context.viewState.isUserSelected(user)) { + context.send(viewAction: .toggleUser(user)) + }) + .disabled(context.viewState.isUserDisabled(user)) + .accessibilityIdentifier(A11yIdentifiers.inviteUsersScreen.userProfile) } } header: { if let title = context.viewState.usersSection.title { Text(title) + .compoundListSectionHeader() } } - .compoundFormSection() } else { Section.empty } diff --git a/ElementX/Sources/Screens/MessageForwardingScreen/View/MessageForwardingScreen.swift b/ElementX/Sources/Screens/MessageForwardingScreen/View/MessageForwardingScreen.swift index 9b44044eb..64ed2168e 100644 --- a/ElementX/Sources/Screens/MessageForwardingScreen/View/MessageForwardingScreen.swift +++ b/ElementX/Sources/Screens/MessageForwardingScreen/View/MessageForwardingScreen.swift @@ -14,6 +14,7 @@ // limitations under the License. // +import Compound import SwiftUI struct MessageForwardingScreen: View { @@ -23,8 +24,9 @@ struct MessageForwardingScreen: View { Form { Section { ForEach(context.viewState.rooms) { room in - MessageForwardingRoomCell(room: room, context: context) - .buttonStyle(FormButtonStyle(accessory: .singleSelection(isSelected: context.viewState.selectedRoomID == room.id))) + MessageForwardingListRow(room: room, + isSelected: context.viewState.selectedRoomID == room.id, + context: context) } // Replace these with ScrollView's `scrollPosition` when dropping iOS 16. } header: { @@ -38,9 +40,8 @@ struct MessageForwardingScreen: View { context.send(viewAction: .reachedBottom) } } - .compoundFormSection() } - .compoundForm() + .compoundList() .navigationTitle(L10n.commonForwardMessage) .navigationBarTitleDisplayMode(.inline) .toolbar { @@ -69,32 +70,20 @@ struct MessageForwardingScreen: View { } } -private struct MessageForwardingRoomCell: View { +private struct MessageForwardingListRow: View { @Environment(\.dynamicTypeSize) var dynamicTypeSize let room: MessageForwardingRoom + let isSelected: Bool let context: MessageForwardingScreenViewModel.Context var body: some View { - Button { - context.send(viewAction: .selectRoom(roomID: room.id)) - } label: { - HStack(spacing: 16.0) { - avatar - - VStack(alignment: .leading, spacing: 2.0) { - Text(room.name) - .font(.compound.bodyMD) - .foregroundColor(.compound.textPrimary) - .lineLimit(1) - Text(room.alias ?? room.id) - .font(.compound.bodySM) - .foregroundColor(.compound.textSecondary) - .lineLimit(1) - } - } - .accessibilityElement(children: .combine) - } + ListRow(label: .avatar(title: room.name, + description: room.alias ?? room.id, + icon: avatar), + kind: .selection(isSelected: isSelected) { + context.send(viewAction: .selectRoom(roomID: room.id)) + }) } @ViewBuilder @MainActor diff --git a/ElementX/Sources/Screens/RoomScreen/View/Timeline/PollOptionView.swift b/ElementX/Sources/Screens/RoomScreen/View/Timeline/PollOptionView.swift index 74c734074..bfc70591e 100644 --- a/ElementX/Sources/Screens/RoomScreen/View/Timeline/PollOptionView.swift +++ b/ElementX/Sources/Screens/RoomScreen/View/Timeline/PollOptionView.swift @@ -17,13 +17,18 @@ import SwiftUI struct PollOptionView: View { + @Environment(\.isEnabled) private var isEnabled + let pollOption: Poll.Option let showVotes: Bool let isFinalResult: Bool var body: some View { HStack(alignment: .firstTextBaseline, spacing: 12) { - FormRowAccessory(kind: .multipleSelection(isSelected: pollOption.isSelected)) + Image(systemSymbol: pollOption.isSelected ? .checkmarkCircleFill : .circle) + .font(.compound.bodyLG) + .foregroundColor(pollOption.isSelected && isEnabled ? .compound.iconPrimary : .compound.iconTertiary) + .accessibilityAddTraits(pollOption.isSelected ? .isSelected : []) VStack(spacing: 10) { HStack(alignment: .lastTextBaseline, spacing: 8) { diff --git a/ElementX/Sources/Screens/StartChatScreen/View/StartChatScreen.swift b/ElementX/Sources/Screens/StartChatScreen/View/StartChatScreen.swift index 9558e80dc..8e2e85d94 100644 --- a/ElementX/Sources/Screens/StartChatScreen/View/StartChatScreen.swift +++ b/ElementX/Sources/Screens/StartChatScreen/View/StartChatScreen.swift @@ -88,14 +88,12 @@ struct StartChatScreen: View { if !context.viewState.usersSection.users.isEmpty { Section { ForEach(context.viewState.usersSection.users, id: \.userID) { user in - ListRow(kind: .custom { - Button { context.send(viewAction: .selectUser(user)) } label: { - UserProfileCell(user: user, membership: nil, imageProvider: context.imageProvider) - .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .leading) - .padding(.horizontal, ListRowPadding.horizontal) - .padding(.vertical, 8) - } - }) + UserProfileListRow(user: user, + membership: nil, + imageProvider: context.imageProvider, + kind: .button { + context.send(viewAction: .selectUser(user)) + }) } } header: { if let title = context.viewState.usersSection.title { diff --git a/ElementX/Sources/UITests/BlanckFormCoordinator.swift b/ElementX/Sources/UITests/BlankFormCoordinator.swift similarity index 96% rename from ElementX/Sources/UITests/BlanckFormCoordinator.swift rename to ElementX/Sources/UITests/BlankFormCoordinator.swift index 0f1d30fca..7a74a4881 100644 --- a/ElementX/Sources/UITests/BlanckFormCoordinator.swift +++ b/ElementX/Sources/UITests/BlankFormCoordinator.swift @@ -14,6 +14,7 @@ // limitations under the License. // +import Compound import SwiftUI class BlankFormCoordinator: CoordinatorProtocol { @@ -28,7 +29,7 @@ private struct BlankForm: View { Form { Text("Nothing to see here.") } - .compoundForm() + .compoundList() } } diff --git a/UITests/Sources/InviteUsersScreenUITests.swift b/UITests/Sources/InviteUsersScreenUITests.swift index 29c2ec5aa..132a11b47 100644 --- a/UITests/Sources/InviteUsersScreenUITests.swift +++ b/UITests/Sources/InviteUsersScreenUITests.swift @@ -25,19 +25,19 @@ class InviteUsersScreenUITests: XCTestCase { func testSelectedUsers() async throws { let app = Application.launch(.inviteUsers) - app.collectionViews.firstMatch.cells.element(boundBy: 1).tap() + app.buttons[A11yIdentifiers.inviteUsersScreen.userProfile].firstMatch.tap() try await app.assertScreenshot(.inviteUsers, step: 1) } func testInviteUsers() async throws { let app = Application.launch(.inviteUsersInRoom) - app.collectionViews.firstMatch.cells.element(boundBy: 1).tap() + app.buttons[A11yIdentifiers.inviteUsersScreen.userProfile].firstMatch.tap() try await app.assertScreenshot(.inviteUsersInRoom, step: 1) } func testInviteUserExistingMembers() async throws { let app = Application.launch(.inviteUsersInRoomExistingMembers) - app.collectionViews.firstMatch.cells.element(boundBy: 1).tap() + app.buttons[A11yIdentifiers.inviteUsersScreen.userProfile].firstMatch.tap() try await app.assertScreenshot(.inviteUsersInRoomExistingMembers, step: 1) } } diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-0.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-0.png index bcc2b1b57..e63077b8f 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-0.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3fa48241f385c2b3753523823d29471f4ecae890021ec47b01e739783d955a2b -size 165984 +oid sha256:fa4855d3e48bf5600c9673f030bf3dfec98db3d9bb97bb860b5aaab5a51ae21d +size 113161 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-1.png index 8e2660be4..b1dd2b4fb 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bfe62fbf4c949e2d67b1920a9df0a1bb7cfd6f2587cf4073a491ae94fc6839d5 -size 165645 +oid sha256:83f0b666476f1fc9eb85bafa42ce9ed3109d8e1f24dd03f8f4f2ccfbf75e8642 +size 112805 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-2.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-2.png index 491ae8db0..f3f781f35 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-2.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:98fb37018e18b24257791b5e4f67db1ff3701b3ef4afe9d1afcd62323c135bf0 -size 118118 +oid sha256:0ae810d0e6d12564f8be12c0304be9bbf088d4e466de7cc4edcf1b74ebc02c81 +size 118359 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-3.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-3.png index 24d0efafc..9adce993c 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-3.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-3.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9981e05d8e7b867dd804efeaa97d312b70925d23d959dedfed4e4bc97781eb0a -size 74989 +oid sha256:846c772f6cca4a574636a6dc5d388f7490179ec5cbba50db9a625e55dde69a95 +size 75237 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-4.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-4.png index 3e768bf82..118c313ff 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-4.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-4.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:26ffbeae8df9be41d80be48d111ef47fac633bf8c575db6028597c7c5faec2b4 -size 181587 +oid sha256:e8c7e0c946e64048b3b270f4adaf2bfe635aa432dbd26da70f77f751d4ab2092 +size 128411 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-5.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-5.png index 6aa447f48..3e2493da8 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-5.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4256ee8ceb61e8cd34c8c06cfb97c134b5122ce28de9747cee2b1bf2ed0ff418 -size 181244 +oid sha256:80ba839320e3ef2dd120189a8c06520b103f50ffe0aaa6a340680d7f96b5467d +size 128074 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-99.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-99.png index dd616b53e..d2b9fce98 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-99.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlow-99.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d09d2089cd5d540e12aaa823da60e20806c25202f0f3b60bfd4cebc8978e8a9 -size 58054 +oid sha256:32439e9c58f761ed427cc82e72b493d2d50dadeb918a5a114c8f4346090c21fb +size 58069 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-0.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-0.png index b4f3f8748..3182b6268 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-0.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:74c1eef2dee3b8ebf4f913129cf674c17e21a6d12a20d6c2eae8d699966d8040 -size 146418 +oid sha256:cc83c2869e4a36bbaead2afadbd14a30008d3b244ee105d59139793683c34bfd +size 83856 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-1.png index 6343bd842..3980b577e 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:33b9be6c12c0001b6b3c2115a268a39462f44dbb9b518fc32ee1a973166d7786 -size 146102 +oid sha256:ac45c66e0d0986ad11b8e46473358fcdb60ebbc7b3338ca674f29ff5eec77a8c +size 83556 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-2.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-2.png index ee7f945a4..7f3303a84 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-2.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowMandatory-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8feec0af9037c406c401a57e26d03e26f4eff43e7a3f43ba34221356c1b722af -size 90720 +oid sha256:1412f5d5cceaee6ff9a09845d0aef1e909edac134821f0af79829dfe643fd9ca +size 91010 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowUnlock.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowUnlock.png index 4bdd65c79..a83af0935 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowUnlock.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.appLockSetupFlowUnlock.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f4b8b221641b9d86d3f7e32a650a262cc4a51dbc7cf3b7c65253d6c71d5bb454 -size 99772 +oid sha256:2e9c4376566a377fe6e7550aa02e14f4695a39b99ed915c7a797dc7fd159e747 +size 99902 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers-1.png index d74d8c237..ef31037d2 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:214f8e9caf0d73019f8d1daeabe6f15732d748addca8039c8a9ef2c0ae528482 -size 108259 +oid sha256:7df4611bd9e2f673e236f0b5f70df91b0060e1ecec94d67e2abffbc2b8fe5ba0 +size 105433 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers.png index 581c7374b..317697537 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsers.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3b6525d4723fab1d1fb4427a96af512549daaed89f294a0936cdf5b60576add3 -size 98375 +oid sha256:6caae22557a376372cc80a520f574dad25d0a3ffe9bc4015f0b95b96fd186e13 +size 95699 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoom-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoom-1.png index 89b6c74ce..b3af26ea3 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoom-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoom-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2fcd3a8eaca6db796bbe59936cdbb9904d3ff6380cab78d9f3a8e4e4b4e9b19a -size 109895 +oid sha256:c3f8cd03eb57875402afe6320915fe247e33205e24cdffd99334ca6c7d017215 +size 107065 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png index 3dae79cee..a0dd3bff3 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0d780b6b967316b699c34b80caf2d1cebc3b4c72e2b048389cb96fad2313398c -size 98710 +oid sha256:4380762f5d2ecfebe278deaad65dbc1e4a5b40ff5936db9425bb0087b6701cb7 +size 95503 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-1.png index c2c6b41b6..59335b10b 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5dff3594ab9a16df58dda69b3d322b41006b3465528ac95d62897a3c798492bc -size 63009 +oid sha256:28a73fa5588f532d48b2b9342540a625fc7534a0ac511b0ed0003524628a03d7 +size 65221 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-2.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-2.png index 7d387176a..29926dfa7 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-2.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fa7d430446c88421f0e06b47ad6e9e9867ec56217c25ba3c59b9715ea603b4a8 -size 90656 +oid sha256:8dc1aa9420f14506003211eadbb58394f2233bdd21796a4abdb8d829aea1eb59 +size 78733 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat.png index 2cf3a3c79..ecc8cacec 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPad-9th-generation.startChat.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aac17790267f0b5fc37827cd6ab745b7ea483f4e1b6de9ae8d9fa304330ac791 -size 105853 +oid sha256:5bbc69959f073b4d5c074cc3effa07912bcbefaa43b0ed775457491806e16e3c +size 103078 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-0.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-0.png index 26e4b3f16..88847fbab 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-0.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f65a97c728faec3735d6fcb51b482af57c7158193734a011e703936d14f50ed3 -size 137591 +oid sha256:b3374c943258f00f654122130caa23197fb92a924cc9b3d43ce266fa235c5b4c +size 97362 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-1.png index 54d132a73..731db5803 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62b02511b19c2ede3866f769eea6e1d65e267ae3da2c8faede3df9b3f18b825e -size 137206 +oid sha256:da98360a9877e18260ef1576a7ad459f7f6e8ca5c7d60d5e5031181fd5543951 +size 96995 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-2.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-2.png index b45f9451e..41ceabe6a 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-2.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a46bf902af6a4220639073f83ff1db87a4ac8187521b7ae296639c56d7a85367 -size 96519 +oid sha256:672183773e83e3d56f9751e4f2524399eb77e22727331992eadd2b28bcbcccd6 +size 92979 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-99.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-99.png index c0bb272bc..1196a55de 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-99.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlow-99.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6038391cadd1f8d589f07d21a743a6ad708295ebe127a45c13720ddd464e1bfd -size 55754 +oid sha256:0300d84651e423884f56cc13d6bf82b78a9c86953e2bca3d050e66ec1a5be618 +size 55799 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-0.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-0.png index d9a241d1b..6aafff558 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-0.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2ea0c189224d0c048d385966c9a5e2d911cc9176379014adefa9b62cbad462db -size 128199 +oid sha256:e4492c6844b95b6f30a8942c7d4f8fda9312bcb8b7652969dc63e804789b486c +size 92320 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-1.png index de21230e8..3d0001042 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowMandatory-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c65a6e90789c3bf126aebe2adf6bef05f0546da9a467f3cb04da2dad98cd52dd -size 127762 +oid sha256:ef739de088b19a5c9d81c4e7076e99807959d708b7fc5a0785aa3766fba2e153 +size 91905 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowUnlock.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowUnlock.png index fbe87c381..3dcca9d8f 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowUnlock.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.appLockSetupFlowUnlock.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:05500566e71142c4c80b9781f3cb3fe20412690c9bcc11156d14fbbb1ac3812c -size 81393 +oid sha256:a87c090807454a4444b06a94d6aea2928b32eccbf40bd7a87a5f1f9c590692bf +size 77158 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers-1.png index 54927a279..b2880b367 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:95f5c45062a79206c3cbdc1d078c3a8e2cc2fe32e2f7d69da490d9a341b2f100 -size 130243 +oid sha256:abc0d764c74dbf4a1424bfb0ebf22d30e481a395efedca489f4eea01d4dcf561 +size 125908 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers.png index 1bd1d974a..ab9aa3568 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsers.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:424c9cb13f232e17df297870c384b6fab7aabfbb779bb953a5eef77f136338b5 -size 115310 +oid sha256:3376eeab4934aabd2520774eb489ab40d81cfa803de49851141cd05bf54662ae +size 111448 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoom-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoom-1.png index 0433b0c0f..ff668a2b0 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoom-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoom-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:57b10e265226b2926bf770dd8cedb6654cc5d87ff1ebbaa69afeb0538f4691b9 -size 135228 +oid sha256:95fa99a10f32b2bd70ed9f547c6b5e6904799d197653376f61155fc7a737245f +size 128675 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoomExistingMembers-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoomExistingMembers-1.png index e552bdb19..03deaa3bb 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoomExistingMembers-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.inviteUsersInRoomExistingMembers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c606925ebe12261907e9311107ca53075fdcd021746653f37a21f54c9ea29ec1 -size 115134 +oid sha256:5d49688083fd896d8f60a437a657e5b047b9e2eea5746910380e141b961ff739 +size 111576 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-1.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-1.png index c90d9bf46..4c430182b 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-1.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:48bdfc2561aa894208e8670a0d172e418fdcf7db3de5a8ac7fb6969334997ddf -size 88923 +oid sha256:c40fdac241722cb70799c4e4f70989f837b79296c74eae9268b30067ae7d14fa +size 66290 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-2.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-2.png index 5d6c5aa5f..b3c66ad9f 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-2.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2c8b5272e01ad21bfeb701a8591ee4f5df06a51f50a03eab8923726aefc1f01 -size 111079 +oid sha256:30a1f00b977cbcf1576518869f1090a4d016a490ecf48b88bf412e43ad2e08b2 +size 84801 diff --git a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat.png b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat.png index 09cff49d4..c4a4a3ac8 100644 --- a/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat.png +++ b/UITests/Sources/__Snapshots__/Application/en-GB-iPhone-14.startChat.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5bbbb6622c0936efe7b18423aa31c2c641bfd24457ba865e74e3a18540edb52 -size 127040 +oid sha256:da7ed614bc6c00574ab7959a351c070b84ee17ecaaf6afa7bfe1ee50b22faf86 +size 125770 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-0.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-0.png index 0077feb66..0f659eed5 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-0.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44c3f9224626c915af17c0c9358b5049490b4fdfc56e1a0f132ee138a7cd0f3f -size 187197 +oid sha256:21c2ae847c2cc62d72df77bccf4bdca832bf16a883ec2e538ad2c0592339548a +size 133531 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-1.png index f726f1b58..092448fab 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ce09ad0d0ef60d14807709fd9194ba1ea7863280545c6bcf183534411bab850c -size 186740 +oid sha256:52bc191abfb4e91f062db87e72d6f9c0fcd014dcb07e11d81d39fd1378063ae7 +size 133088 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-2.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-2.png index f14033fe8..464ddade9 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-2.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ee6a9bf60a1d58da80cfe07847586917d9d7220eff61072c9ca1c975b3054d10 -size 134319 +oid sha256:a915abef8bd04c75f0b4999ab010e6f577429a103a2b34650cfc14672bedc136 +size 134573 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-3.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-3.png index 332459ca1..f31f933ff 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-3.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-3.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0cbfbd855a17721fc7ec0886127154971225f4fb7aefcfd8e334ef49a0ee17c1 -size 79354 +oid sha256:a9c5de0ceddacb4d4afd57ee314adcd64e173404677f78514cfdbc92150fd6d9 +size 79736 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-4.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-4.png index de1c02b27..b0198a449 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-4.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-4.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:88a548c90dcc19b981719b92648cb017b803c2e6c367c9614a06d59e5da83c72 -size 203681 +oid sha256:dcc2c0ebd6225f740868be48c0d384cdabf30b3d6662db82c3ec4b86349ac6df +size 149679 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-5.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-5.png index 16c96e0c4..60129999d 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-5.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5f4094e6baaebfd781e8cf5bc3f6dfbc8f1e51b16d875e1812248e71c57b92be -size 203186 +oid sha256:09c92bb7697131582b681d494be8fec5b264458ecc97a9e5baf42b96159e5b10 +size 149191 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-99.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-99.png index 2f46b7b51..07fe3e7af 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-99.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlow-99.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e4f8dfd9c3e7bf9c5b7fe6ccd94c7a710b331ee9920a658c664287fa4d6403f7 -size 58873 +oid sha256:3ec304e3589235cb6bf3e4123c3e1ca9d19c54f98012e01875d6bc9ff31d64f8 +size 58877 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-0.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-0.png index 779b96361..73b02a16a 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-0.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70f114ac9bd51da1095b352d1fcf9a16e018e5ac529c8d3bf2d9780bf2525109 -size 164955 +oid sha256:fefa32e1e286f1c01ad54c6333f5cad8bf53f410c2f712881eeb913ba8eb44f0 +size 102362 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-1.png index 69561126d..b308c4352 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0e720812f57e7f5f29be0d33c52a8a6628a95985c52172e08a2d1f5162d0bd9c -size 164530 +oid sha256:36b36742a6cdf82c6c46e7eb6fb2e8d5a017fd33c8fc436ae02487a749e8f9ae +size 101940 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-2.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-2.png index 4fd6d5290..279706890 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-2.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowMandatory-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:59e577b405c86f7bef34d7e244696de5a84a092d5dcff9b0c034edcfd293d55d -size 105390 +oid sha256:db9e1e46c2a3853400e35c54d7dd1804aaddad17a1717f78216a9d430063501c +size 105697 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowUnlock.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowUnlock.png index 734950d55..bbbbd1ace 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowUnlock.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.appLockSetupFlowUnlock.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:869f30858095d8e245a2efc84ef996ddcf11864112123b68e4a784c55770e618 -size 101543 +oid sha256:caea26e63181cde85bee5154d1273e64c045acf33866a8157584229ab85c4246 +size 101665 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers-1.png index 1e18256d3..0ebd8b630 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a19aaf08fb9f2e1d103911f350ba0d5e6949ac45c51f71461b6a8188c5727b3 -size 110404 +oid sha256:4e2ea9cb24ceeccbc3989999704a5ecd8c07b35cd81b00945407c37730b9b361 +size 109114 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers.png index 6481a1e28..29d87a6d5 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsers.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a67b425b5adcea41ed6fc90620ccb547d913850c9bfeb2cff5f353e58ca53156 -size 100666 +oid sha256:baf46e031df4ca38e250d145ba251d5dff0151521173faa72144fd04e30ae541 +size 99541 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoom-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoom-1.png index f8aae473f..b82726d0c 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoom-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoom-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:52607d58796c7422a0fd1ee26b036f763dfe12ff692a4c9a07dcf580124d6c74 -size 112395 +oid sha256:9c0f3eed1c78e3b734c787fa6d47ea09347303dc132289b993a72c9d823332e0 +size 111097 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png index fe811f19d..ba1fc2496 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.inviteUsersInRoomExistingMembers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51aed0797dc6816123c20edc2a337c04adc514c2590649f57e9e6e95a350a2bb -size 104882 +oid sha256:1fcde6c5a8783a21d5f0683b850fbb8c95c88bc6e3ca5994fd4e769e92ccec36 +size 102638 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-1.png index 796310aa4..870605a33 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9988b9290b76f3192b032cc01740b6c7b86065140b0e0035ea3848e6fa809669 -size 63516 +oid sha256:29f3d5e2833b712a7f515ca17fb9e669ac759544417fb940dda29f5e9224c5eb +size 66186 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-2.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-2.png index 90ecedefc..f3b89f5b2 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-2.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24838e99570f82f28aac4304cd55ef3c52a71fe7fab64ec1b33ae48cdf151191 -size 77605 +oid sha256:d462831868a943edd08732edbf1fbb7f81c40cefb228043b2636a69f88f9cb42 +size 79440 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat.png index 534c3f8c2..cbb0dc92b 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPad-9th-generation.startChat.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6054c38af31f675a6eed2e4a7596445f0aba70a0d0bd94119a839abe7cbb89ed -size 113786 +oid sha256:2c1d4c40717ad7c7291009d0458b4737d93d77c404e7f88cf9445148f9bcbfe9 +size 111160 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-0.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-0.png index 3259420ae..0cd939b45 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-0.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d5cb48de5d8d0c1f04a0a12488249871c128b87e3dffe4e025ded9a26fc8555 -size 168378 +oid sha256:d731344f28483441a59c63bde117e3636e0edf76a03c25a7e441b1979825f5d7 +size 128142 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-1.png index 497307424..0d7ad7129 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6501ff36b6204c2083c0121468fcdeef5e0d5a873c86693c1a8757091ece7915 -size 168194 +oid sha256:7279aab844439bac92f2779e12522deb7f98c5a167c9edb3bcaf1876cdc056d0 +size 127995 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-2.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-2.png index d7ab7fd39..69f230520 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-2.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlow-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7c4ca0ea8597654e7974ca38e5a1e17b8dd07b0660dc3c6082357fcd871976e -size 120377 +oid sha256:2772919a9b4059ed484549601beab29e7abc7ed66e78c1e557b551306fc13653 +size 115871 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-0.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-0.png index b488187a5..061274c6e 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-0.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec887b50b32e86584eabe49019c387eb506c7f619f96239ea3ace251411e03f2 -size 158026 +oid sha256:bca0b5af5d71a4d8a8c42b26ae1dde796cd56de2116cc6df59a0b04ae53a13e8 +size 122400 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-1.png index 783239d25..e1c418f50 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowMandatory-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2501a44a9cb3457ec861016f5ab3fdcd8a8c2e9b00d2299f1ad902d366ac0b76 -size 157869 +oid sha256:f036b1da1efc13819d16a762481abcb8a9be78f62ea1e4c9b827054bafb3db7b +size 122246 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowUnlock.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowUnlock.png index 91fe54c95..05068c3b8 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowUnlock.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.appLockSetupFlowUnlock.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4ea1cbd5eb3bd03cfe2fb1358c796634de153bf6b492c9e8602ec4a1d27e4ad4 -size 82102 +oid sha256:d958282348bb6a7e55d43c70e237e4906e92e93dbf095775035802b03fe7813f +size 77936 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers-1.png index 70f4c3275..3f5df20fa 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6316162e67302f33e034b9da36f9039f7d540fa84994136e5c3a85650ee3131d -size 136612 +oid sha256:23889a3f018de42f1d43672488a99d82c379356b93c64e2b464e6dc8e301579d +size 132289 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers.png index 82dc9c9b6..417aad55f 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsers.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3fbf913d6cb7a9db7c21438f2fcd1674d360e8ab22f8a654a08e002297d1340c -size 118989 +oid sha256:b95cf05146a78f0300fce52071c14cd1a7e22ac77b73242b6979fe6742029da1 +size 113297 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoom-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoom-1.png index 658fb2a4a..2881b195d 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoom-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoom-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:202e452cc3be7013dc0c5cbe9874d238022394d7b99e0c6cb10b8c77b56049af -size 138969 +oid sha256:683d1b9b97925e38e99eb1484b1b60fb8dd8a966a843338f2930d46b37869f63 +size 134683 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoomExistingMembers-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoomExistingMembers-1.png index f02788454..fe74e57d2 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoomExistingMembers-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.inviteUsersInRoomExistingMembers-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e1dea7cbc0cf1615fe3a8f9de5cfcf953937c6f43d657c3b370133254922200 -size 122545 +oid sha256:ec7e0d2f7a28ea69ce3f79abe7b46044626a38b9d2d9c36a2d9a4a9b27c53327 +size 116295 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-1.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-1.png index 874dd88bd..2f4e4219b 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-1.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51792912ecf67bce854a3d23b1703341ebefe7f733a5f8965ce614b685fd07b7 -size 87922 +oid sha256:801732f764efe660d7d87ea437dede56a337f518b8e87b3f43e17a979d4ce7f9 +size 67913 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-2.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-2.png index be56f77a6..ee5c54125 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-2.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat-2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f8d7c0f638bc6a5f2a76738eb7a7ddbac0ad0d2107cea4c1fae73fb99bc9c457 -size 109877 +oid sha256:21e086793fe3f97a78392a08d74eaa41fdaea09444ff8a1d984cdfefd47ef6bc +size 85683 diff --git a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat.png b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat.png index 6b3293e76..d096cb52d 100644 --- a/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat.png +++ b/UITests/Sources/__Snapshots__/Application/pseudo-iPhone-14.startChat.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7c1fe39ec8997b9984c22deb2c9fe383b2d9c88b19d44b0653652526db735be5 -size 138994 +oid sha256:facd745ec4ffb852684629d6d2a3283a04e5de896e2e87952b6a4e9e487ea82b +size 135609 diff --git a/UnitTests/__Snapshots__/PreviewTests/test_formButtonStyles.1.png b/UnitTests/__Snapshots__/PreviewTests/test_formButtonStyles.1.png index c90db9ee0..1cd58c695 100644 --- a/UnitTests/__Snapshots__/PreviewTests/test_formButtonStyles.1.png +++ b/UnitTests/__Snapshots__/PreviewTests/test_formButtonStyles.1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9f72356a0e0952300e2980d47e2eab2097267f732427efaf13fe034ff2b9bf5 -size 176733 +oid sha256:ae585f2202e9c1d95cedd195ff1420f6d8d47e8d71f3fbc181e3a54afb113199 +size 68492 diff --git a/UnitTests/__Snapshots__/PreviewTests/test_messageForwardingScreen.1.png b/UnitTests/__Snapshots__/PreviewTests/test_messageForwardingScreen.1.png index c91277e38..17dd192e2 100644 --- a/UnitTests/__Snapshots__/PreviewTests/test_messageForwardingScreen.1.png +++ b/UnitTests/__Snapshots__/PreviewTests/test_messageForwardingScreen.1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:afbc0d42973b4360949b551b5e7d34543a262eef3ea29c3bc1219c06d2249f5a -size 170537 +oid sha256:9eafc4604f3d3dabdbf85d97ca643be13cb83111ad98def8cc383108067a0269 +size 181066 diff --git a/UnitTests/__Snapshots__/PreviewTests/test_userProfileCell.1.png b/UnitTests/__Snapshots__/PreviewTests/test_userProfileCell.1.png index 609acd301..e3a16b034 100644 --- a/UnitTests/__Snapshots__/PreviewTests/test_userProfileCell.1.png +++ b/UnitTests/__Snapshots__/PreviewTests/test_userProfileCell.1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ebfdc3655581cbc21f18873ee644c506ccecd2de4d89856b24aa85f329da9e33 -size 151588 +oid sha256:7819c17cf316c4bb89571b95dfd7c6e1bb8497e8d759bc29900682d33cae4b71 +size 145712 diff --git a/project.yml b/project.yml index bb39f0c8f..758b744c6 100644 --- a/project.yml +++ b/project.yml @@ -49,7 +49,7 @@ packages: # path: ../matrix-rust-sdk Compound: url: https://github.com/vector-im/compound-ios - revision: 8774e358ac6927f041400733ac681456f0910c10 + revision: 56456508d27b7defef647da15d1bd854d6f88a2d # path: ../compound-ios AnalyticsEvents: url: https://github.com/matrix-org/matrix-analytics-events