diff --git a/Signal.xcodeproj/project.pbxproj b/Signal.xcodeproj/project.pbxproj index 9aa3e60a5..09ccad5e8 100644 --- a/Signal.xcodeproj/project.pbxproj +++ b/Signal.xcodeproj/project.pbxproj @@ -33,6 +33,15 @@ 34480B641FD0A98800BC14EF /* UIView+OWS.m in Sources */ = {isa = PBXBuildFile; fileRef = 34480B601FD0A98800BC14EF /* UIView+OWS.m */; }; 34480B671FD0AA9400BC14EF /* UIFont+OWS.m in Sources */ = {isa = PBXBuildFile; fileRef = 34480B651FD0AA9400BC14EF /* UIFont+OWS.m */; }; 34480B681FD0AA9400BC14EF /* UIFont+OWS.h in Headers */ = {isa = PBXBuildFile; fileRef = 34480B661FD0AA9400BC14EF /* UIFont+OWS.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 344D6CEA20069E070042AF96 /* SelectRecipientViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 344D6CE620069E060042AF96 /* SelectRecipientViewController.h */; }; + 344D6CEB20069E070042AF96 /* SelectRecipientViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 344D6CE720069E060042AF96 /* SelectRecipientViewController.m */; }; + 344D6CEC20069E070042AF96 /* NewNonContactConversationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 344D6CE820069E070042AF96 /* NewNonContactConversationViewController.m */; }; + 344D6CED20069E070042AF96 /* NewNonContactConversationViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 344D6CE920069E070042AF96 /* NewNonContactConversationViewController.h */; }; + 344F248420069E9C00CFB4F4 /* CountryCodeViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 344F248220069E9B00CFB4F4 /* CountryCodeViewController.h */; }; + 344F248520069E9C00CFB4F4 /* CountryCodeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 344F248320069E9B00CFB4F4 /* CountryCodeViewController.m */; }; + 344F248720069ECB00CFB4F4 /* ModalActivityIndicatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 344F248620069ECB00CFB4F4 /* ModalActivityIndicatorViewController.swift */; }; + 344F248A20069F0600CFB4F4 /* ViewControllerUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 344F248820069F0600CFB4F4 /* ViewControllerUtils.h */; }; + 344F248B20069F0600CFB4F4 /* ViewControllerUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 344F248920069F0600CFB4F4 /* ViewControllerUtils.m */; }; 3461284B1FD0B94000532771 /* SAELoadViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3461284A1FD0B93F00532771 /* SAELoadViewController.swift */; }; 346129341FD1A88700532771 /* OWSSwiftUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 346129331FD1A88700532771 /* OWSSwiftUtils.swift */; }; 346129391FD1B47300532771 /* OWSPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 346129371FD1B47200532771 /* OWSPreferences.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -94,7 +103,6 @@ 34612A061FD7238600532771 /* OWSContactsSyncing.h in Headers */ = {isa = PBXBuildFile; fileRef = 34612A041FD7238500532771 /* OWSContactsSyncing.h */; settings = {ATTRIBUTES = (Public, ); }; }; 34612A071FD7238600532771 /* OWSContactsSyncing.m in Sources */ = {isa = PBXBuildFile; fileRef = 34612A051FD7238500532771 /* OWSContactsSyncing.m */; }; 346B66311F4E29B200E5122F /* CropScaleImageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 346B66301F4E29B200E5122F /* CropScaleImageViewController.swift */; }; - 3471B1DA1EB7C63600F6AEC8 /* NewNonContactConversationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3471B1D91EB7C63600F6AEC8 /* NewNonContactConversationViewController.m */; }; 3472229F1EB22FFE00E53955 /* AddToGroupViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 3472229E1EB22FFE00E53955 /* AddToGroupViewController.m */; }; 347850311FD7494A007B8332 /* dripicons-v2.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 34330A5B1E787A9800DF2FB9 /* dripicons-v2.ttf */; }; 347850321FD7494A007B8332 /* ElegantIcons.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 34330A5D1E787BD800DF2FB9 /* ElegantIcons.ttf */; }; @@ -118,7 +126,6 @@ 34B3F8761E8DF1700035BE1A /* CodeVerificationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F83D1E8DF1700035BE1A /* CodeVerificationViewController.m */; }; 34B3F8771E8DF1700035BE1A /* ContactsPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F83E1E8DF1700035BE1A /* ContactsPicker.swift */; }; 34B3F8781E8DF1700035BE1A /* ContactsPicker.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34B3F83F1E8DF1700035BE1A /* ContactsPicker.xib */; }; - 34B3F8791E8DF1700035BE1A /* CountryCodeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F8411E8DF1700035BE1A /* CountryCodeViewController.m */; }; 34B3F87B1E8DF1700035BE1A /* ExperienceUpgradesPageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F8441E8DF1700035BE1A /* ExperienceUpgradesPageViewController.swift */; }; 34B3F87C1E8DF1700035BE1A /* FingerprintViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F8461E8DF1700035BE1A /* FingerprintViewController.m */; }; 34B3F87E1E8DF1700035BE1A /* InboxTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F84A1E8DF1700035BE1A /* InboxTableViewCell.m */; }; @@ -138,7 +145,6 @@ 34B3F8931E8DF1710035BE1A /* SignalsNavigationController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F86E1E8DF1700035BE1A /* SignalsNavigationController.m */; }; 34B3F8941E8DF1710035BE1A /* HomeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F8701E8DF1700035BE1A /* HomeViewController.m */; }; 34B3F89C1E8DF3270035BE1A /* BlockListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F89B1E8DF3270035BE1A /* BlockListViewController.m */; }; - 34B3F8A21E8EA6040035BE1A /* ViewControllerUtils.m in Sources */ = {isa = PBXBuildFile; fileRef = 34B3F8A11E8EA6040035BE1A /* ViewControllerUtils.m */; }; 34BECE2B1F74C12700D7438D /* DebugUIStress.m in Sources */ = {isa = PBXBuildFile; fileRef = 34BECE2A1F74C12700D7438D /* DebugUIStress.m */; }; 34BECE2E1F7ABCE000D7438D /* GifPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BECE2D1F7ABCE000D7438D /* GifPickerViewController.swift */; }; 34BECE301F7ABCF800D7438D /* GifPickerLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BECE2F1F7ABCF800D7438D /* GifPickerLayout.swift */; }; @@ -171,11 +177,9 @@ 34D1F0BD1F8D108C0066283D /* AttachmentUploadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D1F0BC1F8D108C0066283D /* AttachmentUploadView.m */; }; 34D1F0C01F8EC1760066283D /* MessageRecipientStatusUtils.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D1F0BF1F8EC1760066283D /* MessageRecipientStatusUtils.swift */; }; 34D5CCA91EAE3D30005515DB /* AvatarViewHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D5CCA81EAE3D30005515DB /* AvatarViewHelper.m */; }; - 34D5CCB11EAE7E7F005515DB /* SelectRecipientViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D5CCB01EAE7E7F005515DB /* SelectRecipientViewController.m */; }; 34D8C0271ED3673300188D7C /* DebugUIMessages.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D8C0241ED3673300188D7C /* DebugUIMessages.m */; }; 34D8C0281ED3673300188D7C /* DebugUITableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D8C0261ED3673300188D7C /* DebugUITableViewController.m */; }; 34D8C02B1ED3685800188D7C /* DebugUIContacts.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D8C02A1ED3685800188D7C /* DebugUIContacts.m */; }; - 34D9134D1F66DB7C00722898 /* ModalActivityIndicatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D9134C1F66DB7C00722898 /* ModalActivityIndicatorViewController.swift */; }; 34D99C931F2937CC00D284D6 /* OWSAnalytics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D99C911F2937CC00D284D6 /* OWSAnalytics.swift */; }; 34DFCB851E8E04B500053165 /* AddToBlockListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 34DFCB841E8E04B500053165 /* AddToBlockListViewController.m */; }; 34E3E5681EC4B19400495BAC /* AudioProgressView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34E3E5671EC4B19400495BAC /* AudioProgressView.swift */; }; @@ -507,6 +511,15 @@ 34480B651FD0AA9400BC14EF /* UIFont+OWS.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIFont+OWS.m"; sourceTree = ""; }; 34480B661FD0AA9400BC14EF /* UIFont+OWS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIFont+OWS.h"; sourceTree = ""; }; 34491FC11FB0F78500B3E5A3 /* my */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = my; path = translations/my.lproj/Localizable.strings; sourceTree = ""; }; + 344D6CE620069E060042AF96 /* SelectRecipientViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SelectRecipientViewController.h; path = SignalMessaging/contacts/SelectRecipientViewController.h; sourceTree = SOURCE_ROOT; }; + 344D6CE720069E060042AF96 /* SelectRecipientViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SelectRecipientViewController.m; path = SignalMessaging/contacts/SelectRecipientViewController.m; sourceTree = SOURCE_ROOT; }; + 344D6CE820069E070042AF96 /* NewNonContactConversationViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NewNonContactConversationViewController.m; path = SignalMessaging/contacts/NewNonContactConversationViewController.m; sourceTree = SOURCE_ROOT; }; + 344D6CE920069E070042AF96 /* NewNonContactConversationViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NewNonContactConversationViewController.h; path = SignalMessaging/contacts/NewNonContactConversationViewController.h; sourceTree = SOURCE_ROOT; }; + 344F248220069E9B00CFB4F4 /* CountryCodeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CountryCodeViewController.h; path = SignalMessaging/contacts/CountryCodeViewController.h; sourceTree = SOURCE_ROOT; }; + 344F248320069E9B00CFB4F4 /* CountryCodeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CountryCodeViewController.m; path = SignalMessaging/contacts/CountryCodeViewController.m; sourceTree = SOURCE_ROOT; }; + 344F248620069ECB00CFB4F4 /* ModalActivityIndicatorViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ModalActivityIndicatorViewController.swift; path = SignalMessaging/contacts/ModalActivityIndicatorViewController.swift; sourceTree = SOURCE_ROOT; }; + 344F248820069F0600CFB4F4 /* ViewControllerUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ViewControllerUtils.h; path = SignalMessaging/contacts/ViewControllerUtils.h; sourceTree = SOURCE_ROOT; }; + 344F248920069F0600CFB4F4 /* ViewControllerUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ViewControllerUtils.m; path = SignalMessaging/contacts/ViewControllerUtils.m; sourceTree = SOURCE_ROOT; }; 34533F161EA8D2070006114F /* OWSAudioAttachmentPlayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSAudioAttachmentPlayer.h; sourceTree = ""; }; 34533F171EA8D2070006114F /* OWSAudioAttachmentPlayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWSAudioAttachmentPlayer.m; sourceTree = ""; }; 3461284A1FD0B93F00532771 /* SAELoadViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SAELoadViewController.swift; sourceTree = ""; }; @@ -572,8 +585,6 @@ 34612A041FD7238500532771 /* OWSContactsSyncing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSContactsSyncing.h; sourceTree = ""; }; 34612A051FD7238500532771 /* OWSContactsSyncing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWSContactsSyncing.m; sourceTree = ""; }; 346B66301F4E29B200E5122F /* CropScaleImageViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CropScaleImageViewController.swift; sourceTree = ""; }; - 3471B1D81EB7C63600F6AEC8 /* NewNonContactConversationViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NewNonContactConversationViewController.h; sourceTree = ""; }; - 3471B1D91EB7C63600F6AEC8 /* NewNonContactConversationViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NewNonContactConversationViewController.m; sourceTree = ""; }; 3472229D1EB22FFE00E53955 /* AddToGroupViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddToGroupViewController.h; sourceTree = ""; }; 3472229E1EB22FFE00E53955 /* AddToGroupViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AddToGroupViewController.m; sourceTree = ""; }; 347850561FD86544007B8332 /* SAEFailedViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SAEFailedViewController.swift; sourceTree = ""; }; @@ -606,8 +617,6 @@ 34B3F83D1E8DF1700035BE1A /* CodeVerificationViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CodeVerificationViewController.m; sourceTree = ""; }; 34B3F83E1E8DF1700035BE1A /* ContactsPicker.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ContactsPicker.swift; sourceTree = ""; }; 34B3F83F1E8DF1700035BE1A /* ContactsPicker.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ContactsPicker.xib; sourceTree = ""; }; - 34B3F8401E8DF1700035BE1A /* CountryCodeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CountryCodeViewController.h; sourceTree = ""; }; - 34B3F8411E8DF1700035BE1A /* CountryCodeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CountryCodeViewController.m; sourceTree = ""; }; 34B3F8441E8DF1700035BE1A /* ExperienceUpgradesPageViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExperienceUpgradesPageViewController.swift; sourceTree = ""; }; 34B3F8451E8DF1700035BE1A /* FingerprintViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FingerprintViewController.h; sourceTree = ""; }; 34B3F8461E8DF1700035BE1A /* FingerprintViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FingerprintViewController.m; sourceTree = ""; }; @@ -648,8 +657,6 @@ 34B3F89B1E8DF3270035BE1A /* BlockListViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BlockListViewController.m; sourceTree = ""; }; 34B3F89D1E8DF5490035BE1A /* OWSTableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSTableViewController.h; sourceTree = ""; }; 34B3F89E1E8DF5490035BE1A /* OWSTableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWSTableViewController.m; sourceTree = ""; }; - 34B3F8A01E8EA6040035BE1A /* ViewControllerUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewControllerUtils.h; sourceTree = ""; }; - 34B3F8A11E8EA6040035BE1A /* ViewControllerUtils.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ViewControllerUtils.m; sourceTree = ""; }; 34BECE291F74C12700D7438D /* DebugUIStress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebugUIStress.h; sourceTree = ""; }; 34BECE2A1F74C12700D7438D /* DebugUIStress.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DebugUIStress.m; sourceTree = ""; }; 34BECE2D1F7ABCE000D7438D /* GifPickerViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GifPickerViewController.swift; sourceTree = ""; }; @@ -711,8 +718,6 @@ 34D5CCA71EAE3D30005515DB /* AvatarViewHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AvatarViewHelper.h; sourceTree = ""; }; 34D5CCA81EAE3D30005515DB /* AvatarViewHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AvatarViewHelper.m; sourceTree = ""; }; 34D5CCAB1EAE7136005515DB /* OWSConversationSettingsViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSConversationSettingsViewDelegate.h; sourceTree = ""; }; - 34D5CCAF1EAE7E7F005515DB /* SelectRecipientViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelectRecipientViewController.h; sourceTree = ""; }; - 34D5CCB01EAE7E7F005515DB /* SelectRecipientViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SelectRecipientViewController.m; sourceTree = ""; }; 34D8C0231ED3673300188D7C /* DebugUIMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebugUIMessages.h; sourceTree = ""; }; 34D8C0241ED3673300188D7C /* DebugUIMessages.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DebugUIMessages.m; sourceTree = ""; }; 34D8C0251ED3673300188D7C /* DebugUITableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebugUITableViewController.h; sourceTree = ""; }; @@ -720,7 +725,6 @@ 34D8C0291ED3685800188D7C /* DebugUIContacts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DebugUIContacts.h; sourceTree = ""; }; 34D8C02A1ED3685800188D7C /* DebugUIContacts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DebugUIContacts.m; sourceTree = ""; }; 34D913491F62D4A500722898 /* SignalAttachment.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SignalAttachment.swift; sourceTree = ""; }; - 34D9134C1F66DB7C00722898 /* ModalActivityIndicatorViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ModalActivityIndicatorViewController.swift; sourceTree = ""; }; 34D99C8A1F27B13B00D284D6 /* OWSViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OWSViewController.h; sourceTree = ""; }; 34D99C8B1F27B13B00D284D6 /* OWSViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OWSViewController.m; sourceTree = ""; }; 34D99C911F2937CC00D284D6 /* OWSAnalytics.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OWSAnalytics.swift; sourceTree = ""; }; @@ -1252,8 +1256,17 @@ 346129DB1FD5C02900532771 /* viewControllers */ = { isa = PBXGroup; children = ( + 344F248220069E9B00CFB4F4 /* CountryCodeViewController.h */, + 344F248320069E9B00CFB4F4 /* CountryCodeViewController.m */, 346129DC1FD5C02900532771 /* LockInteractionController.h */, 346129DD1FD5C02900532771 /* LockInteractionController.m */, + 344F248620069ECB00CFB4F4 /* ModalActivityIndicatorViewController.swift */, + 344D6CE920069E070042AF96 /* NewNonContactConversationViewController.h */, + 344D6CE820069E070042AF96 /* NewNonContactConversationViewController.m */, + 344D6CE620069E060042AF96 /* SelectRecipientViewController.h */, + 344D6CE720069E060042AF96 /* SelectRecipientViewController.m */, + 344F248820069F0600CFB4F4 /* ViewControllerUtils.h */, + 344F248920069F0600CFB4F4 /* ViewControllerUtils.m */, ); path = viewControllers; sourceTree = ""; @@ -1281,8 +1294,6 @@ 34B3F83E1E8DF1700035BE1A /* ContactsPicker.swift */, 34B3F83F1E8DF1700035BE1A /* ContactsPicker.xib */, 3448BFC01EDF0EA7005B2D69 /* ConversationView */, - 34B3F8401E8DF1700035BE1A /* CountryCodeViewController.h */, - 34B3F8411E8DF1700035BE1A /* CountryCodeViewController.m */, 346B66301F4E29B200E5122F /* CropScaleImageViewController.swift */, 34D8C0221ED3673300188D7C /* DebugUI */, 3497DBED1ECE2E4700DB2605 /* DomainFrontingCountryViewController.h */, @@ -1299,13 +1310,10 @@ 34B3F84A1E8DF1700035BE1A /* InboxTableViewCell.m */, 34B3F84C1E8DF1700035BE1A /* InviteFlow.swift */, 34CA1C261F7156F300E51C51 /* MessageDetailViewController.swift */, - 34D9134C1F66DB7C00722898 /* ModalActivityIndicatorViewController.swift */, 34B3F84F1E8DF1700035BE1A /* NewContactThreadViewController.h */, 34B3F8501E8DF1700035BE1A /* NewContactThreadViewController.m */, 34B3F8541E8DF1700035BE1A /* NewGroupViewController.h */, 34B3F8551E8DF1700035BE1A /* NewGroupViewController.m */, - 3471B1D81EB7C63600F6AEC8 /* NewNonContactConversationViewController.h */, - 3471B1D91EB7C63600F6AEC8 /* NewNonContactConversationViewController.m */, 34B3F8561E8DF1700035BE1A /* NotificationSettingsOptionsViewController.h */, 34B3F8571E8DF1700035BE1A /* NotificationSettingsOptionsViewController.m */, 34B3F8581E8DF1700035BE1A /* NotificationSettingsViewController.h */, @@ -1332,8 +1340,6 @@ 34B3F8661E8DF1700035BE1A /* RegistrationViewController.h */, 34B3F8671E8DF1700035BE1A /* RegistrationViewController.m */, 4585C4671ED8F8D200896AEA /* SafetyNumberConfirmationAlert.swift */, - 34D5CCAF1EAE7E7F005515DB /* SelectRecipientViewController.h */, - 34D5CCB01EAE7E7F005515DB /* SelectRecipientViewController.m */, 34B3F86A1E8DF1700035BE1A /* ShowGroupMembersViewController.h */, 34B3F86B1E8DF1700035BE1A /* ShowGroupMembersViewController.m */, 34B3F86D1E8DF1700035BE1A /* SignalsNavigationController.h */, @@ -1341,8 +1347,6 @@ 340CB2251EAC25820001CAA1 /* UpdateGroupViewController.h */, 340CB2261EAC25820001CAA1 /* UpdateGroupViewController.m */, 34D1F0BE1F8EC1760066283D /* Utils */, - 34B3F8A01E8EA6040035BE1A /* ViewControllerUtils.h */, - 34B3F8A11E8EA6040035BE1A /* ViewControllerUtils.m */, ); path = ViewControllers; sourceTree = ""; @@ -2012,11 +2016,14 @@ 451F8A3A1FD711D9005CB9DA /* ContactsViewHelper.h in Headers */, 34480B491FD0A60200BC14EF /* OWSMath.h in Headers */, 346129E71FD5C0C600532771 /* OWSDatabaseMigrationRunner.h in Headers */, + 344D6CEA20069E070042AF96 /* SelectRecipientViewController.h in Headers */, 34480B521FD0A7A400BC14EF /* OWSLogger.h in Headers */, 34612A001FD5F31400532771 /* OWS105AttachmentFilePaths.h in Headers */, 346129F61FD5F31400532771 /* OWS103EnableVideoCalling.h in Headers */, + 344F248A20069F0600CFB4F4 /* ViewControllerUtils.h in Headers */, 346129A91FD1F0E000532771 /* OWSFormat.h in Headers */, 34480B551FD0A7A400BC14EF /* DebugLogger.h in Headers */, + 344F248420069E9C00CFB4F4 /* CountryCodeViewController.h in Headers */, 346129CA1FD2072E00532771 /* UIImage+OWS.h in Headers */, 346129711FD1D74C00532771 /* SignalKeyingStorage.h in Headers */, 34612A011FD5F31400532771 /* OWS104CreateRecipientIdentities.h in Headers */, @@ -2046,6 +2053,7 @@ 454A965D1FD602B1008D2A0E /* OWSAudioAttachmentPlayer.h in Headers */, 451F8A3E1FD713D2005CB9DA /* ThreadViewHelper.h in Headers */, 346129391FD1B47300532771 /* OWSPreferences.h in Headers */, + 344D6CED20069E070042AF96 /* NewNonContactConversationViewController.h in Headers */, 346129DE1FD5C02A00532771 /* LockInteractionController.h in Headers */, 450998671FD8BDA600D89EB3 /* FullImageViewController.h in Headers */, 451F8A451FD71570005CB9DA /* BlockListUIUtils.h in Headers */, @@ -2740,14 +2748,17 @@ 34480B531FD0A7A400BC14EF /* OWSLogger.m in Sources */, 34480B641FD0A98800BC14EF /* UIView+OWS.m in Sources */, 3461293A1FD1B47300532771 /* OWSPreferences.m in Sources */, + 344F248520069E9C00CFB4F4 /* CountryCodeViewController.m in Sources */, 34480B671FD0AA9400BC14EF /* UIFont+OWS.m in Sources */, 346129E61FD5C0C600532771 /* OWSDatabaseMigrationRunner.m in Sources */, 346129AB1FD1F0EE00532771 /* OWSFormat.m in Sources */, 451F8A461FD715BA005CB9DA /* OWSGroupAvatarBuilder.m in Sources */, 347850591FD9972E007B8332 /* SwiftSingletons.swift in Sources */, + 344F248720069ECB00CFB4F4 /* ModalActivityIndicatorViewController.swift in Sources */, 346129961FD1E30000532771 /* OWSDatabaseMigration.m in Sources */, 346129CD1FD2072E00532771 /* UIImage+OWS.m in Sources */, 450998661FD8BD9C00D89EB3 /* FullImageViewController.m in Sources */, + 344D6CEC20069E070042AF96 /* NewNonContactConversationViewController.m in Sources */, 346129FB1FD5F31400532771 /* OWS101ExistingUsersBlockOnIdentityChange.m in Sources */, 450998651FD8A34D00D89EB3 /* DeviceSleepManager.swift in Sources */, 3478506B1FD9B78A007B8332 /* NoopCallMessageHandler.swift in Sources */, @@ -2784,6 +2795,7 @@ 346129DF1FD5C02A00532771 /* LockInteractionController.m in Sources */, 451F8A471FD715BA005CB9DA /* OWSAvatarBuilder.m in Sources */, 454A96601FD61165008D2A0E /* OWSAudioAttachmentPlayer.m in Sources */, + 344D6CEB20069E070042AF96 /* SelectRecipientViewController.m in Sources */, 34480B591FD0A7A400BC14EF /* OWSScrubbingLogFormatter.m in Sources */, 451F8A441FD7156B005CB9DA /* BlockListUIUtils.m in Sources */, 451F8A381FD7117E005CB9DA /* OWSViewController.m in Sources */, @@ -2793,6 +2805,7 @@ 451F8A391FD711D6005CB9DA /* ContactsViewHelper.m in Sources */, 346129AF1FD1F5D900532771 /* SystemContactsFetcher.swift in Sources */, 451F8A311FD70DE9005CB9DA /* SharingThreadPickerViewController.m in Sources */, + 344F248B20069F0600CFB4F4 /* ViewControllerUtils.m in Sources */, 451F8A411FD714B8005CB9DA /* ContactTableViewCell.m in Sources */, 346129C81FD2072E00532771 /* NSAttributedString+OWS.m in Sources */, ); @@ -2820,7 +2833,6 @@ 34D1F0821F8678AA0066283D /* ConversationHeaderView.m in Sources */, 34D1F0AB1F867BFC0066283D /* OWSContactOffersCell.m in Sources */, 343A65981FC4CFE7000477A1 /* ConversationScrollButton.m in Sources */, - 34B3F8791E8DF1700035BE1A /* CountryCodeViewController.m in Sources */, 34D1F0A91F867BFC0066283D /* ConversationViewCell.m in Sources */, 4505C2BF1E648EA300CEBF41 /* ExperienceUpgrade.swift in Sources */, 34CCAF381F0C0599004084F4 /* AppUpdateNag.m in Sources */, @@ -2833,7 +2845,6 @@ 45DF5DF21DDB843F00C936C7 /* CompareSafetyNumbersActivity.swift in Sources */, 458DE9D91DEE7B360071BB03 /* OWSWebRTCDataProtos.pb.m in Sources */, 76EB063C18170B33006006FC /* NumberUtil.m in Sources */, - 34D5CCB11EAE7E7F005515DB /* SelectRecipientViewController.m in Sources */, 34B3F88F1E8DF1710035BE1A /* RegistrationViewController.m in Sources */, 451166C01FD86B98000739BA /* AccountManager.swift in Sources */, 3430FE181F7751D4000EC51B /* GiphyAPI.swift in Sources */, @@ -2849,12 +2860,10 @@ 34D1F0AE1F867BFC0066283D /* OWSMessageCell.m in Sources */, 451686AB1F520CDA00AC3D4B /* MultiDeviceProfileKeyUpdateJob.swift in Sources */, 45D231771DC7E8F10034FA89 /* SessionResetJob.swift in Sources */, - 34D9134D1F66DB7C00722898 /* ModalActivityIndicatorViewController.swift in Sources */, 452037D11EE84975004E4CDF /* DebugUISessionState.m in Sources */, D221A09A169C9E5E00537ABF /* main.m in Sources */, 34B3F87B1E8DF1700035BE1A /* ExperienceUpgradesPageViewController.swift in Sources */, 452EA09E1EA7ABE00078744B /* AttachmentPointerView.swift in Sources */, - 3471B1DA1EB7C63600F6AEC8 /* NewNonContactConversationViewController.m in Sources */, 34B3F87C1E8DF1700035BE1A /* FingerprintViewController.m in Sources */, 4523149C1F7D7F81003A428C /* OWSMessagesBubbleImageFactory.swift in Sources */, 45638BDC1F3DD0D400128435 /* DebugUICalling.swift in Sources */, @@ -2878,7 +2887,6 @@ 3497DBEF1ECE2E4700DB2605 /* DomainFrontingCountryViewController.m in Sources */, 452314A01F7E9E18003A428C /* DirectionalPanGestureRecognizer.swift in Sources */, 34330AA31E79686200DF2FB9 /* OWSProgressView.m in Sources */, - 34B3F8A21E8EA6040035BE1A /* ViewControllerUtils.m in Sources */, 34CA1C271F7156F300E51C51 /* MessageDetailViewController.swift in Sources */, 34D5CCA91EAE3D30005515DB /* AvatarViewHelper.m in Sources */, 45F170AC1E2F0351003FC1F2 /* CallAudioSession.swift in Sources */, diff --git a/Signal/src/ViewControllers/CountryCodeViewController.h b/SignalMessaging/contacts/CountryCodeViewController.h similarity index 89% rename from Signal/src/ViewControllers/CountryCodeViewController.h rename to SignalMessaging/contacts/CountryCodeViewController.h index 4ceaf10f7..1bf349ea5 100644 --- a/Signal/src/ViewControllers/CountryCodeViewController.h +++ b/SignalMessaging/contacts/CountryCodeViewController.h @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "OWSTableViewController.h" diff --git a/Signal/src/ViewControllers/CountryCodeViewController.m b/SignalMessaging/contacts/CountryCodeViewController.m similarity index 97% rename from Signal/src/ViewControllers/CountryCodeViewController.m rename to SignalMessaging/contacts/CountryCodeViewController.m index 7f3d38008..168c01f88 100644 --- a/Signal/src/ViewControllers/CountryCodeViewController.m +++ b/SignalMessaging/contacts/CountryCodeViewController.m @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "CountryCodeViewController.h" @@ -110,7 +110,8 @@ [self dismissViewControllerAnimated:YES completion:nil]; } -- (void)dismissWasPressed:(id)sender { +- (void)dismissWasPressed:(id)sender +{ [self dismissViewControllerAnimated:YES completion:nil]; } diff --git a/Signal/src/ViewControllers/ModalActivityIndicatorViewController.swift b/SignalMessaging/contacts/ModalActivityIndicatorViewController.swift similarity index 98% rename from Signal/src/ViewControllers/ModalActivityIndicatorViewController.swift rename to SignalMessaging/contacts/ModalActivityIndicatorViewController.swift index e6ca10146..bcfb1c18b 100644 --- a/Signal/src/ViewControllers/ModalActivityIndicatorViewController.swift +++ b/SignalMessaging/contacts/ModalActivityIndicatorViewController.swift @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // import Foundation diff --git a/Signal/src/ViewControllers/NewNonContactConversationViewController.h b/SignalMessaging/contacts/NewNonContactConversationViewController.h similarity index 86% rename from Signal/src/ViewControllers/NewNonContactConversationViewController.h rename to SignalMessaging/contacts/NewNonContactConversationViewController.h index 3c477e209..8eca400bb 100644 --- a/Signal/src/ViewControllers/NewNonContactConversationViewController.h +++ b/SignalMessaging/contacts/NewNonContactConversationViewController.h @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "SelectRecipientViewController.h" diff --git a/Signal/src/ViewControllers/NewNonContactConversationViewController.m b/SignalMessaging/contacts/NewNonContactConversationViewController.m similarity index 89% rename from Signal/src/ViewControllers/NewNonContactConversationViewController.m rename to SignalMessaging/contacts/NewNonContactConversationViewController.m index 5e8918a5b..9c07fe231 100644 --- a/Signal/src/ViewControllers/NewNonContactConversationViewController.m +++ b/SignalMessaging/contacts/NewNonContactConversationViewController.m @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "NewNonContactConversationViewController.h" @@ -41,7 +41,7 @@ NS_ASSUME_NONNULL_BEGIN - (NSString *)contactsSectionTitle { - OWSAssert(0); + OWSFail(@"Method should never be called."); return nil; } @@ -84,14 +84,14 @@ NS_ASSUME_NONNULL_BEGIN - (BOOL)canSignalAccountBeSelected:(SignalAccount *)signalAccount { - OWSAssert(0); + OWSFail(@"Method should never be called."); return NO; } - (nullable NSString *)accessoryMessageForSignalAccount:(SignalAccount *)signalAccount { - OWSAssert(0); + OWSFail(@"Method should never be called."); return nil; } diff --git a/Signal/src/ViewControllers/SelectRecipientViewController.h b/SignalMessaging/contacts/SelectRecipientViewController.h similarity index 93% rename from Signal/src/ViewControllers/SelectRecipientViewController.h rename to SignalMessaging/contacts/SelectRecipientViewController.h index 319be0b5e..0feb80427 100644 --- a/Signal/src/ViewControllers/SelectRecipientViewController.h +++ b/SignalMessaging/contacts/SelectRecipientViewController.h @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "OWSViewController.h" diff --git a/Signal/src/ViewControllers/SelectRecipientViewController.m b/SignalMessaging/contacts/SelectRecipientViewController.m similarity index 99% rename from Signal/src/ViewControllers/SelectRecipientViewController.m rename to SignalMessaging/contacts/SelectRecipientViewController.m index 04f48809f..1359f26bd 100644 --- a/Signal/src/ViewControllers/SelectRecipientViewController.m +++ b/SignalMessaging/contacts/SelectRecipientViewController.m @@ -1,17 +1,17 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "SelectRecipientViewController.h" #import "CountryCodeViewController.h" #import "PhoneNumber.h" -#import "Signal-Swift.h" #import "ViewControllerUtils.h" #import #import #import #import #import +#import #import #import #import @@ -500,8 +500,7 @@ NSString *const kSelectRecipientViewControllerCellIdentifier = @"kSelectRecipien return cell; } customRowHeight:kCountryRowHeight + kPhoneNumberRowHeight - + examplePhoneNumberRowHeight - + kButtonRowHeight + + examplePhoneNumberRowHeight + kButtonRowHeight actionBlock:nil]]; [contents addSection:phoneNumberSection]; diff --git a/SignalMessaging/contacts/SelectThreadViewController.m b/SignalMessaging/contacts/SelectThreadViewController.m index 76990d1ca..2d7576fbf 100644 --- a/SignalMessaging/contacts/SelectThreadViewController.m +++ b/SignalMessaging/contacts/SelectThreadViewController.m @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "SelectThreadViewController.h" @@ -8,6 +8,7 @@ #import "ContactsViewHelper.h" #import "Environment.h" #import "NSString+OWS.h" +#import "NewNonContactConversationViewController.h" #import "OWSContactsManager.h" #import "OWSTableViewController.h" #import "ThreadViewHelper.h" @@ -26,7 +27,8 @@ NS_ASSUME_NONNULL_BEGIN @interface SelectThreadViewController () + UISearchBarDelegate, + NewNonContactConversationViewControllerDelegate> @property (nonatomic, readonly) ContactsViewHelper *contactsViewHelper; @property (nonatomic, readonly) ConversationSearcher *conversationSearcher; @@ -137,6 +139,21 @@ NS_ASSUME_NONNULL_BEGIN ContactsViewHelper *helper = self.contactsViewHelper; OWSTableContents *contents = [OWSTableContents new]; + // Existing threads are listed first, ordered by most recently active + OWSTableSection *findByPhoneSection = [OWSTableSection new]; + [findByPhoneSection + addItem:[OWSTableItem disclosureItemWithText:NSLocalizedString(@"NEW_CONVERSATION_FIND_BY_PHONE_NUMBER", + @"A label the cell that lets you add a new member to a group.") + customRowHeight:[ContactTableViewCell rowHeight] + actionBlock:^{ + NewNonContactConversationViewController *viewController = + [NewNonContactConversationViewController new]; + viewController.nonContactConversationDelegate = weakSelf; + [weakSelf.navigationController pushViewController:viewController + animated:YES]; + }]]; + [contents addSection:findByPhoneSection]; + // Existing threads are listed first, ordered by most recently active OWSTableSection *recentChatsSection = [OWSTableSection new]; recentChatsSection.headerTitle = NSLocalizedString( @@ -304,6 +321,17 @@ NS_ASSUME_NONNULL_BEGIN return NO; } +#pragma mark - NewNonContactConversationViewControllerDelegate + +- (void)recipientIdWasSelected:(NSString *)recipientId +{ + SignalAccount *signalAccount = [self.contactsViewHelper signalAccountForRecipientId:recipientId]; + if (!signalAccount) { + signalAccount = [[SignalAccount alloc] initWithRecipientId:recipientId]; + } + [self signalAccountWasSelected:signalAccount]; +} + @end NS_ASSUME_NONNULL_END diff --git a/Signal/src/ViewControllers/ViewControllerUtils.h b/SignalMessaging/contacts/ViewControllerUtils.h similarity index 91% rename from Signal/src/ViewControllers/ViewControllerUtils.h rename to SignalMessaging/contacts/ViewControllerUtils.h index ed627c5a3..1be8a4dd6 100644 --- a/Signal/src/ViewControllers/ViewControllerUtils.h +++ b/SignalMessaging/contacts/ViewControllerUtils.h @@ -1,5 +1,5 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import diff --git a/Signal/src/ViewControllers/ViewControllerUtils.m b/SignalMessaging/contacts/ViewControllerUtils.m similarity index 98% rename from Signal/src/ViewControllers/ViewControllerUtils.m rename to SignalMessaging/contacts/ViewControllerUtils.m index 5c4077500..5d4d81927 100644 --- a/Signal/src/ViewControllers/ViewControllerUtils.m +++ b/SignalMessaging/contacts/ViewControllerUtils.m @@ -1,11 +1,11 @@ // -// Copyright (c) 2017 Open Whisper Systems. All rights reserved. +// Copyright (c) 2018 Open Whisper Systems. All rights reserved. // #import "ViewControllerUtils.h" #import "HomeViewController.h" +#import "NSString+OWS.h" #import "PhoneNumber.h" -#import "Signal-Swift.h" #import #import #import