From 5f95704684b5d1ce97c2dfb1d2e4b0d44bec3bb3 Mon Sep 17 00:00:00 2001
From: Peter <>
Date: Thu, 15 Aug 2019 02:09:45 +0300
Subject: [PATCH] Refactor LegacyMediaPickerUI and WebSearchUI [skip ci]
---
.../contents.xcworkspacedata | 12 +
.../Sources/ChatController.swift | 85 +++
submodules/LegacyMediaPickerUI/Info.plist | 22 +
.../project.pbxproj | 619 ++++++++++++++++
.../Sources}/LegacyAttachmentMenu.swift | 16 +-
.../Sources}/LegacyAvatarPicker.swift | 2 +-
.../Sources}/LegacyImagePicker.swift | 0
.../Sources/LegacyImageProcessors.h | 5 +
.../Sources}/LegacyImageProcessors.m | 0
.../Sources/LegacyMediaPickerUI.h | 19 +
.../Sources}/LegacyMediaPickers.swift | 15 +-
.../Sources}/LegacySuggestionContext.swift | 4 +-
.../Sources}/LegacyWallpaperPicker.swift | 2 +-
submodules/LocalMediaResources/Info.plist | 22 +
.../project.pbxproj | 555 ++++++++++++++
.../Sources/LocalMediaResources.h | 19 +
.../Sources}/MediaResources.swift | 4 +-
submodules/MimeTypes/Info.plist | 22 +
.../MimeTypes_Xcode.xcodeproj/project.pbxproj | 540 ++++++++++++++
submodules/MimeTypes/Sources/MimeTypes.h | 11 +
.../Sources}/TGMimeTypeMap.h | 0
.../Sources}/TGMimeTypeMap.m | 0
...uthorizationSequenceSignUpController.swift | 1 +
.../TelegramUI/ChannelInfoController.swift | 1 +
.../TelegramUI/ChatController.swift | 11 +-
.../ChatMessageInteractiveMediaNode.swift | 1 +
.../ChatPresentationInterfaceState.swift | 84 ---
.../TelegramUI/CreateChannelController.swift | 1 +
.../TelegramUI/CreateGroupController.swift | 1 +
.../TelegramUI/CustomWallpaperPicker.swift | 1 +
.../TelegramUI/DeclareEncodables.swift | 2 +
.../TelegramUI/EditSettingsController.swift | 1 +
.../TelegramUI/FetchVideoMediaResource.swift | 1 +
.../TelegramUI/GifPaneSearchContentNode.swift | 1 +
.../TelegramUI/GroupInfoController.swift | 1 +
.../TelegramUI/TelegramUI/LegacyCamera.swift | 1 +
.../TelegramUI/LegacyImageProcessors.h | 13 -
.../LegacyInstantVideoController.swift | 1 +
.../TelegramUI/SettingsController.swift | 1 +
.../TelegramUI/TelegramUI/ShareItems.swift | 1 +
.../TelegramUI/TGItemProviderSignals.m | 2 +-
.../TelegramAccountAuxiliaryMethods.swift | 1 +
.../TelegramUI/TelegramRootController.swift | 2 +-
.../TelegramUIPrivate/module.modulemap | 1 -
.../ThemeGridSearchContentNode.swift | 1 +
.../TelegramUI/WallpaperGalleryItem.swift | 1 +
.../TelegramUI/WallpaperResources.swift | 1 +
.../project.pbxproj | 120 +---
submodules/WebSearchUI/Info.plist | 22 +
.../WebSearchUI/Sources/FrameworkBundle.swift | 13 +
.../Sources}/LegacyWebSearchEditor.swift | 0
.../Sources}/LegacyWebSearchGallery.swift | 3 +-
.../Sources}/WebSearchBadgeNode.swift | 0
.../Sources}/WebSearchController.swift | 16 +-
.../Sources}/WebSearchControllerNode.swift | 0
.../Sources}/WebSearchGalleryController.swift | 0
.../WebSearchGalleryFooterContentNode.swift | 0
.../Sources}/WebSearchInterfaceState.swift | 0
.../Sources}/WebSearchItem.swift | 0
.../WebSearchNavigationContentNode.swift | 0
.../Sources}/WebSearchRecentQueries.swift | 2 +-
.../Sources}/WebSearchRecentQueryItem.swift | 12 +-
submodules/WebSearchUI/Sources/WebSearchUI.h | 19 +
.../Sources}/WebSearchVideoGalleryItem.swift | 0
.../project.pbxproj | 675 ++++++++++++++++++
65 files changed, 2751 insertions(+), 238 deletions(-)
create mode 100644 submodules/LegacyMediaPickerUI/Info.plist
create mode 100644 submodules/LegacyMediaPickerUI/LegacyMediaPickerUI_Xcode.xcodeproj/project.pbxproj
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacyAttachmentMenu.swift (86%)
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacyAvatarPicker.swift (88%)
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacyImagePicker.swift (100%)
create mode 100644 submodules/LegacyMediaPickerUI/Sources/LegacyImageProcessors.h
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacyImageProcessors.m (100%)
create mode 100644 submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickerUI.h
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacyMediaPickers.swift (96%)
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacySuggestionContext.swift (97%)
rename submodules/{TelegramUI/TelegramUI => LegacyMediaPickerUI/Sources}/LegacyWallpaperPicker.swift (92%)
create mode 100644 submodules/LocalMediaResources/Info.plist
create mode 100644 submodules/LocalMediaResources/LocalMediaResources_Xcode.xcodeproj/project.pbxproj
create mode 100644 submodules/LocalMediaResources/Sources/LocalMediaResources.h
rename submodules/{TelegramUI/TelegramUI => LocalMediaResources/Sources}/MediaResources.swift (99%)
create mode 100644 submodules/MimeTypes/Info.plist
create mode 100644 submodules/MimeTypes/MimeTypes_Xcode.xcodeproj/project.pbxproj
create mode 100644 submodules/MimeTypes/Sources/MimeTypes.h
rename submodules/{TelegramUI/TelegramUI => MimeTypes/Sources}/TGMimeTypeMap.h (100%)
rename submodules/{TelegramUI/TelegramUI => MimeTypes/Sources}/TGMimeTypeMap.m (100%)
delete mode 100644 submodules/TelegramUI/TelegramUI/LegacyImageProcessors.h
create mode 100644 submodules/WebSearchUI/Info.plist
create mode 100644 submodules/WebSearchUI/Sources/FrameworkBundle.swift
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/LegacyWebSearchEditor.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/LegacyWebSearchGallery.swift (98%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchBadgeNode.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchController.swift (96%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchControllerNode.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchGalleryController.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchGalleryFooterContentNode.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchInterfaceState.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchItem.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchNavigationContentNode.swift (100%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchRecentQueries.swift (97%)
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchRecentQueryItem.swift (90%)
create mode 100644 submodules/WebSearchUI/Sources/WebSearchUI.h
rename submodules/{TelegramUI/TelegramUI => WebSearchUI/Sources}/WebSearchVideoGalleryItem.swift (100%)
create mode 100644 submodules/WebSearchUI/WebSearchUI_Xcode.xcodeproj/project.pbxproj
diff --git a/Telegram-iOS.xcworkspace/contents.xcworkspacedata b/Telegram-iOS.xcworkspace/contents.xcworkspacedata
index e4890e3bc5..278c7684c5 100644
--- a/Telegram-iOS.xcworkspace/contents.xcworkspacedata
+++ b/Telegram-iOS.xcworkspace/contents.xcworkspacedata
@@ -86,6 +86,9 @@
+
+
@@ -159,6 +162,9 @@
+
+
+
+
+
+
diff --git a/submodules/AccountContext/Sources/ChatController.swift b/submodules/AccountContext/Sources/ChatController.swift
index 080957b67e..52a97a46bd 100644
--- a/submodules/AccountContext/Sources/ChatController.swift
+++ b/submodules/AccountContext/Sources/ChatController.swift
@@ -1,5 +1,6 @@
import Foundation
import Postbox
+import TelegramCore
import TextFormat
import Display
import SwiftSignalKit
@@ -274,6 +275,90 @@ public final class ChatEmbeddedInterfaceState: PeerChatListEmbeddedInterfaceStat
}
}
+public enum ChatPresentationInputQueryResult: Equatable {
+ case stickers([FoundStickerItem])
+ case hashtags([String])
+ case mentions([Peer])
+ case commands([PeerCommand])
+ case emojis([(String, String)], NSRange)
+ case contextRequestResult(Peer?, ChatContextResultCollection?)
+
+ public static func ==(lhs: ChatPresentationInputQueryResult, rhs: ChatPresentationInputQueryResult) -> Bool {
+ switch lhs {
+ case let .stickers(lhsItems):
+ if case let .stickers(rhsItems) = rhs, lhsItems == rhsItems {
+ return true
+ } else {
+ return false
+ }
+ case let .hashtags(lhsResults):
+ if case let .hashtags(rhsResults) = rhs {
+ return lhsResults == rhsResults
+ } else {
+ return false
+ }
+ case let .mentions(lhsPeers):
+ if case let .mentions(rhsPeers) = rhs {
+ if lhsPeers.count != rhsPeers.count {
+ return false
+ } else {
+ for i in 0 ..< lhsPeers.count {
+ if !lhsPeers[i].isEqual(rhsPeers[i]) {
+ return false
+ }
+ }
+ return true
+ }
+ } else {
+ return false
+ }
+ case let .commands(lhsCommands):
+ if case let .commands(rhsCommands) = rhs {
+ if lhsCommands != rhsCommands {
+ return false
+ }
+ return true
+ } else {
+ return false
+ }
+ case let .emojis(lhsValue, lhsRange):
+ if case let .emojis(rhsValue, rhsRange) = rhs {
+ if lhsRange != rhsRange {
+ return false
+ }
+ if lhsValue.count != rhsValue.count {
+ return false
+ }
+ for i in 0 ..< lhsValue.count {
+ if lhsValue[i] != rhsValue[i] {
+ return false
+ }
+ }
+ return true
+ } else {
+ return false
+ }
+ case let .contextRequestResult(lhsPeer, lhsCollection):
+ if case let .contextRequestResult(rhsPeer, rhsCollection) = rhs {
+ if let lhsPeer = lhsPeer, let rhsPeer = rhsPeer {
+ if !lhsPeer.isEqual(rhsPeer) {
+ return false
+ }
+ } else if (lhsPeer != nil) != (rhsPeer != nil) {
+ return false
+ }
+
+ if lhsCollection != rhsCollection {
+ return false
+ }
+ return true
+ } else {
+ return false
+ }
+ }
+ }
+}
+
public protocol ChatController: ViewController {
var chatLocation: ChatLocation { get }
var canReadHistory: ValuePromise { get }
diff --git a/submodules/LegacyMediaPickerUI/Info.plist b/submodules/LegacyMediaPickerUI/Info.plist
new file mode 100644
index 0000000000..e1fe4cfb7b
--- /dev/null
+++ b/submodules/LegacyMediaPickerUI/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ $(CURRENT_PROJECT_VERSION)
+
+
diff --git a/submodules/LegacyMediaPickerUI/LegacyMediaPickerUI_Xcode.xcodeproj/project.pbxproj b/submodules/LegacyMediaPickerUI/LegacyMediaPickerUI_Xcode.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000..1438062244
--- /dev/null
+++ b/submodules/LegacyMediaPickerUI/LegacyMediaPickerUI_Xcode.xcodeproj/project.pbxproj
@@ -0,0 +1,619 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 50;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ D03E3F6E2304C4840049C28B /* LegacyMediaPickerUI.h in Headers */ = {isa = PBXBuildFile; fileRef = D03E3F6C2304C4840049C28B /* LegacyMediaPickerUI.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D03E3F802304C50E0049C28B /* LegacyMediaPickers.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F782304C50D0049C28B /* LegacyMediaPickers.swift */; };
+ D03E3F812304C50E0049C28B /* LegacyImageProcessors.h in Headers */ = {isa = PBXBuildFile; fileRef = D03E3F792304C50D0049C28B /* LegacyImageProcessors.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D03E3F822304C50E0049C28B /* LegacyAttachmentMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F7A2304C50D0049C28B /* LegacyAttachmentMenu.swift */; };
+ D03E3F832304C50E0049C28B /* LegacySuggestionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F7B2304C50D0049C28B /* LegacySuggestionContext.swift */; };
+ D03E3F842304C50E0049C28B /* LegacyImagePicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F7C2304C50D0049C28B /* LegacyImagePicker.swift */; };
+ D03E3F852304C50E0049C28B /* LegacyImageProcessors.m in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F7D2304C50D0049C28B /* LegacyImageProcessors.m */; };
+ D03E3F862304C50E0049C28B /* LegacyAvatarPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F7E2304C50D0049C28B /* LegacyAvatarPicker.swift */; };
+ D03E3F872304C50E0049C28B /* LegacyWallpaperPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F7F2304C50D0049C28B /* LegacyWallpaperPicker.swift */; };
+ D03E3F8A2304C51B0049C28B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F892304C51B0049C28B /* Foundation.framework */; };
+ D03E3F8C2304C51F0049C28B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F8B2304C51E0049C28B /* UIKit.framework */; };
+ D03E3F8E2304C5230049C28B /* LegacyComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F8D2304C5230049C28B /* LegacyComponents.framework */; };
+ D03E3F902304C5260049C28B /* Display.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F8F2304C5260049C28B /* Display.framework */; };
+ D03E3F922304C52A0049C28B /* SwiftSignalKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F912304C52A0049C28B /* SwiftSignalKit.framework */; };
+ D03E3F942304C5300049C28B /* Postbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F932304C5300049C28B /* Postbox.framework */; };
+ D03E3F962304C5350049C28B /* TelegramCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F952304C5350049C28B /* TelegramCore.framework */; };
+ D03E3F982304C53A0049C28B /* TelegramPresentationData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F972304C53A0049C28B /* TelegramPresentationData.framework */; };
+ D03E3F9A2304C53E0049C28B /* DeviceAccess.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F992304C53E0049C28B /* DeviceAccess.framework */; };
+ D03E3F9C2304C5440049C28B /* AccountContext.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F9B2304C5440049C28B /* AccountContext.framework */; };
+ D03E3F9E2304C5480049C28B /* LegacyUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F9D2304C5480049C28B /* LegacyUI.framework */; };
+ D03E3FC62304C6A50049C28B /* MimeTypes.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FC52304C6A50049C28B /* MimeTypes.framework */; };
+ D03E3FEE2304C7F30049C28B /* LocalMediaResources.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FED2304C7F30049C28B /* LocalMediaResources.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ D03E3F692304C4840049C28B /* LegacyMediaPickerUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = LegacyMediaPickerUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F6C2304C4840049C28B /* LegacyMediaPickerUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LegacyMediaPickerUI.h; sourceTree = ""; };
+ D03E3F6D2304C4840049C28B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ D03E3F782304C50D0049C28B /* LegacyMediaPickers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyMediaPickers.swift; sourceTree = ""; };
+ D03E3F792304C50D0049C28B /* LegacyImageProcessors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LegacyImageProcessors.h; sourceTree = ""; };
+ D03E3F7A2304C50D0049C28B /* LegacyAttachmentMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyAttachmentMenu.swift; sourceTree = ""; };
+ D03E3F7B2304C50D0049C28B /* LegacySuggestionContext.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacySuggestionContext.swift; sourceTree = ""; };
+ D03E3F7C2304C50D0049C28B /* LegacyImagePicker.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyImagePicker.swift; sourceTree = ""; };
+ D03E3F7D2304C50D0049C28B /* LegacyImageProcessors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LegacyImageProcessors.m; sourceTree = ""; };
+ D03E3F7E2304C50D0049C28B /* LegacyAvatarPicker.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyAvatarPicker.swift; sourceTree = ""; };
+ D03E3F7F2304C50D0049C28B /* LegacyWallpaperPicker.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyWallpaperPicker.swift; sourceTree = ""; };
+ D03E3F892304C51B0049C28B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ D03E3F8B2304C51E0049C28B /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ D03E3F8D2304C5230049C28B /* LegacyComponents.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LegacyComponents.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F8F2304C5260049C28B /* Display.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Display.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F912304C52A0049C28B /* SwiftSignalKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SwiftSignalKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F932304C5300049C28B /* Postbox.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Postbox.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F952304C5350049C28B /* TelegramCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F972304C53A0049C28B /* TelegramPresentationData.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramPresentationData.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F992304C53E0049C28B /* DeviceAccess.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = DeviceAccess.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F9B2304C5440049C28B /* AccountContext.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = AccountContext.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F9D2304C5480049C28B /* LegacyUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LegacyUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FC52304C6A50049C28B /* MimeTypes.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = MimeTypes.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FED2304C7F30049C28B /* LocalMediaResources.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LocalMediaResources.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ D03E3F662304C4840049C28B /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FEE2304C7F30049C28B /* LocalMediaResources.framework in Frameworks */,
+ D03E3FC62304C6A50049C28B /* MimeTypes.framework in Frameworks */,
+ D03E3F9E2304C5480049C28B /* LegacyUI.framework in Frameworks */,
+ D03E3F9C2304C5440049C28B /* AccountContext.framework in Frameworks */,
+ D03E3F9A2304C53E0049C28B /* DeviceAccess.framework in Frameworks */,
+ D03E3F982304C53A0049C28B /* TelegramPresentationData.framework in Frameworks */,
+ D03E3F962304C5350049C28B /* TelegramCore.framework in Frameworks */,
+ D03E3F942304C5300049C28B /* Postbox.framework in Frameworks */,
+ D03E3F922304C52A0049C28B /* SwiftSignalKit.framework in Frameworks */,
+ D03E3F902304C5260049C28B /* Display.framework in Frameworks */,
+ D03E3F8E2304C5230049C28B /* LegacyComponents.framework in Frameworks */,
+ D03E3F8C2304C51F0049C28B /* UIKit.framework in Frameworks */,
+ D03E3F8A2304C51B0049C28B /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ D03E3F5F2304C4840049C28B = {
+ isa = PBXGroup;
+ children = (
+ D03E3F6D2304C4840049C28B /* Info.plist */,
+ D03E3F6B2304C4840049C28B /* Sources */,
+ D03E3F6A2304C4840049C28B /* Products */,
+ D03E3F882304C51B0049C28B /* Frameworks */,
+ );
+ sourceTree = "";
+ };
+ D03E3F6A2304C4840049C28B /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3F692304C4840049C28B /* LegacyMediaPickerUI.framework */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ D03E3F6B2304C4840049C28B /* Sources */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3F7A2304C50D0049C28B /* LegacyAttachmentMenu.swift */,
+ D03E3F7E2304C50D0049C28B /* LegacyAvatarPicker.swift */,
+ D03E3F7C2304C50D0049C28B /* LegacyImagePicker.swift */,
+ D03E3F792304C50D0049C28B /* LegacyImageProcessors.h */,
+ D03E3F7D2304C50D0049C28B /* LegacyImageProcessors.m */,
+ D03E3F782304C50D0049C28B /* LegacyMediaPickers.swift */,
+ D03E3F7B2304C50D0049C28B /* LegacySuggestionContext.swift */,
+ D03E3F7F2304C50D0049C28B /* LegacyWallpaperPicker.swift */,
+ D03E3F6C2304C4840049C28B /* LegacyMediaPickerUI.h */,
+ );
+ path = Sources;
+ sourceTree = "";
+ };
+ D03E3F882304C51B0049C28B /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FED2304C7F30049C28B /* LocalMediaResources.framework */,
+ D03E3FC52304C6A50049C28B /* MimeTypes.framework */,
+ D03E3F9D2304C5480049C28B /* LegacyUI.framework */,
+ D03E3F9B2304C5440049C28B /* AccountContext.framework */,
+ D03E3F992304C53E0049C28B /* DeviceAccess.framework */,
+ D03E3F972304C53A0049C28B /* TelegramPresentationData.framework */,
+ D03E3F952304C5350049C28B /* TelegramCore.framework */,
+ D03E3F932304C5300049C28B /* Postbox.framework */,
+ D03E3F912304C52A0049C28B /* SwiftSignalKit.framework */,
+ D03E3F8F2304C5260049C28B /* Display.framework */,
+ D03E3F8D2304C5230049C28B /* LegacyComponents.framework */,
+ D03E3F8B2304C51E0049C28B /* UIKit.framework */,
+ D03E3F892304C51B0049C28B /* Foundation.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+ D03E3F642304C4840049C28B /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3F812304C50E0049C28B /* LegacyImageProcessors.h in Headers */,
+ D03E3F6E2304C4840049C28B /* LegacyMediaPickerUI.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+ D03E3F682304C4840049C28B /* LegacyMediaPickerUI */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = D03E3F712304C4840049C28B /* Build configuration list for PBXNativeTarget "LegacyMediaPickerUI" */;
+ buildPhases = (
+ D03E3F642304C4840049C28B /* Headers */,
+ D03E3F652304C4840049C28B /* Sources */,
+ D03E3F662304C4840049C28B /* Frameworks */,
+ D03E3F672304C4840049C28B /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = LegacyMediaPickerUI;
+ productName = LegacyMediaPickerUI;
+ productReference = D03E3F692304C4840049C28B /* LegacyMediaPickerUI.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ D03E3F602304C4840049C28B /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ DefaultBuildSystemTypeForWorkspace = Latest;
+ LastUpgradeCheck = 1030;
+ ORGANIZATIONNAME = "Telegram Messenger LLP";
+ TargetAttributes = {
+ D03E3F682304C4840049C28B = {
+ CreatedOnToolsVersion = 10.3;
+ LastSwiftMigration = 1030;
+ };
+ };
+ };
+ buildConfigurationList = D03E3F632304C4840049C28B /* Build configuration list for PBXProject "LegacyMediaPickerUI_Xcode" */;
+ compatibilityVersion = "Xcode 9.3";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = D03E3F5F2304C4840049C28B;
+ productRefGroup = D03E3F6A2304C4840049C28B /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ D03E3F682304C4840049C28B /* LegacyMediaPickerUI */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ D03E3F672304C4840049C28B /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ D03E3F652304C4840049C28B /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3F872304C50E0049C28B /* LegacyWallpaperPicker.swift in Sources */,
+ D03E3F842304C50E0049C28B /* LegacyImagePicker.swift in Sources */,
+ D03E3F822304C50E0049C28B /* LegacyAttachmentMenu.swift in Sources */,
+ D03E3F852304C50E0049C28B /* LegacyImageProcessors.m in Sources */,
+ D03E3F802304C50E0049C28B /* LegacyMediaPickers.swift in Sources */,
+ D03E3F832304C50E0049C28B /* LegacySuggestionContext.swift in Sources */,
+ D03E3F862304C50E0049C28B /* LegacyAvatarPicker.swift in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ D03E3F6F2304C4840049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3F702304C4840049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3F722304C4840049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LegacyMediaPickerUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3F732304C4840049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LegacyMediaPickerUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3F742304C4B10049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3F752304C4B10049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LegacyMediaPickerUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3F762304C4BC0049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+ D03E3F772304C4BC0049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LegacyMediaPickerUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ D03E3F632304C4840049C28B /* Build configuration list for PBXProject "LegacyMediaPickerUI_Xcode" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3F6F2304C4840049C28B /* DebugAppStoreLLC */,
+ D03E3F742304C4B10049C28B /* DebugHockeyapp */,
+ D03E3F702304C4840049C28B /* ReleaseAppStoreLLC */,
+ D03E3F762304C4BC0049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+ D03E3F712304C4840049C28B /* Build configuration list for PBXNativeTarget "LegacyMediaPickerUI" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3F722304C4840049C28B /* DebugAppStoreLLC */,
+ D03E3F752304C4B10049C28B /* DebugHockeyapp */,
+ D03E3F732304C4840049C28B /* ReleaseAppStoreLLC */,
+ D03E3F772304C4BC0049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = D03E3F602304C4840049C28B /* Project object */;
+}
diff --git a/submodules/TelegramUI/TelegramUI/LegacyAttachmentMenu.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyAttachmentMenu.swift
similarity index 86%
rename from submodules/TelegramUI/TelegramUI/LegacyAttachmentMenu.swift
rename to submodules/LegacyMediaPickerUI/Sources/LegacyAttachmentMenu.swift
index 889c414e55..ef30d071f5 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyAttachmentMenu.swift
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyAttachmentMenu.swift
@@ -10,7 +10,17 @@ import DeviceAccess
import AccountContext
import LegacyUI
-func legacyAttachmentMenu(context: AccountContext, peer: Peer, editMediaOptions: MessageMediaEditingOptions?, saveEditedPhotos: Bool, allowGrouping: Bool, theme: PresentationTheme, strings: PresentationStrings, parentController: LegacyController, recentlyUsedInlineBots: [Peer], initialCaption: String, openGallery: @escaping () -> Void, openCamera: @escaping (TGAttachmentCameraView?, TGMenuSheetController?) -> Void, openFileGallery: @escaping () -> Void, openWebSearch: @escaping () -> Void, openMap: @escaping () -> Void, openContacts: @escaping () -> Void, openPoll: @escaping () -> Void, presentSelectionLimitExceeded: @escaping () -> Void, presentCantSendMultipleFiles: @escaping () -> Void, sendMessagesWithSignals: @escaping ([Any]?, Bool) -> Void, selectRecentlyUsedInlineBot: @escaping (Peer) -> Void) -> TGMenuSheetController {
+public struct LegacyAttachmentMenuMediaEditing: OptionSet {
+ public var rawValue: Int32
+
+ public init(rawValue: Int32) {
+ self.rawValue = rawValue
+ }
+
+ public static let imageOrVideo = LegacyAttachmentMenuMediaEditing(rawValue: 1 << 0)
+}
+
+public func legacyAttachmentMenu(context: AccountContext, peer: Peer, editMediaOptions: LegacyAttachmentMenuMediaEditing?, saveEditedPhotos: Bool, allowGrouping: Bool, theme: PresentationTheme, strings: PresentationStrings, parentController: LegacyController, recentlyUsedInlineBots: [Peer], initialCaption: String, openGallery: @escaping () -> Void, openCamera: @escaping (TGAttachmentCameraView?, TGMenuSheetController?) -> Void, openFileGallery: @escaping () -> Void, openWebSearch: @escaping () -> Void, openMap: @escaping () -> Void, openContacts: @escaping () -> Void, openPoll: @escaping () -> Void, presentSelectionLimitExceeded: @escaping () -> Void, presentCantSendMultipleFiles: @escaping () -> Void, sendMessagesWithSignals: @escaping ([Any]?, Bool) -> Void, selectRecentlyUsedInlineBot: @escaping (Peer) -> Void) -> TGMenuSheetController {
let isSecretChat = peer.id.namespace == Namespaces.Peer.SecretChat
let controller = TGMenuSheetController(context: parentController.context, dark: false)!
@@ -168,12 +178,12 @@ func legacyAttachmentMenu(context: AccountContext, peer: Peer, editMediaOptions:
return controller
}
-func legacyMenuPaletteFromTheme(_ theme: PresentationTheme) -> TGMenuSheetPallete {
+public func legacyMenuPaletteFromTheme(_ theme: PresentationTheme) -> TGMenuSheetPallete {
let sheetTheme = theme.actionSheet
return TGMenuSheetPallete(dark: theme.overallDarkAppearance, backgroundColor: sheetTheme.opaqueItemBackgroundColor, selectionColor: sheetTheme.opaqueItemHighlightedBackgroundColor, separatorColor: sheetTheme.opaqueItemSeparatorColor, accentColor: sheetTheme.controlAccentColor, destructiveColor: sheetTheme.destructiveActionTextColor, textColor: sheetTheme.primaryTextColor, secondaryTextColor: sheetTheme.secondaryTextColor, spinnerColor: sheetTheme.secondaryTextColor, badgeTextColor: sheetTheme.controlAccentColor, badgeImage: nil, cornersImage: generateStretchableFilledCircleImage(diameter: 11.0, color: nil, strokeColor: nil, strokeWidth: nil, backgroundColor: sheetTheme.opaqueItemBackgroundColor))
}
-func presentLegacyPasteMenu(context: AccountContext, peer: Peer, saveEditedPhotos: Bool, allowGrouping: Bool, theme: PresentationTheme, strings: PresentationStrings, images: [UIImage], sendMessagesWithSignals: @escaping ([Any]?) -> Void, present: (ViewController, Any?) -> Void, initialLayout: ContainerViewLayout? = nil) -> ViewController {
+public func presentLegacyPasteMenu(context: AccountContext, peer: Peer, saveEditedPhotos: Bool, allowGrouping: Bool, theme: PresentationTheme, strings: PresentationStrings, images: [UIImage], sendMessagesWithSignals: @escaping ([Any]?) -> Void, present: (ViewController, Any?) -> Void, initialLayout: ContainerViewLayout? = nil) -> ViewController {
let legacyController = LegacyController(presentation: .custom, theme: theme, initialLayout: initialLayout)
legacyController.statusBar.statusBarStyle = .Ignore
legacyController.controllerLoaded = { [weak legacyController] in
diff --git a/submodules/TelegramUI/TelegramUI/LegacyAvatarPicker.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyAvatarPicker.swift
similarity index 88%
rename from submodules/TelegramUI/TelegramUI/LegacyAvatarPicker.swift
rename to submodules/LegacyMediaPickerUI/Sources/LegacyAvatarPicker.swift
index af833eaf22..764463c47b 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyAvatarPicker.swift
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyAvatarPicker.swift
@@ -6,7 +6,7 @@ import LegacyComponents
import TelegramPresentationData
import LegacyUI
-func presentLegacyAvatarPicker(holder: Atomic, signup: Bool, theme: PresentationTheme, present: (ViewController, Any?) -> Void, openCurrent: (() -> Void)?, completion: @escaping (UIImage) -> Void) {
+public func presentLegacyAvatarPicker(holder: Atomic, signup: Bool, theme: PresentationTheme, present: (ViewController, Any?) -> Void, openCurrent: (() -> Void)?, completion: @escaping (UIImage) -> Void) {
let legacyController = LegacyController(presentation: .custom, theme: theme)
legacyController.statusBar.statusBarStyle = .Ignore
diff --git a/submodules/TelegramUI/TelegramUI/LegacyImagePicker.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyImagePicker.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/LegacyImagePicker.swift
rename to submodules/LegacyMediaPickerUI/Sources/LegacyImagePicker.swift
diff --git a/submodules/LegacyMediaPickerUI/Sources/LegacyImageProcessors.h b/submodules/LegacyMediaPickerUI/Sources/LegacyImageProcessors.h
new file mode 100644
index 0000000000..4e45d19715
--- /dev/null
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyImageProcessors.h
@@ -0,0 +1,5 @@
+#import
+
+@interface LegacyImageProcessors : NSObject
+
+@end
diff --git a/submodules/TelegramUI/TelegramUI/LegacyImageProcessors.m b/submodules/LegacyMediaPickerUI/Sources/LegacyImageProcessors.m
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/LegacyImageProcessors.m
rename to submodules/LegacyMediaPickerUI/Sources/LegacyImageProcessors.m
diff --git a/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickerUI.h b/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickerUI.h
new file mode 100644
index 0000000000..24d275b34d
--- /dev/null
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickerUI.h
@@ -0,0 +1,19 @@
+//
+// LegacyMediaPickerUI.h
+// LegacyMediaPickerUI
+//
+// Created by Peter on 8/15/19.
+// Copyright © 2019 Telegram Messenger LLP. All rights reserved.
+//
+
+#import
+
+//! Project version number for LegacyMediaPickerUI.
+FOUNDATION_EXPORT double LegacyMediaPickerUIVersionNumber;
+
+//! Project version string for LegacyMediaPickerUI.
+FOUNDATION_EXPORT const unsigned char LegacyMediaPickerUIVersionString[];
+
+#import
+
+
diff --git a/submodules/TelegramUI/TelegramUI/LegacyMediaPickers.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift
similarity index 96%
rename from submodules/TelegramUI/TelegramUI/LegacyMediaPickers.swift
rename to submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift
index 64089839c0..a5975fa6f0 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyMediaPickers.swift
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyMediaPickers.swift
@@ -7,16 +7,17 @@ import Postbox
import SSignalKit
import Display
import TelegramPresentationData
-import TelegramUIPrivateModule
import DeviceAccess
import AccountContext
import ImageCompression
+import MimeTypes
+import LocalMediaResources
-func guessMimeTypeByFileExtension(_ ext: String) -> String {
+public func guessMimeTypeByFileExtension(_ ext: String) -> String {
return TGMimeTypeMap.mimeType(forExtension: ext) ?? "application/binary"
}
-func configureLegacyAssetPicker(_ controller: TGMediaAssetsController, context: AccountContext, peer: Peer, captionsEnabled: Bool = true, storeCreatedAssets: Bool = true, showFileTooltip: Bool = false, initialCaption: String, presentWebSearch: (() -> Void)?, presentSelectionLimitExceeded: @escaping () -> Void) {
+public func configureLegacyAssetPicker(_ controller: TGMediaAssetsController, context: AccountContext, peer: Peer, captionsEnabled: Bool = true, storeCreatedAssets: Bool = true, showFileTooltip: Bool = false, initialCaption: String, presentWebSearch: (() -> Void)?, presentSelectionLimitExceeded: @escaping () -> Void) {
let isSecretChat = peer.id.namespace == Namespaces.Peer.SecretChat
controller.captionsEnabled = captionsEnabled
@@ -41,7 +42,7 @@ func configureLegacyAssetPicker(_ controller: TGMediaAssetsController, context:
controller.editingContext.setInitialCaption(initialCaption, entities: [])
}
-func legacyAssetPicker(context: AccountContext, presentationData: PresentationData, editingMedia: Bool, fileMode: Bool, peer: Peer?, saveEditedPhotos: Bool, allowGrouping: Bool, selectionLimit: Int) -> Signal<(LegacyComponentsContext) -> TGMediaAssetsController, Void> {
+public func legacyAssetPicker(context: AccountContext, presentationData: PresentationData, editingMedia: Bool, fileMode: Bool, peer: Peer?, saveEditedPhotos: Bool, allowGrouping: Bool, selectionLimit: Int) -> Signal<(LegacyComponentsContext) -> TGMediaAssetsController, Void> {
let isSecretChat = (peer?.id.namespace ?? 0) == Namespaces.Peer.SecretChat
return Signal { subscriber in
@@ -113,7 +114,7 @@ private final class LegacyAssetItemWrapper: NSObject {
}
}
-func legacyAssetPickerItemGenerator() -> ((Any?, String?, [Any]?, String?) -> [AnyHashable : Any]?) {
+public func legacyAssetPickerItemGenerator() -> ((Any?, String?, [Any]?, String?) -> [AnyHashable : Any]?) {
return { anyDict, caption, entities, hash in
let dict = anyDict as! NSDictionary
if (dict["type"] as! NSString) == "editedPhoto" || (dict["type"] as! NSString) == "capturedPhoto" {
@@ -219,7 +220,7 @@ func legacyAssetPickerItemGenerator() -> ((Any?, String?, [Any]?, String?) -> [A
}
}
-func legacyEnqueueGifMessage(account: Account, data: Data) -> Signal {
+public func legacyEnqueueGifMessage(account: Account, data: Data) -> Signal {
return Signal { subscriber in
if let previewImage = UIImage(data: data) {
let dimensions = previewImage.size
@@ -261,7 +262,7 @@ func legacyEnqueueGifMessage(account: Account, data: Data) -> Signal runOn(Queue.concurrentDefaultQueue())
}
-func legacyAssetPickerEnqueueMessages(account: Account, signals: [Any]) -> Signal<[EnqueueMessage], Void> {
+public func legacyAssetPickerEnqueueMessages(account: Account, signals: [Any]) -> Signal<[EnqueueMessage], Void> {
return Signal { subscriber in
let disposable = SSignal.combineSignals(signals).start(next: { anyValues in
var messages: [EnqueueMessage] = []
diff --git a/submodules/TelegramUI/TelegramUI/LegacySuggestionContext.swift b/submodules/LegacyMediaPickerUI/Sources/LegacySuggestionContext.swift
similarity index 97%
rename from submodules/TelegramUI/TelegramUI/LegacySuggestionContext.swift
rename to submodules/LegacyMediaPickerUI/Sources/LegacySuggestionContext.swift
index 7f973a7a44..6adb0fe441 100644
--- a/submodules/TelegramUI/TelegramUI/LegacySuggestionContext.swift
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacySuggestionContext.swift
@@ -3,12 +3,10 @@ import UIKit
import TelegramCore
import Postbox
import SwiftSignalKit
-
-import TelegramUIPrivateModule
import LegacyComponents
import LegacyUI
-func legacySuggestionContext(account: Account, peerId: PeerId) -> TGSuggestionContext {
+public func legacySuggestionContext(account: Account, peerId: PeerId) -> TGSuggestionContext {
let context = TGSuggestionContext()
context.userListSignal = { query in
return SSignal { subscriber in
diff --git a/submodules/TelegramUI/TelegramUI/LegacyWallpaperPicker.swift b/submodules/LegacyMediaPickerUI/Sources/LegacyWallpaperPicker.swift
similarity index 92%
rename from submodules/TelegramUI/TelegramUI/LegacyWallpaperPicker.swift
rename to submodules/LegacyMediaPickerUI/Sources/LegacyWallpaperPicker.swift
index 6c5f704e39..05968635c7 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyWallpaperPicker.swift
+++ b/submodules/LegacyMediaPickerUI/Sources/LegacyWallpaperPicker.swift
@@ -7,7 +7,7 @@ import TelegramPresentationData
import DeviceAccess
import AccountContext
-func legacyWallpaperPicker(context: AccountContext, presentationData: PresentationData) -> Signal<(LegacyComponentsContext) -> TGMediaAssetsController, Void> {
+public func legacyWallpaperPicker(context: AccountContext, presentationData: PresentationData) -> Signal<(LegacyComponentsContext) -> TGMediaAssetsController, Void> {
return Signal { subscriber in
let intent = TGMediaAssetsControllerSetCustomWallpaperIntent
diff --git a/submodules/LocalMediaResources/Info.plist b/submodules/LocalMediaResources/Info.plist
new file mode 100644
index 0000000000..e1fe4cfb7b
--- /dev/null
+++ b/submodules/LocalMediaResources/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ $(CURRENT_PROJECT_VERSION)
+
+
diff --git a/submodules/LocalMediaResources/LocalMediaResources_Xcode.xcodeproj/project.pbxproj b/submodules/LocalMediaResources/LocalMediaResources_Xcode.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000..2bc9e12c6e
--- /dev/null
+++ b/submodules/LocalMediaResources/LocalMediaResources_Xcode.xcodeproj/project.pbxproj
@@ -0,0 +1,555 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 50;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ D03E3FD82304C76E0049C28B /* LocalMediaResources.h in Headers */ = {isa = PBXBuildFile; fileRef = D03E3FD62304C76E0049C28B /* LocalMediaResources.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D03E3FE32304C7CA0049C28B /* MediaResources.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3FE22304C7CA0049C28B /* MediaResources.swift */; };
+ D03E3FE62304C7DA0049C28B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FE52304C7DA0049C28B /* Foundation.framework */; };
+ D03E3FE82304C7DD0049C28B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FE72304C7DD0049C28B /* UIKit.framework */; };
+ D03E3FEA2304C7DF0049C28B /* Postbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FE92304C7DF0049C28B /* Postbox.framework */; };
+ D03E3FEC2304C7E50049C28B /* TelegramCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FEB2304C7E50049C28B /* TelegramCore.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ D03E3FD32304C76E0049C28B /* LocalMediaResources.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = LocalMediaResources.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FD62304C76E0049C28B /* LocalMediaResources.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LocalMediaResources.h; sourceTree = ""; };
+ D03E3FD72304C76E0049C28B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ D03E3FE22304C7CA0049C28B /* MediaResources.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaResources.swift; sourceTree = ""; };
+ D03E3FE52304C7DA0049C28B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ D03E3FE72304C7DD0049C28B /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ D03E3FE92304C7DF0049C28B /* Postbox.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Postbox.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FEB2304C7E50049C28B /* TelegramCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ D03E3FD02304C76E0049C28B /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FEC2304C7E50049C28B /* TelegramCore.framework in Frameworks */,
+ D03E3FEA2304C7DF0049C28B /* Postbox.framework in Frameworks */,
+ D03E3FE82304C7DD0049C28B /* UIKit.framework in Frameworks */,
+ D03E3FE62304C7DA0049C28B /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ D03E3FC92304C76E0049C28B = {
+ isa = PBXGroup;
+ children = (
+ D03E3FD72304C76E0049C28B /* Info.plist */,
+ D03E3FD52304C76E0049C28B /* Sources */,
+ D03E3FD42304C76E0049C28B /* Products */,
+ D03E3FE42304C7D90049C28B /* Frameworks */,
+ );
+ sourceTree = "";
+ };
+ D03E3FD42304C76E0049C28B /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FD32304C76E0049C28B /* LocalMediaResources.framework */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ D03E3FD52304C76E0049C28B /* Sources */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FE22304C7CA0049C28B /* MediaResources.swift */,
+ D03E3FD62304C76E0049C28B /* LocalMediaResources.h */,
+ );
+ path = Sources;
+ sourceTree = "";
+ };
+ D03E3FE42304C7D90049C28B /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FEB2304C7E50049C28B /* TelegramCore.framework */,
+ D03E3FE92304C7DF0049C28B /* Postbox.framework */,
+ D03E3FE72304C7DD0049C28B /* UIKit.framework */,
+ D03E3FE52304C7DA0049C28B /* Foundation.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+ D03E3FCE2304C76E0049C28B /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FD82304C76E0049C28B /* LocalMediaResources.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+ D03E3FD22304C76E0049C28B /* LocalMediaResources */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = D03E3FDB2304C76E0049C28B /* Build configuration list for PBXNativeTarget "LocalMediaResources" */;
+ buildPhases = (
+ D03E3FCE2304C76E0049C28B /* Headers */,
+ D03E3FCF2304C76E0049C28B /* Sources */,
+ D03E3FD02304C76E0049C28B /* Frameworks */,
+ D03E3FD12304C76E0049C28B /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = LocalMediaResources;
+ productName = LocalMediaResources;
+ productReference = D03E3FD32304C76E0049C28B /* LocalMediaResources.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ D03E3FCA2304C76E0049C28B /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ DefaultBuildSystemTypeForWorkspace = Latest;
+ LastUpgradeCheck = 1030;
+ ORGANIZATIONNAME = "Telegram Messenger LLP";
+ TargetAttributes = {
+ D03E3FD22304C76E0049C28B = {
+ CreatedOnToolsVersion = 10.3;
+ LastSwiftMigration = 1030;
+ };
+ };
+ };
+ buildConfigurationList = D03E3FCD2304C76E0049C28B /* Build configuration list for PBXProject "LocalMediaResources_Xcode" */;
+ compatibilityVersion = "Xcode 9.3";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = D03E3FC92304C76E0049C28B;
+ productRefGroup = D03E3FD42304C76E0049C28B /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ D03E3FD22304C76E0049C28B /* LocalMediaResources */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ D03E3FD12304C76E0049C28B /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ D03E3FCF2304C76E0049C28B /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FE32304C7CA0049C28B /* MediaResources.swift in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ D03E3FD92304C76E0049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3FDA2304C76E0049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3FDC2304C76E0049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LocalMediaResources;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3FDD2304C76E0049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LocalMediaResources;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3FDE2304C79E0049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3FDF2304C79E0049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LocalMediaResources;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3FE02304C7A60049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+ D03E3FE12304C7A60049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.LocalMediaResources;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ D03E3FCD2304C76E0049C28B /* Build configuration list for PBXProject "LocalMediaResources_Xcode" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3FD92304C76E0049C28B /* DebugAppStoreLLC */,
+ D03E3FDE2304C79E0049C28B /* DebugHockeyapp */,
+ D03E3FDA2304C76E0049C28B /* ReleaseAppStoreLLC */,
+ D03E3FE02304C7A60049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+ D03E3FDB2304C76E0049C28B /* Build configuration list for PBXNativeTarget "LocalMediaResources" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3FDC2304C76E0049C28B /* DebugAppStoreLLC */,
+ D03E3FDF2304C79E0049C28B /* DebugHockeyapp */,
+ D03E3FDD2304C76E0049C28B /* ReleaseAppStoreLLC */,
+ D03E3FE12304C7A60049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = D03E3FCA2304C76E0049C28B /* Project object */;
+}
diff --git a/submodules/LocalMediaResources/Sources/LocalMediaResources.h b/submodules/LocalMediaResources/Sources/LocalMediaResources.h
new file mode 100644
index 0000000000..e6a64165d1
--- /dev/null
+++ b/submodules/LocalMediaResources/Sources/LocalMediaResources.h
@@ -0,0 +1,19 @@
+//
+// LocalMediaResources.h
+// LocalMediaResources
+//
+// Created by Peter on 8/15/19.
+// Copyright © 2019 Telegram Messenger LLP. All rights reserved.
+//
+
+#import
+
+//! Project version number for LocalMediaResources.
+FOUNDATION_EXPORT double LocalMediaResourcesVersionNumber;
+
+//! Project version string for LocalMediaResources.
+FOUNDATION_EXPORT const unsigned char LocalMediaResourcesVersionString[];
+
+// In this header, you should import all the public headers of your framework using statements like #import
+
+
diff --git a/submodules/TelegramUI/TelegramUI/MediaResources.swift b/submodules/LocalMediaResources/Sources/MediaResources.swift
similarity index 99%
rename from submodules/TelegramUI/TelegramUI/MediaResources.swift
rename to submodules/LocalMediaResources/Sources/MediaResources.swift
index 08e44b85b0..ce75f53326 100644
--- a/submodules/TelegramUI/TelegramUI/MediaResources.swift
+++ b/submodules/LocalMediaResources/Sources/MediaResources.swift
@@ -232,8 +232,8 @@ public struct PhotoLibraryMediaResourceId: MediaResourceId {
}
public class PhotoLibraryMediaResource: TelegramMediaResource {
- let localIdentifier: String
- let uniqueId: Int64
+ public let localIdentifier: String
+ public let uniqueId: Int64
public init(localIdentifier: String, uniqueId: Int64) {
self.localIdentifier = localIdentifier
diff --git a/submodules/MimeTypes/Info.plist b/submodules/MimeTypes/Info.plist
new file mode 100644
index 0000000000..e1fe4cfb7b
--- /dev/null
+++ b/submodules/MimeTypes/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ $(CURRENT_PROJECT_VERSION)
+
+
diff --git a/submodules/MimeTypes/MimeTypes_Xcode.xcodeproj/project.pbxproj b/submodules/MimeTypes/MimeTypes_Xcode.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000..e7bad5eeaa
--- /dev/null
+++ b/submodules/MimeTypes/MimeTypes_Xcode.xcodeproj/project.pbxproj
@@ -0,0 +1,540 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 50;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ D03E3FB42304C6310049C28B /* MimeTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = D03E3FB22304C6300049C28B /* MimeTypes.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D03E3FC02304C67C0049C28B /* TGMimeTypeMap.m in Sources */ = {isa = PBXBuildFile; fileRef = D03E3FBE2304C67C0049C28B /* TGMimeTypeMap.m */; };
+ D03E3FC12304C67C0049C28B /* TGMimeTypeMap.h in Headers */ = {isa = PBXBuildFile; fileRef = D03E3FBF2304C67C0049C28B /* TGMimeTypeMap.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D03E3FC42304C6970049C28B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FC32304C6970049C28B /* Foundation.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ D03E3FAF2304C6300049C28B /* MimeTypes.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MimeTypes.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FB22304C6300049C28B /* MimeTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MimeTypes.h; sourceTree = ""; };
+ D03E3FB32304C6310049C28B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ D03E3FBE2304C67C0049C28B /* TGMimeTypeMap.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TGMimeTypeMap.m; sourceTree = ""; };
+ D03E3FBF2304C67C0049C28B /* TGMimeTypeMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TGMimeTypeMap.h; sourceTree = ""; };
+ D03E3FC32304C6970049C28B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ D03E3FAC2304C6300049C28B /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FC42304C6970049C28B /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ D03E3FA52304C6300049C28B = {
+ isa = PBXGroup;
+ children = (
+ D03E3FB32304C6310049C28B /* Info.plist */,
+ D03E3FB12304C6300049C28B /* Sources */,
+ D03E3FB02304C6300049C28B /* Products */,
+ D03E3FC22304C6970049C28B /* Frameworks */,
+ );
+ sourceTree = "";
+ };
+ D03E3FB02304C6300049C28B /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FAF2304C6300049C28B /* MimeTypes.framework */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ D03E3FB12304C6300049C28B /* Sources */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FBF2304C67C0049C28B /* TGMimeTypeMap.h */,
+ D03E3FBE2304C67C0049C28B /* TGMimeTypeMap.m */,
+ D03E3FB22304C6300049C28B /* MimeTypes.h */,
+ );
+ path = Sources;
+ sourceTree = "";
+ };
+ D03E3FC22304C6970049C28B /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FC32304C6970049C28B /* Foundation.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+ D03E3FAA2304C6300049C28B /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FC12304C67C0049C28B /* TGMimeTypeMap.h in Headers */,
+ D03E3FB42304C6310049C28B /* MimeTypes.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+ D03E3FAE2304C6300049C28B /* MimeTypes */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = D03E3FB72304C6310049C28B /* Build configuration list for PBXNativeTarget "MimeTypes" */;
+ buildPhases = (
+ D03E3FAA2304C6300049C28B /* Headers */,
+ D03E3FAB2304C6300049C28B /* Sources */,
+ D03E3FAC2304C6300049C28B /* Frameworks */,
+ D03E3FAD2304C6300049C28B /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = MimeTypes;
+ productName = MimeTypes;
+ productReference = D03E3FAF2304C6300049C28B /* MimeTypes.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ D03E3FA62304C6300049C28B /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ DefaultBuildSystemTypeForWorkspace = Latest;
+ LastUpgradeCheck = 1030;
+ ORGANIZATIONNAME = "Telegram Messenger LLP";
+ TargetAttributes = {
+ D03E3FAE2304C6300049C28B = {
+ CreatedOnToolsVersion = 10.3;
+ };
+ };
+ };
+ buildConfigurationList = D03E3FA92304C6300049C28B /* Build configuration list for PBXProject "MimeTypes_Xcode" */;
+ compatibilityVersion = "Xcode 9.3";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = D03E3FA52304C6300049C28B;
+ productRefGroup = D03E3FB02304C6300049C28B /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ D03E3FAE2304C6300049C28B /* MimeTypes */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ D03E3FAD2304C6300049C28B /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ D03E3FAB2304C6300049C28B /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FC02304C67C0049C28B /* TGMimeTypeMap.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ D03E3FB52304C6310049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3FB62304C6310049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3FB82304C6310049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.MimeTypes;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3FB92304C6310049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.MimeTypes;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3FBA2304C6520049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3FBB2304C6520049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.MimeTypes;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3FBC2304C65A0049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+ D03E3FBD2304C65A0049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.MimeTypes;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ D03E3FA92304C6300049C28B /* Build configuration list for PBXProject "MimeTypes_Xcode" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3FB52304C6310049C28B /* DebugAppStoreLLC */,
+ D03E3FBA2304C6520049C28B /* DebugHockeyapp */,
+ D03E3FB62304C6310049C28B /* ReleaseAppStoreLLC */,
+ D03E3FBC2304C65A0049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+ D03E3FB72304C6310049C28B /* Build configuration list for PBXNativeTarget "MimeTypes" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3FB82304C6310049C28B /* DebugAppStoreLLC */,
+ D03E3FBB2304C6520049C28B /* DebugHockeyapp */,
+ D03E3FB92304C6310049C28B /* ReleaseAppStoreLLC */,
+ D03E3FBD2304C65A0049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = D03E3FA62304C6300049C28B /* Project object */;
+}
diff --git a/submodules/MimeTypes/Sources/MimeTypes.h b/submodules/MimeTypes/Sources/MimeTypes.h
new file mode 100644
index 0000000000..0384694fcb
--- /dev/null
+++ b/submodules/MimeTypes/Sources/MimeTypes.h
@@ -0,0 +1,11 @@
+#import
+
+//! Project version number for MimeTypes.
+FOUNDATION_EXPORT double MimeTypesVersionNumber;
+
+//! Project version string for MimeTypes.
+FOUNDATION_EXPORT const unsigned char MimeTypesVersionString[];
+
+#import
+
+
diff --git a/submodules/TelegramUI/TelegramUI/TGMimeTypeMap.h b/submodules/MimeTypes/Sources/TGMimeTypeMap.h
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/TGMimeTypeMap.h
rename to submodules/MimeTypes/Sources/TGMimeTypeMap.h
diff --git a/submodules/TelegramUI/TelegramUI/TGMimeTypeMap.m b/submodules/MimeTypes/Sources/TGMimeTypeMap.m
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/TGMimeTypeMap.m
rename to submodules/MimeTypes/Sources/TGMimeTypeMap.m
diff --git a/submodules/TelegramUI/TelegramUI/AuthorizationSequenceSignUpController.swift b/submodules/TelegramUI/TelegramUI/AuthorizationSequenceSignUpController.swift
index f45c538f7d..bb41da13fe 100644
--- a/submodules/TelegramUI/TelegramUI/AuthorizationSequenceSignUpController.swift
+++ b/submodules/TelegramUI/TelegramUI/AuthorizationSequenceSignUpController.swift
@@ -8,6 +8,7 @@ import TelegramPresentationData
import LegacyComponents
import ProgressNavigationButtonNode
import ImageCompression
+import LegacyMediaPickerUI
final class AuthorizationSequenceSignUpController: ViewController {
private var controllerNode: AuthorizationSequenceSignUpControllerNode {
diff --git a/submodules/TelegramUI/TelegramUI/ChannelInfoController.swift b/submodules/TelegramUI/TelegramUI/ChannelInfoController.swift
index 1e0d553f1b..dfaf5eb5d4 100644
--- a/submodules/TelegramUI/TelegramUI/ChannelInfoController.swift
+++ b/submodules/TelegramUI/TelegramUI/ChannelInfoController.swift
@@ -18,6 +18,7 @@ import GalleryUI
import LegacyUI
import ChatListUI
import ItemListAvatarAndNameInfoItem
+import WebSearchUI
private final class ChannelInfoControllerArguments {
let account: Account
diff --git a/submodules/TelegramUI/TelegramUI/ChatController.swift b/submodules/TelegramUI/TelegramUI/ChatController.swift
index 0ee8253e43..b3d1060b3d 100644
--- a/submodules/TelegramUI/TelegramUI/ChatController.swift
+++ b/submodules/TelegramUI/TelegramUI/ChatController.swift
@@ -36,6 +36,8 @@ import LocationUI
import BotPaymentsUI
import DeleteChatPeerActionSheetItem
import HashtagSearchUI
+import LegacyMediaPickerUI
+import WebSearchUI
public enum ChatControllerPeekActions {
case standard
@@ -4812,7 +4814,14 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G
legacyController.enableSizeClassSignal = true
let inputText = strongSelf.presentationInterfaceState.interfaceState.effectiveInputState.inputText
- let controller = legacyAttachmentMenu(context: strongSelf.context, peer: peer, editMediaOptions: editMediaOptions, saveEditedPhotos: settings.storeEditedPhotos, allowGrouping: true, theme: strongSelf.presentationData.theme, strings: strongSelf.presentationData.strings, parentController: legacyController, recentlyUsedInlineBots: strongSelf.recentlyUsedInlineBotsValue, initialCaption: inputText.string, openGallery: {
+ let menuEditMediaOptions = editMediaOptions.flatMap { options -> LegacyAttachmentMenuMediaEditing in
+ var result: LegacyAttachmentMenuMediaEditing = []
+ if options.contains(.imageOrVideo) {
+ result.insert(.imageOrVideo)
+ }
+ return result
+ }
+ let controller = legacyAttachmentMenu(context: strongSelf.context, peer: peer, editMediaOptions: menuEditMediaOptions, saveEditedPhotos: settings.storeEditedPhotos, allowGrouping: true, theme: strongSelf.presentationData.theme, strings: strongSelf.presentationData.strings, parentController: legacyController, recentlyUsedInlineBots: strongSelf.recentlyUsedInlineBotsValue, initialCaption: inputText.string, openGallery: {
self?.presentMediaPicker(fileMode: false, editingMedia: editMediaOptions != nil, completion: { signals, silentPosting in
if !inputText.string.isEmpty {
//strongSelf.clearInputText()
diff --git a/submodules/TelegramUI/TelegramUI/ChatMessageInteractiveMediaNode.swift b/submodules/TelegramUI/TelegramUI/ChatMessageInteractiveMediaNode.swift
index 92a08fded4..1c2aa18e95 100644
--- a/submodules/TelegramUI/TelegramUI/ChatMessageInteractiveMediaNode.swift
+++ b/submodules/TelegramUI/TelegramUI/ChatMessageInteractiveMediaNode.swift
@@ -17,6 +17,7 @@ import TelegramUniversalVideoContent
import TelegramStringFormatting
import GalleryUI
import AnimationUI
+import LocalMediaResources
private struct FetchControls {
let fetch: (Bool) -> Void
diff --git a/submodules/TelegramUI/TelegramUI/ChatPresentationInterfaceState.swift b/submodules/TelegramUI/TelegramUI/ChatPresentationInterfaceState.swift
index 51cfaffc1c..aa3ba14034 100644
--- a/submodules/TelegramUI/TelegramUI/ChatPresentationInterfaceState.swift
+++ b/submodules/TelegramUI/TelegramUI/ChatPresentationInterfaceState.swift
@@ -73,90 +73,6 @@ enum ChatPresentationInputQuery: Hashable, Equatable {
}
}
-enum ChatPresentationInputQueryResult: Equatable {
- case stickers([FoundStickerItem])
- case hashtags([String])
- case mentions([Peer])
- case commands([PeerCommand])
- case emojis([(String, String)], NSRange)
- case contextRequestResult(Peer?, ChatContextResultCollection?)
-
- static func ==(lhs: ChatPresentationInputQueryResult, rhs: ChatPresentationInputQueryResult) -> Bool {
- switch lhs {
- case let .stickers(lhsItems):
- if case let .stickers(rhsItems) = rhs, lhsItems == rhsItems {
- return true
- } else {
- return false
- }
- case let .hashtags(lhsResults):
- if case let .hashtags(rhsResults) = rhs {
- return lhsResults == rhsResults
- } else {
- return false
- }
- case let .mentions(lhsPeers):
- if case let .mentions(rhsPeers) = rhs {
- if lhsPeers.count != rhsPeers.count {
- return false
- } else {
- for i in 0 ..< lhsPeers.count {
- if !lhsPeers[i].isEqual(rhsPeers[i]) {
- return false
- }
- }
- return true
- }
- } else {
- return false
- }
- case let .commands(lhsCommands):
- if case let .commands(rhsCommands) = rhs {
- if lhsCommands != rhsCommands {
- return false
- }
- return true
- } else {
- return false
- }
- case let .emojis(lhsValue, lhsRange):
- if case let .emojis(rhsValue, rhsRange) = rhs {
- if lhsRange != rhsRange {
- return false
- }
- if lhsValue.count != rhsValue.count {
- return false
- }
- for i in 0 ..< lhsValue.count {
- if lhsValue[i] != rhsValue[i] {
- return false
- }
- }
- return true
- } else {
- return false
- }
- case let .contextRequestResult(lhsPeer, lhsCollection):
- if case let .contextRequestResult(rhsPeer, rhsCollection) = rhs {
- if let lhsPeer = lhsPeer, let rhsPeer = rhsPeer {
- if !lhsPeer.isEqual(rhsPeer) {
- return false
- }
- } else if (lhsPeer != nil) != (rhsPeer != nil) {
- return false
- }
-
- if lhsCollection != rhsCollection {
- return false
- }
- return true
- } else {
- return false
- }
- }
- }
-}
-
enum ChatMediaInputMode {
case gif
case other
diff --git a/submodules/TelegramUI/TelegramUI/CreateChannelController.swift b/submodules/TelegramUI/TelegramUI/CreateChannelController.swift
index 6137e54c5e..fa1382600b 100644
--- a/submodules/TelegramUI/TelegramUI/CreateChannelController.swift
+++ b/submodules/TelegramUI/TelegramUI/CreateChannelController.swift
@@ -11,6 +11,7 @@ import AccountContext
import AlertUI
import LegacyUI
import ItemListAvatarAndNameInfoItem
+import WebSearchUI
private struct CreateChannelArguments {
let account: Account
diff --git a/submodules/TelegramUI/TelegramUI/CreateGroupController.swift b/submodules/TelegramUI/TelegramUI/CreateGroupController.swift
index 039267df06..a338505669 100644
--- a/submodules/TelegramUI/TelegramUI/CreateGroupController.swift
+++ b/submodules/TelegramUI/TelegramUI/CreateGroupController.swift
@@ -16,6 +16,7 @@ import LegacyUI
import LocationUI
import ItemListPeerItem
import ItemListAvatarAndNameInfoItem
+import WebSearchUI
public enum CreateGroupMode {
case generic
diff --git a/submodules/TelegramUI/TelegramUI/CustomWallpaperPicker.swift b/submodules/TelegramUI/TelegramUI/CustomWallpaperPicker.swift
index 6a8203e108..c350a554b8 100644
--- a/submodules/TelegramUI/TelegramUI/CustomWallpaperPicker.swift
+++ b/submodules/TelegramUI/TelegramUI/CustomWallpaperPicker.swift
@@ -9,6 +9,7 @@ import TelegramUIPreferences
import MediaResources
import AccountContext
import LegacyUI
+import LegacyMediaPickerUI
func presentCustomWallpaperPicker(context: AccountContext, present: @escaping (ViewController) -> Void) {
let presentationData = context.sharedContext.currentPresentationData.with { $0 }
diff --git a/submodules/TelegramUI/TelegramUI/DeclareEncodables.swift b/submodules/TelegramUI/TelegramUI/DeclareEncodables.swift
index cd74bdc14a..900f768a58 100644
--- a/submodules/TelegramUI/TelegramUI/DeclareEncodables.swift
+++ b/submodules/TelegramUI/TelegramUI/DeclareEncodables.swift
@@ -4,6 +4,8 @@ import TelegramUIPreferences
import TelegramNotices
import InstantPageUI
import AccountContext
+import LocalMediaResources
+import WebSearchUI
private var telegramUIDeclaredEncodables: Void = {
declareEncodable(InAppNotificationSettings.self, f: { InAppNotificationSettings(decoder: $0) })
diff --git a/submodules/TelegramUI/TelegramUI/EditSettingsController.swift b/submodules/TelegramUI/TelegramUI/EditSettingsController.swift
index 3ad3d275c5..c63abdd13b 100644
--- a/submodules/TelegramUI/TelegramUI/EditSettingsController.swift
+++ b/submodules/TelegramUI/TelegramUI/EditSettingsController.swift
@@ -12,6 +12,7 @@ import AccountContext
import GalleryUI
import LegacyUI
import ItemListAvatarAndNameInfoItem
+import WebSearchUI
private struct EditSettingsItemArguments {
let context: AccountContext
diff --git a/submodules/TelegramUI/TelegramUI/FetchVideoMediaResource.swift b/submodules/TelegramUI/TelegramUI/FetchVideoMediaResource.swift
index ac12679939..75f16189fc 100644
--- a/submodules/TelegramUI/TelegramUI/FetchVideoMediaResource.swift
+++ b/submodules/TelegramUI/TelegramUI/FetchVideoMediaResource.swift
@@ -5,6 +5,7 @@ import SwiftSignalKit
import TelegramCore
import LegacyComponents
import FFMpeg
+import LocalMediaResources
private final class AVURLAssetCopyItem: MediaResourceDataFetchCopyLocalItem {
private let url: URL
diff --git a/submodules/TelegramUI/TelegramUI/GifPaneSearchContentNode.swift b/submodules/TelegramUI/TelegramUI/GifPaneSearchContentNode.swift
index d92a6aa5a6..7938ea2828 100644
--- a/submodules/TelegramUI/TelegramUI/GifPaneSearchContentNode.swift
+++ b/submodules/TelegramUI/TelegramUI/GifPaneSearchContentNode.swift
@@ -7,6 +7,7 @@ import Postbox
import TelegramCore
import TelegramPresentationData
import AccountContext
+import WebSearchUI
func paneGifSearchForQuery(account: Account, query: String, updateActivity: ((Bool) -> Void)?) -> Signal<[FileMediaReference]?, NoError> {
let delayRequest = true
diff --git a/submodules/TelegramUI/TelegramUI/GroupInfoController.swift b/submodules/TelegramUI/TelegramUI/GroupInfoController.swift
index 283267db4c..b2c767d92a 100644
--- a/submodules/TelegramUI/TelegramUI/GroupInfoController.swift
+++ b/submodules/TelegramUI/TelegramUI/GroupInfoController.swift
@@ -26,6 +26,7 @@ import ContactListUI
import ChatListUI
import ItemListAvatarAndNameInfoItem
import ItemListPeerActionItem
+import WebSearchUI
private final class GroupInfoArguments {
let context: AccountContext
diff --git a/submodules/TelegramUI/TelegramUI/LegacyCamera.swift b/submodules/TelegramUI/TelegramUI/LegacyCamera.swift
index 36a3f2b5bc..b8af1a9efd 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyCamera.swift
+++ b/submodules/TelegramUI/TelegramUI/LegacyCamera.swift
@@ -8,6 +8,7 @@ import SwiftSignalKit
import AccountContext
import ShareController
import LegacyUI
+import LegacyMediaPickerUI
func presentedLegacyCamera(context: AccountContext, peer: Peer, cameraView: TGAttachmentCameraView?, menuController: TGMenuSheetController?, parentController: ViewController, editingMedia: Bool, saveCapturedPhotos: Bool, mediaGrouping: Bool, initialCaption: String, sendMessagesWithSignals: @escaping ([Any]?) -> Void, recognizedQRCode: @escaping (String) -> Void = { _ in }) {
let presentationData = context.sharedContext.currentPresentationData.with { $0 }
diff --git a/submodules/TelegramUI/TelegramUI/LegacyImageProcessors.h b/submodules/TelegramUI/TelegramUI/LegacyImageProcessors.h
deleted file mode 100644
index 6288d94d56..0000000000
--- a/submodules/TelegramUI/TelegramUI/LegacyImageProcessors.h
+++ /dev/null
@@ -1,13 +0,0 @@
-//
-// LegacyImageProcessors.h
-// TelegramUI
-//
-// Created by Peter on 8/1/17.
-// Copyright © 2017 Telegram. All rights reserved.
-//
-
-#import
-
-@interface LegacyImageProcessors : NSObject
-
-@end
diff --git a/submodules/TelegramUI/TelegramUI/LegacyInstantVideoController.swift b/submodules/TelegramUI/TelegramUI/LegacyInstantVideoController.swift
index 2b85f9d3bf..25008ce036 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyInstantVideoController.swift
+++ b/submodules/TelegramUI/TelegramUI/LegacyInstantVideoController.swift
@@ -10,6 +10,7 @@ import LegacyComponents
import AccountContext
import LegacyUI
import ImageCompression
+import LocalMediaResources
final class InstantVideoControllerRecordingStatus {
let micLevel: Signal
diff --git a/submodules/TelegramUI/TelegramUI/SettingsController.swift b/submodules/TelegramUI/TelegramUI/SettingsController.swift
index fa3a56963b..dc5eabc0b3 100644
--- a/submodules/TelegramUI/TelegramUI/SettingsController.swift
+++ b/submodules/TelegramUI/TelegramUI/SettingsController.swift
@@ -29,6 +29,7 @@ import CallListUI
import ChatListUI
import ItemListAvatarAndNameInfoItem
import ItemListPeerActionItem
+import WebSearchUI
private let maximumNumberOfAccounts = 3
diff --git a/submodules/TelegramUI/TelegramUI/ShareItems.swift b/submodules/TelegramUI/TelegramUI/ShareItems.swift
index 9dc6e3a3c1..c8326dd673 100644
--- a/submodules/TelegramUI/TelegramUI/ShareItems.swift
+++ b/submodules/TelegramUI/TelegramUI/ShareItems.swift
@@ -12,6 +12,7 @@ import TelegramUIPrivateModule
import AccountContext
import LegacyComponents
import Pdf
+import LocalMediaResources
enum UnpreparedShareItemContent {
case contact(DeviceContactExtendedData)
diff --git a/submodules/TelegramUI/TelegramUI/TGItemProviderSignals.m b/submodules/TelegramUI/TelegramUI/TGItemProviderSignals.m
index c3aa6b2d96..3a840d1772 100644
--- a/submodules/TelegramUI/TelegramUI/TGItemProviderSignals.m
+++ b/submodules/TelegramUI/TelegramUI/TGItemProviderSignals.m
@@ -7,7 +7,7 @@
#import
#import
-#import "TGMimeTypeMap.h"
+#import
#import "TGContactModel.h"
diff --git a/submodules/TelegramUI/TelegramUI/TelegramAccountAuxiliaryMethods.swift b/submodules/TelegramUI/TelegramUI/TelegramAccountAuxiliaryMethods.swift
index 91b2367395..c3c08e9415 100644
--- a/submodules/TelegramUI/TelegramUI/TelegramAccountAuxiliaryMethods.swift
+++ b/submodules/TelegramUI/TelegramUI/TelegramAccountAuxiliaryMethods.swift
@@ -5,6 +5,7 @@ import MediaResources
import PassportUI
import OpenInExternalAppUI
import MusicAlbumArtResources
+import LocalMediaResources
public let telegramAccountAuxiliaryMethods = AccountAuxiliaryMethods(updatePeerChatInputState: { interfaceState, inputState -> PeerChatInterfaceState? in
if interfaceState == nil {
diff --git a/submodules/TelegramUI/TelegramUI/TelegramRootController.swift b/submodules/TelegramUI/TelegramUI/TelegramRootController.swift
index 6e66991fa2..eba357651f 100644
--- a/submodules/TelegramUI/TelegramUI/TelegramRootController.swift
+++ b/submodules/TelegramUI/TelegramUI/TelegramRootController.swift
@@ -149,7 +149,7 @@ public final class TelegramRootController: NavigationController {
self.popToRoot(animated: false)
}
- if let index = rootTabController.controllers.index(where: { $0 is ChatListController}) {
+ if let index = rootTabController.controllers.firstIndex(where: { $0 is ChatListController}) {
rootTabController.selectedIndex = index
}
diff --git a/submodules/TelegramUI/TelegramUI/TelegramUIPrivate/module.modulemap b/submodules/TelegramUI/TelegramUI/TelegramUIPrivate/module.modulemap
index 4ebced82c3..594f238933 100644
--- a/submodules/TelegramUI/TelegramUI/TelegramUIPrivate/module.modulemap
+++ b/submodules/TelegramUI/TelegramUI/TelegramUIPrivate/module.modulemap
@@ -4,7 +4,6 @@ module TelegramUIPrivateModule {
header "../SecretChatKeyVisualization.h"
header "../DeviceProximityManager.h"
header "../RaiseToListenActivator.h"
- header "../TGMimeTypeMap.h"
header "../Bridge Audio/TGBridgeAudioDecoder.h"
header "../Bridge Audio/TGBridgeAudioEncoder.h"
header "../TGContactModel.h"
diff --git a/submodules/TelegramUI/TelegramUI/ThemeGridSearchContentNode.swift b/submodules/TelegramUI/TelegramUI/ThemeGridSearchContentNode.swift
index fe215a2d81..490b421d31 100644
--- a/submodules/TelegramUI/TelegramUI/ThemeGridSearchContentNode.swift
+++ b/submodules/TelegramUI/TelegramUI/ThemeGridSearchContentNode.swift
@@ -10,6 +10,7 @@ import MergeLists
import AccountContext
import SearchUI
import ChatListSearchItemHeader
+import WebSearchUI
enum WallpaperSearchColor: CaseIterable {
case blue
diff --git a/submodules/TelegramUI/TelegramUI/WallpaperGalleryItem.swift b/submodules/TelegramUI/TelegramUI/WallpaperGalleryItem.swift
index c5c0cbc0a2..a250b52045 100644
--- a/submodules/TelegramUI/TelegramUI/WallpaperGalleryItem.swift
+++ b/submodules/TelegramUI/TelegramUI/WallpaperGalleryItem.swift
@@ -14,6 +14,7 @@ import AccountContext
import RadialStatusNode
import PhotoResources
import GalleryUI
+import LocalMediaResources
struct WallpaperGalleryItemArguments {
let colorPreview: Bool
diff --git a/submodules/TelegramUI/TelegramUI/WallpaperResources.swift b/submodules/TelegramUI/TelegramUI/WallpaperResources.swift
index cbb8ed63db..61e343e782 100644
--- a/submodules/TelegramUI/TelegramUI/WallpaperResources.swift
+++ b/submodules/TelegramUI/TelegramUI/WallpaperResources.swift
@@ -9,6 +9,7 @@ import MediaResources
import ImageBlur
import TinyThumbnail
import PhotoResources
+import LocalMediaResources
private func wallpaperDatas(account: Account, accountManager: AccountManager, fileReference: FileMediaReference? = nil, representations: [ImageRepresentationWithReference], alwaysShowThumbnailFirst: Bool = false, thumbnail: Bool = false, autoFetchFullSize: Bool = false, synchronousLoad: Bool = false) -> Signal<(Data?, Data?, Bool), NoError> {
if let smallestRepresentation = smallestImageRepresentation(representations.map({ $0.representation })), let largestRepresentation = largestImageRepresentation(representations.map({ $0.representation })), let smallestIndex = representations.index(where: { $0.representation == smallestRepresentation }), let largestIndex = representations.index(where: { $0.representation == largestRepresentation }) {
diff --git a/submodules/TelegramUI/TelegramUI_Xcode.xcodeproj/project.pbxproj b/submodules/TelegramUI/TelegramUI_Xcode.xcodeproj/project.pbxproj
index bcb8d83245..973b113b52 100644
--- a/submodules/TelegramUI/TelegramUI_Xcode.xcodeproj/project.pbxproj
+++ b/submodules/TelegramUI/TelegramUI_Xcode.xcodeproj/project.pbxproj
@@ -49,12 +49,7 @@
0952D1752176DEB500194860 /* NotificationMuteSettingsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0952D1742176DEB500194860 /* NotificationMuteSettingsController.swift */; };
0957DE2322DE28FB001B4D57 /* ThemePreviewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0957DE2222DE28FB001B4D57 /* ThemePreviewController.swift */; };
0957DE2522DE2909001B4D57 /* ThemePreviewControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0957DE2422DE2909001B4D57 /* ThemePreviewControllerNode.swift */; };
- 0962E66121B3512500245FD9 /* WebSearchController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0962E66021B3512500245FD9 /* WebSearchController.swift */; };
- 0962E66321B3513100245FD9 /* WebSearchControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0962E66221B3513100245FD9 /* WebSearchControllerNode.swift */; };
- 0962E66521B3631100245FD9 /* WebSearchNavigationContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0962E66421B3631100245FD9 /* WebSearchNavigationContentNode.swift */; };
0962E67921B67A9800245FD9 /* ChatMessageAnimatedStickerItemNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0962E67821B67A9800245FD9 /* ChatMessageAnimatedStickerItemNode.swift */; };
- 0962E67B21BA00C900245FD9 /* WebSearchInterfaceState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0962E67A21BA00C900245FD9 /* WebSearchInterfaceState.swift */; };
- 0962E67F21BA786A00245FD9 /* WebSearchItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0962E67E21BA786A00245FD9 /* WebSearchItem.swift */; };
09749BC521F0E024008FDDE9 /* StickersChatInputContextPanelItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09749BC421F0E024008FDDE9 /* StickersChatInputContextPanelItem.swift */; };
09749BCD21F23139008FDDE9 /* WallpaperGalleryDecorationNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09749BCC21F23139008FDDE9 /* WallpaperGalleryDecorationNode.swift */; };
09749BCF21F236F2008FDDE9 /* ModernCheckNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09749BCE21F236F2008FDDE9 /* ModernCheckNode.swift */; };
@@ -95,8 +90,6 @@
09DD5D5221ED175300D7007A /* WallpaperColorPickerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DD5D5121ED175300D7007A /* WallpaperColorPickerNode.swift */; };
09DD88E921BAF65E000766BC /* ItemListAddressItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DD88E821BAF65E000766BC /* ItemListAddressItem.swift */; };
09DD88EF21BDDE2B000766BC /* Geocoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DD88EE21BDDE2B000766BC /* Geocoding.swift */; };
- 09DD88F321BF907C000766BC /* WebSearchRecentQueryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DD88F221BF907C000766BC /* WebSearchRecentQueryItem.swift */; };
- 09DD88F521BF9730000766BC /* WebSearchRecentQueries.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DD88F421BF9730000766BC /* WebSearchRecentQueries.swift */; };
09DE2F272269D5730045E975 /* PrivacyIntroController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DE2F262269D5730045E975 /* PrivacyIntroController.swift */; };
09DE2F292269D5E30045E975 /* PrivacyIntroControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09DE2F282269D5E30045E975 /* PrivacyIntroControllerNode.swift */; };
09E2D9EF226F1AFA00EA0AA4 /* Emoji.mapping in Resources */ = {isa = PBXBuildFile; fileRef = 09E2D9ED226F1AF300EA0AA4 /* Emoji.mapping */; };
@@ -120,12 +113,6 @@
09F664CA21EB4F2700AB7E26 /* ThemeGridSearchColorsItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F664C921EB4F2700AB7E26 /* ThemeGridSearchColorsItem.swift */; };
09F664CC21EB552C00AB7E26 /* WallpaperSearchRecentQueries.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F664CB21EB552C00AB7E26 /* WallpaperSearchRecentQueries.swift */; };
09F664D021EBCFB900AB7E26 /* WallpaperCropNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F664CF21EBCFB900AB7E26 /* WallpaperCropNode.swift */; };
- 09F799FA21C3542D00820234 /* LegacyWebSearchGallery.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F799F921C3542D00820234 /* LegacyWebSearchGallery.swift */; };
- 09F799FC21C3FF3000820234 /* WebSearchGalleryController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F799FB21C3FF3000820234 /* WebSearchGalleryController.swift */; };
- 09F79A0121C8116C00820234 /* WebSearchBadgeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F79A0021C8116C00820234 /* WebSearchBadgeNode.swift */; };
- 09F79A0321C8225600820234 /* WebSearchVideoGalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F79A0221C8225600820234 /* WebSearchVideoGalleryItem.swift */; };
- 09F79A0B21C832F400820234 /* WebSearchGalleryFooterContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F79A0A21C832F400820234 /* WebSearchGalleryFooterContentNode.swift */; };
- 09F79A0D21C88E8900820234 /* LegacyWebSearchEditor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F79A0C21C88E8900820234 /* LegacyWebSearchEditor.swift */; };
09F85BA521E7821500D73170 /* ThemeGridSelectionPanelNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F85BA421E7821500D73170 /* ThemeGridSelectionPanelNode.swift */; };
09F85BA721E7DA5F00D73170 /* BlurredImageNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F85BA621E7DA5F00D73170 /* BlurredImageNode.swift */; };
09FFBCD1227B7F9900C33B4B /* anim_archiveswipe.json in Resources */ = {isa = PBXBuildFile; fileRef = 09FFBCCF227B7F9000C33B4B /* anim_archiveswipe.json */; };
@@ -137,8 +124,6 @@
D0068FA821760FA300D1B315 /* StoreDownloadedMedia.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0068FA721760FA300D1B315 /* StoreDownloadedMedia.swift */; };
D007019C2029E8F2006B9E34 /* LegacyICloudFileController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D007019B2029E8F2006B9E34 /* LegacyICloudFileController.swift */; };
D007019E2029EFDD006B9E34 /* ICloudResources.swift in Sources */ = {isa = PBXBuildFile; fileRef = D007019D2029EFDD006B9E34 /* ICloudResources.swift */; };
- D00701A12029F6D0006B9E34 /* TGMimeTypeMap.h in Headers */ = {isa = PBXBuildFile; fileRef = D007019F2029F6D0006B9E34 /* TGMimeTypeMap.h */; };
- D00701A22029F6D0006B9E34 /* TGMimeTypeMap.m in Sources */ = {isa = PBXBuildFile; fileRef = D00701A02029F6D0006B9E34 /* TGMimeTypeMap.m */; };
D008177922B46B7E008A895F /* ShareItems.swift in Sources */ = {isa = PBXBuildFile; fileRef = D008177222B46B7D008A895F /* ShareItems.swift */; };
D008177A22B46B7E008A895F /* TGShareLocationSignals.h in Headers */ = {isa = PBXBuildFile; fileRef = D008177322B46B7E008A895F /* TGShareLocationSignals.h */; };
D008177B22B46B7E008A895F /* TGContactModel.h in Headers */ = {isa = PBXBuildFile; fileRef = D008177422B46B7E008A895F /* TGContactModel.h */; };
@@ -228,6 +213,10 @@
D03E3E8C2304B6E10049C28B /* YuvConversion.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3E8B2304B6E10049C28B /* YuvConversion.framework */; };
D03E3EC82304C0680049C28B /* JoinLinkPreviewUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3EC72304C0680049C28B /* JoinLinkPreviewUI.framework */; };
D03E3F002304C19B0049C28B /* LanguageLinkPreviewUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3EFF2304C19B0049C28B /* LanguageLinkPreviewUI.framework */; };
+ D03E3F582304C3890049C28B /* WebSearchUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F572304C3890049C28B /* WebSearchUI.framework */; };
+ D03E3FA02304C59E0049C28B /* LegacyMediaPickerUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F9F2304C59E0049C28B /* LegacyMediaPickerUI.framework */; };
+ D03E3FC82304C6AB0049C28B /* MimeTypes.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FC72304C6AB0049C28B /* MimeTypes.framework */; };
+ D03E3FF02304C7FA0049C28B /* LocalMediaResources.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FEF2304C7FA0049C28B /* LocalMediaResources.framework */; };
D04203152037162700490EA5 /* MediaInputPaneTrendingItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D04203142037162700490EA5 /* MediaInputPaneTrendingItem.swift */; };
D04281EF200E3D88009DDE36 /* GroupInfoSearchItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D04281EE200E3D88009DDE36 /* GroupInfoSearchItem.swift */; };
D04281F1200E4084009DDE36 /* GroupInfoSearchNavigationContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D04281F0200E4084009DDE36 /* GroupInfoSearchNavigationContentNode.swift */; };
@@ -261,7 +250,6 @@
D06018B522F3659900796784 /* ChatTextFormat.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06018B422F3659900796784 /* ChatTextFormat.swift */; };
D06350AE2229A7F800FA2B32 /* InChatPrefetchManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06350AD2229A7F800FA2B32 /* InChatPrefetchManager.swift */; };
D0642EFC1F3E1E7B00792790 /* ChatHistoryNavigationButtons.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0642EFB1F3E1E7B00792790 /* ChatHistoryNavigationButtons.swift */; };
- D0671F2D2145AB28000A8AE7 /* LegacyAvatarPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0671F2C2145AB28000A8AE7 /* LegacyAvatarPicker.swift */; };
D069F5D0212700B90000565A /* StickerPanePeerSpecificSetupGridItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D069F5CF212700B90000565A /* StickerPanePeerSpecificSetupGridItem.swift */; };
D06BB8821F58994B0084FC30 /* LegacyInstantVideoController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06BB8811F58994B0084FC30 /* LegacyInstantVideoController.swift */; };
D06E0F8E1F79ABFB003CF3DD /* ChatLoadingNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06E0F8D1F79ABFB003CF3DD /* ChatLoadingNode.swift */; };
@@ -282,8 +270,6 @@
D0754D201EEDEBA000884F6E /* ChatMessageGameBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0754D1F1EEDEBA000884F6E /* ChatMessageGameBubbleContentNode.swift */; };
D0754D221EEDF89900884F6E /* ChatMessageInvoiceBubbleContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0754D211EEDF89900884F6E /* ChatMessageInvoiceBubbleContentNode.swift */; };
D077C5C122B59A800097D617 /* ApplicationContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = D077C5C022B59A800097D617 /* ApplicationContext.swift */; };
- D07ABBA5202A14BC003671DE /* LegacyImagePicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D07ABBA4202A14BC003671DE /* LegacyImagePicker.swift */; };
- D07ABBAB202A1BD1003671DE /* LegacyWallpaperPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = D07ABBAA202A1BD1003671DE /* LegacyWallpaperPicker.swift */; };
D07BCBFE1F2B792300ED97AA /* LegacyComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D07BCBFD1F2B792300ED97AA /* LegacyComponents.framework */; };
D07E413D208A494D00FCA8F0 /* ProxyServerActionSheetController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D07E413C208A494D00FCA8F0 /* ProxyServerActionSheetController.swift */; };
D081A9A922EB26AE0069C449 /* PhoneLabelController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D081A9A822EB26AE0069C449 /* PhoneLabelController.swift */; };
@@ -510,14 +496,9 @@
D0E9BAB61F056F4C00F079A4 /* stp_card_visa@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = D0E9BA8E1F056F4C00F079A4 /* stp_card_visa@3x.png */; };
D0E9BAB71F056F4C00F079A4 /* stp_card_visa_template@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D0E9BA8F1F056F4C00F079A4 /* stp_card_visa_template@2x.png */; };
D0E9BAB81F056F4C00F079A4 /* stp_card_visa_template@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = D0E9BA901F056F4C00F079A4 /* stp_card_visa_template@3x.png */; };
- D0EB41F51F30D26A00838FE6 /* LegacySuggestionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0EB41F41F30D26A00838FE6 /* LegacySuggestionContext.swift */; };
- D0EB42001F30ED4F00838FE6 /* LegacyImageProcessors.h in Headers */ = {isa = PBXBuildFile; fileRef = D0EB41FE1F30ED4F00838FE6 /* LegacyImageProcessors.h */; };
- D0EB42011F30ED4F00838FE6 /* LegacyImageProcessors.m in Sources */ = {isa = PBXBuildFile; fileRef = D0EB41FF1F30ED4F00838FE6 /* LegacyImageProcessors.m */; };
D0EB42051F3143AB00838FE6 /* LegacyComponentsResources.bundle in Resources */ = {isa = PBXBuildFile; fileRef = D0EB42041F3143AB00838FE6 /* LegacyComponentsResources.bundle */; };
D0EB5ADF1F798033004E89B6 /* PeerMediaCollectionEmptyNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0EB5ADE1F798033004E89B6 /* PeerMediaCollectionEmptyNode.swift */; };
D0EC55A3210231D600D1992C /* SearchPeerMembers.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0EC55A2210231D600D1992C /* SearchPeerMembers.swift */; };
- D0EC6CBF1EB9F58800EBF1C3 /* LegacyAttachmentMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = D023ED2D1DDB5BEC00BD496D /* LegacyAttachmentMenu.swift */; };
- D0EC6CC01EB9F58800EBF1C3 /* LegacyMediaPickers.swift in Sources */ = {isa = PBXBuildFile; fileRef = D023EBB11DDA800700BD496D /* LegacyMediaPickers.swift */; };
D0EC6CC11EB9F58800EBF1C3 /* LegacyCamera.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00E15251DDBD4E700ACF65C /* LegacyCamera.swift */; };
D0EC6CC51EB9F58800EBF1C3 /* TGDataItem.m in Sources */ = {isa = PBXBuildFile; fileRef = D0D03B221DECB1AD00220C46 /* TGDataItem.m */; };
D0EC6CC71EB9F58800EBF1C3 /* PeerNotificationSoundStrings.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08775081E3E59DE00A97350 /* PeerNotificationSoundStrings.swift */; };
@@ -548,7 +529,6 @@
D0EC6D251EB9F58800EBF1C3 /* FetchCachedRepresentations.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06879561DB8F22200424BBD /* FetchCachedRepresentations.swift */; };
D0EC6D261EB9F58800EBF1C3 /* TransformOutgoingMessageMedia.swift in Sources */ = {isa = PBXBuildFile; fileRef = D04662801E68BA64006FAFC4 /* TransformOutgoingMessageMedia.swift */; };
D0EC6D271EB9F58800EBF1C3 /* FetchResource.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F3A8B51E83120A00B4C64C /* FetchResource.swift */; };
- D0EC6D281EB9F58800EBF1C3 /* MediaResources.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F3A8B71E83125C00B4C64C /* MediaResources.swift */; };
D0EC6D291EB9F58800EBF1C3 /* FetchVideoMediaResource.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0F3A8B91E831E6300B4C64C /* FetchVideoMediaResource.swift */; };
D0EC6D2A1EB9F58800EBF1C3 /* FetchPhotoLibraryImageResource.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06E4AC31E84806300627D1D /* FetchPhotoLibraryImageResource.swift */; };
D0EC6D2B1EB9F58800EBF1C3 /* FileMediaResourceStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0177B831DFB095000A5083A /* FileMediaResourceStatus.swift */; };
@@ -827,12 +807,7 @@
0952D1742176DEB500194860 /* NotificationMuteSettingsController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationMuteSettingsController.swift; sourceTree = ""; };
0957DE2222DE28FB001B4D57 /* ThemePreviewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemePreviewController.swift; sourceTree = ""; };
0957DE2422DE2909001B4D57 /* ThemePreviewControllerNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemePreviewControllerNode.swift; sourceTree = ""; };
- 0962E66021B3512500245FD9 /* WebSearchController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchController.swift; sourceTree = ""; };
- 0962E66221B3513100245FD9 /* WebSearchControllerNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchControllerNode.swift; sourceTree = ""; };
- 0962E66421B3631100245FD9 /* WebSearchNavigationContentNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchNavigationContentNode.swift; sourceTree = ""; };
0962E67821B67A9800245FD9 /* ChatMessageAnimatedStickerItemNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatMessageAnimatedStickerItemNode.swift; sourceTree = ""; };
- 0962E67A21BA00C900245FD9 /* WebSearchInterfaceState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchInterfaceState.swift; sourceTree = ""; };
- 0962E67E21BA786A00245FD9 /* WebSearchItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchItem.swift; sourceTree = ""; };
09749BC421F0E024008FDDE9 /* StickersChatInputContextPanelItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StickersChatInputContextPanelItem.swift; sourceTree = ""; };
09749BCC21F23139008FDDE9 /* WallpaperGalleryDecorationNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WallpaperGalleryDecorationNode.swift; sourceTree = ""; };
09749BCE21F236F2008FDDE9 /* ModernCheckNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ModernCheckNode.swift; sourceTree = ""; };
@@ -873,8 +848,6 @@
09DD5D5121ED175300D7007A /* WallpaperColorPickerNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WallpaperColorPickerNode.swift; sourceTree = ""; };
09DD88E821BAF65E000766BC /* ItemListAddressItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ItemListAddressItem.swift; sourceTree = ""; };
09DD88EE21BDDE2B000766BC /* Geocoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Geocoding.swift; sourceTree = ""; };
- 09DD88F221BF907C000766BC /* WebSearchRecentQueryItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchRecentQueryItem.swift; sourceTree = ""; };
- 09DD88F421BF9730000766BC /* WebSearchRecentQueries.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchRecentQueries.swift; sourceTree = ""; };
09DE2F262269D5730045E975 /* PrivacyIntroController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrivacyIntroController.swift; sourceTree = ""; };
09DE2F282269D5E30045E975 /* PrivacyIntroControllerNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PrivacyIntroControllerNode.swift; sourceTree = ""; };
09E2D9ED226F1AF300EA0AA4 /* Emoji.mapping */ = {isa = PBXFileReference; lastKnownFileType = file; name = Emoji.mapping; path = TelegramUI/Resources/Emoji.mapping; sourceTree = ""; };
@@ -898,12 +871,6 @@
09F664C921EB4F2700AB7E26 /* ThemeGridSearchColorsItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemeGridSearchColorsItem.swift; sourceTree = ""; };
09F664CB21EB552C00AB7E26 /* WallpaperSearchRecentQueries.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WallpaperSearchRecentQueries.swift; sourceTree = ""; };
09F664CF21EBCFB900AB7E26 /* WallpaperCropNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WallpaperCropNode.swift; sourceTree = ""; };
- 09F799F921C3542D00820234 /* LegacyWebSearchGallery.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyWebSearchGallery.swift; sourceTree = ""; };
- 09F799FB21C3FF3000820234 /* WebSearchGalleryController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchGalleryController.swift; sourceTree = ""; };
- 09F79A0021C8116C00820234 /* WebSearchBadgeNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchBadgeNode.swift; sourceTree = ""; };
- 09F79A0221C8225600820234 /* WebSearchVideoGalleryItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchVideoGalleryItem.swift; sourceTree = ""; };
- 09F79A0A21C832F400820234 /* WebSearchGalleryFooterContentNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebSearchGalleryFooterContentNode.swift; sourceTree = ""; };
- 09F79A0C21C88E8900820234 /* LegacyWebSearchEditor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyWebSearchEditor.swift; sourceTree = ""; };
09F85BA421E7821500D73170 /* ThemeGridSelectionPanelNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemeGridSelectionPanelNode.swift; sourceTree = ""; };
09F85BA621E7DA5F00D73170 /* BlurredImageNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BlurredImageNode.swift; sourceTree = ""; };
09FFBCCF227B7F9000C33B4B /* anim_archiveswipe.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = anim_archiveswipe.json; sourceTree = ""; };
@@ -921,8 +888,6 @@
D0068FA721760FA300D1B315 /* StoreDownloadedMedia.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreDownloadedMedia.swift; sourceTree = ""; };
D007019B2029E8F2006B9E34 /* LegacyICloudFileController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyICloudFileController.swift; sourceTree = ""; };
D007019D2029EFDD006B9E34 /* ICloudResources.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ICloudResources.swift; sourceTree = ""; };
- D007019F2029F6D0006B9E34 /* TGMimeTypeMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TGMimeTypeMap.h; sourceTree = ""; };
- D00701A02029F6D0006B9E34 /* TGMimeTypeMap.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TGMimeTypeMap.m; sourceTree = ""; };
D008177222B46B7D008A895F /* ShareItems.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShareItems.swift; sourceTree = ""; };
D008177322B46B7E008A895F /* TGShareLocationSignals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TGShareLocationSignals.h; sourceTree = ""; };
D008177422B46B7E008A895F /* TGContactModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TGContactModel.h; sourceTree = ""; };
@@ -1016,8 +981,6 @@
D02383781DDF1A4D004018B6 /* ChatRequestInProgressTitlePanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatRequestInProgressTitlePanelNode.swift; sourceTree = ""; };
D023837D1DDF50FD004018B6 /* ChatToastAlertPanelNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatToastAlertPanelNode.swift; sourceTree = ""; };
D02383831DDFA22C004018B6 /* ListMessageHoleItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageHoleItem.swift; sourceTree = ""; };
- D023EBB11DDA800700BD496D /* LegacyMediaPickers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyMediaPickers.swift; sourceTree = ""; };
- D023ED2D1DDB5BEC00BD496D /* LegacyAttachmentMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyAttachmentMenu.swift; sourceTree = ""; };
D025402222E1C92D00AC0195 /* ChatSlowmodeItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatSlowmodeItem.swift; sourceTree = ""; };
D025402422E1E00100AC0195 /* ChatSlowmodeHintController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatSlowmodeHintController.swift; sourceTree = ""; };
D025402622E1F23000AC0195 /* ChatSendButtonRadialStatusNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatSendButtonRadialStatusNode.swift; sourceTree = ""; };
@@ -1060,6 +1023,10 @@
D03E3E8B2304B6E10049C28B /* YuvConversion.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = YuvConversion.framework; sourceTree = BUILT_PRODUCTS_DIR; };
D03E3EC72304C0680049C28B /* JoinLinkPreviewUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = JoinLinkPreviewUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
D03E3EFF2304C19B0049C28B /* LanguageLinkPreviewUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LanguageLinkPreviewUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F572304C3890049C28B /* WebSearchUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = WebSearchUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F9F2304C59E0049C28B /* LegacyMediaPickerUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LegacyMediaPickerUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FC72304C6AB0049C28B /* MimeTypes.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = MimeTypes.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FEF2304C7FA0049C28B /* LocalMediaResources.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LocalMediaResources.framework; sourceTree = BUILT_PRODUCTS_DIR; };
D03E5E081E55C49C0029569A /* DebugAccountsController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DebugAccountsController.swift; sourceTree = ""; };
D03E5E0E1E55F8B90029569A /* ChannelVisibilityController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChannelVisibilityController.swift; sourceTree = ""; };
D04203142037162700490EA5 /* MediaInputPaneTrendingItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaInputPaneTrendingItem.swift; sourceTree = ""; };
@@ -1134,7 +1101,6 @@
D0613FD41E6064D200202CDB /* ConvertToSupergroupController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConvertToSupergroupController.swift; sourceTree = ""; };
D06350AD2229A7F800FA2B32 /* InChatPrefetchManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InChatPrefetchManager.swift; sourceTree = ""; };
D0642EFB1F3E1E7B00792790 /* ChatHistoryNavigationButtons.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ChatHistoryNavigationButtons.swift; sourceTree = ""; };
- D0671F2C2145AB28000A8AE7 /* LegacyAvatarPicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyAvatarPicker.swift; sourceTree = ""; };
D06879561DB8F22200424BBD /* FetchCachedRepresentations.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FetchCachedRepresentations.swift; sourceTree = ""; };
D069F5CF212700B90000565A /* StickerPanePeerSpecificSetupGridItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StickerPanePeerSpecificSetupGridItem.swift; sourceTree = ""; };
D06BB8811F58994B0084FC30 /* LegacyInstantVideoController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyInstantVideoController.swift; sourceTree = ""; };
@@ -1167,8 +1133,6 @@
D07827C61E01CD5900071108 /* VerticalListContextResultsChatInputPanelButtonItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = VerticalListContextResultsChatInputPanelButtonItem.swift; sourceTree = ""; };
D07A7DA21D957671005BCD27 /* ListMessageSnippetItemNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageSnippetItemNode.swift; sourceTree = ""; };
D07A7DA41D95783C005BCD27 /* ListMessageNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ListMessageNode.swift; sourceTree = ""; };
- D07ABBA4202A14BC003671DE /* LegacyImagePicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyImagePicker.swift; sourceTree = ""; };
- D07ABBAA202A1BD1003671DE /* LegacyWallpaperPicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LegacyWallpaperPicker.swift; sourceTree = ""; };
D07BCBFD1F2B792300ED97AA /* LegacyComponents.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LegacyComponents.framework; path = "../LegacyComponents/build/Debug-iphoneos/LegacyComponents.framework"; sourceTree = ""; };
D07CFF731DCA207200761F81 /* PeerSelectionController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerSelectionController.swift; sourceTree = ""; };
D07CFF751DCA224100761F81 /* PeerSelectionControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PeerSelectionControllerNode.swift; sourceTree = ""; };
@@ -1510,9 +1474,6 @@
D0E9BA8E1F056F4C00F079A4 /* stp_card_visa@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "stp_card_visa@3x.png"; sourceTree = ""; };
D0E9BA8F1F056F4C00F079A4 /* stp_card_visa_template@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "stp_card_visa_template@2x.png"; sourceTree = ""; };
D0E9BA901F056F4C00F079A4 /* stp_card_visa_template@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "stp_card_visa_template@3x.png"; sourceTree = ""; };
- D0EB41F41F30D26A00838FE6 /* LegacySuggestionContext.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacySuggestionContext.swift; sourceTree = ""; };
- D0EB41FE1F30ED4F00838FE6 /* LegacyImageProcessors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LegacyImageProcessors.h; sourceTree = ""; };
- D0EB41FF1F30ED4F00838FE6 /* LegacyImageProcessors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LegacyImageProcessors.m; sourceTree = ""; };
D0EB42041F3143AB00838FE6 /* LegacyComponentsResources.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; name = LegacyComponentsResources.bundle; path = ../LegacyComponents/LegacyComponents/Resources/LegacyComponentsResources.bundle; sourceTree = ""; };
D0EB5ADE1F798033004E89B6 /* PeerMediaCollectionEmptyNode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PeerMediaCollectionEmptyNode.swift; sourceTree = ""; };
D0EC55A2210231D600D1992C /* SearchPeerMembers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchPeerMembers.swift; sourceTree = ""; };
@@ -1535,7 +1496,6 @@
D0F19F6320E5A15B00EEC860 /* ChatMediaInputPeerSpecificItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatMediaInputPeerSpecificItem.swift; sourceTree = ""; };
D0F3A8AA1E82D83E00B4C64C /* TelegramAccountAuxiliaryMethods.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TelegramAccountAuxiliaryMethods.swift; sourceTree = ""; };
D0F3A8B51E83120A00B4C64C /* FetchResource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FetchResource.swift; sourceTree = ""; };
- D0F3A8B71E83125C00B4C64C /* MediaResources.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MediaResources.swift; sourceTree = ""; };
D0F3A8B91E831E6300B4C64C /* FetchVideoMediaResource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FetchVideoMediaResource.swift; sourceTree = ""; };
D0F4B019211073C500912B92 /* DeviceContactInfoController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeviceContactInfoController.swift; sourceTree = ""; };
D0F4B0212110972300912B92 /* ContactInfoStrings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContactInfoStrings.swift; sourceTree = ""; };
@@ -1606,6 +1566,10 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ D03E3FF02304C7FA0049C28B /* LocalMediaResources.framework in Frameworks */,
+ D03E3FC82304C6AB0049C28B /* MimeTypes.framework in Frameworks */,
+ D03E3FA02304C59E0049C28B /* LegacyMediaPickerUI.framework in Frameworks */,
+ D03E3F582304C3890049C28B /* WebSearchUI.framework in Frameworks */,
D03E3F002304C19B0049C28B /* LanguageLinkPreviewUI.framework in Frameworks */,
D03E3EC82304C0680049C28B /* JoinLinkPreviewUI.framework in Frameworks */,
D03E3E8C2304B6E10049C28B /* YuvConversion.framework in Frameworks */,
@@ -1800,23 +1764,6 @@
path = TelegramUI/Resources/Animations;
sourceTree = "";
};
- 0962E65F21B3510800245FD9 /* Web Search */ = {
- isa = PBXGroup;
- children = (
- 0962E66021B3512500245FD9 /* WebSearchController.swift */,
- 0962E66221B3513100245FD9 /* WebSearchControllerNode.swift */,
- 0962E66421B3631100245FD9 /* WebSearchNavigationContentNode.swift */,
- 0962E67A21BA00C900245FD9 /* WebSearchInterfaceState.swift */,
- 0962E67E21BA786A00245FD9 /* WebSearchItem.swift */,
- 09DD88F221BF907C000766BC /* WebSearchRecentQueryItem.swift */,
- 09DD88F421BF9730000766BC /* WebSearchRecentQueries.swift */,
- 09F799FB21C3FF3000820234 /* WebSearchGalleryController.swift */,
- 09F79A0021C8116C00820234 /* WebSearchBadgeNode.swift */,
- 09F79A0A21C832F400820234 /* WebSearchGalleryFooterContentNode.swift */,
- );
- name = "Web Search";
- sourceTree = "";
- };
0979787F21065EAA0077D77F /* Web Embed */ = {
isa = PBXGroup;
children = (
@@ -2336,22 +2283,12 @@
isa = PBXGroup;
children = (
D0AE2FDB22B1D3610058D3BC /* Bridge Audio */,
- D023ED2D1DDB5BEC00BD496D /* LegacyAttachmentMenu.swift */,
- D023EBB11DDA800700BD496D /* LegacyMediaPickers.swift */,
- D0671F2C2145AB28000A8AE7 /* LegacyAvatarPicker.swift */,
D00E15251DDBD4E700ACF65C /* LegacyCamera.swift */,
D06BB8811F58994B0084FC30 /* LegacyInstantVideoController.swift */,
- D0EB41F41F30D26A00838FE6 /* LegacySuggestionContext.swift */,
D0D03B211DECB1AD00220C46 /* TGDataItem.h */,
D0D03B221DECB1AD00220C46 /* TGDataItem.m */,
- D0EB41FE1F30ED4F00838FE6 /* LegacyImageProcessors.h */,
- D0EB41FF1F30ED4F00838FE6 /* LegacyImageProcessors.m */,
D007019B2029E8F2006B9E34 /* LegacyICloudFileController.swift */,
- D07ABBA4202A14BC003671DE /* LegacyImagePicker.swift */,
- D07ABBAA202A1BD1003671DE /* LegacyWallpaperPicker.swift */,
D0380DAC204ED434000414AB /* LegacyLiveUploadInterface.swift */,
- 09F799F921C3542D00820234 /* LegacyWebSearchGallery.swift */,
- 09F79A0C21C88E8900820234 /* LegacyWebSearchEditor.swift */,
D0B21B1E22156D92003F741D /* LegacyCache.swift */,
);
name = "Legacy Components";
@@ -2387,6 +2324,10 @@
D08D45281D5E340200A7428A /* Frameworks */ = {
isa = PBXGroup;
children = (
+ D03E3FEF2304C7FA0049C28B /* LocalMediaResources.framework */,
+ D03E3FC72304C6AB0049C28B /* MimeTypes.framework */,
+ D03E3F9F2304C59E0049C28B /* LegacyMediaPickerUI.framework */,
+ D03E3F572304C3890049C28B /* WebSearchUI.framework */,
D03E3EFF2304C19B0049C28B /* LanguageLinkPreviewUI.framework */,
D03E3EC72304C0680049C28B /* JoinLinkPreviewUI.framework */,
D03E3E8B2304B6E10049C28B /* YuvConversion.framework */,
@@ -3251,7 +3192,6 @@
D0EEE99F2165583B001292A6 /* Document */,
D07827CC1E03F32C00071108 /* Instant Page */,
D020A9D81FEAE611008C66F7 /* Player */,
- 0962E65F21B3510800245FD9 /* Web Search */,
);
name = Media;
sourceTree = "";
@@ -3269,7 +3209,6 @@
isa = PBXGroup;
children = (
D0575AFB1EA104A6006F2541 /* PeerAvatarImageGalleryItem.swift */,
- 09F79A0221C8225600820234 /* WebSearchVideoGalleryItem.swift */,
);
name = Items;
sourceTree = "";
@@ -3315,8 +3254,6 @@
D0F69E7E1D6B8C500046BCD6 /* Supporting Files */ = {
isa = PBXGroup;
children = (
- D007019F2029F6D0006B9E34 /* TGMimeTypeMap.h */,
- D00701A02029F6D0006B9E34 /* TGMimeTypeMap.m */,
D0F69E831D6B8C850046BCD6 /* FrameworkBundle.swift */,
D00C7CF51E37BF680080C3D5 /* SecretChatKeyVisualization.h */,
D00C7CF61E37BF680080C3D5 /* SecretChatKeyVisualization.m */,
@@ -3360,7 +3297,6 @@
D06879561DB8F22200424BBD /* FetchCachedRepresentations.swift */,
D04662801E68BA64006FAFC4 /* TransformOutgoingMessageMedia.swift */,
D0F3A8B51E83120A00B4C64C /* FetchResource.swift */,
- D0F3A8B71E83125C00B4C64C /* MediaResources.swift */,
D0F3A8B91E831E6300B4C64C /* FetchVideoMediaResource.swift */,
D06E4AC31E84806300627D1D /* FetchPhotoLibraryImageResource.swift */,
D007019D2029EFDD006B9E34 /* ICloudResources.swift */,
@@ -3469,9 +3405,7 @@
D00817DA22B47A14008A895F /* TGPresentationAutoNightPreferences.h in Headers */,
D00817E022B47A14008A895F /* UIImage+ImageEffects.h in Headers */,
D08803C51F6064CF00DD7951 /* TelegramUI.h in Headers */,
- D0EB42001F30ED4F00838FE6 /* LegacyImageProcessors.h in Headers */,
D008177B22B46B7E008A895F /* TGContactModel.h in Headers */,
- D00701A12029F6D0006B9E34 /* TGMimeTypeMap.h in Headers */,
D0208AD91FA34017001F0D5F /* DeviceProximityManager.h in Headers */,
D0AE303722B1D3620058D3BC /* TGBridgeAudioEncoder.h in Headers */,
D00817CD22B47A14008A895F /* TGAutoDownloadPreferences.h in Headers */,
@@ -3673,20 +3607,16 @@
D04281F6200E5AC2009DDE36 /* ChatRecentActionsControllerNode.swift in Sources */,
09DD5D5221ED175300D7007A /* WallpaperColorPickerNode.swift in Sources */,
D0B2F76820528E3D00D3BFB9 /* UserInfoEditingPhoneActionItem.swift in Sources */,
- 09F79A0321C8225600820234 /* WebSearchVideoGalleryItem.swift in Sources */,
D01848E821A03BDA00B6DEBD /* ChatSearchState.swift in Sources */,
D0208ADC1FA346A4001F0D5F /* RaiseToListen.swift in Sources */,
09D304182173C15700C00567 /* WatchSettingsController.swift in Sources */,
D0C0B5B71EE1DEF1000F4D2C /* ThemeGridControllerItem.swift in Sources */,
- D0EC6CBF1EB9F58800EBF1C3 /* LegacyAttachmentMenu.swift in Sources */,
D0943B001FDAE852001522CC /* ChatFeedNavigationInputPanelNode.swift in Sources */,
D0B37C601F8D286E004252DF /* ThemeSettingsFontSizeItem.swift in Sources */,
- D0EC6CC01EB9F58800EBF1C3 /* LegacyMediaPickers.swift in Sources */,
D0EC6CC11EB9F58800EBF1C3 /* LegacyCamera.swift in Sources */,
D0754D1E1EEDDF6200884F6E /* ChatMessageAttachedContentNode.swift in Sources */,
D0CFBB911FD881A600B65C0D /* AudioRecordningToneData.swift in Sources */,
D050A466229C06460044F11A /* ChannelDiscussionGroupSearchContainerNode.swift in Sources */,
- 09F799FA21C3542D00820234 /* LegacyWebSearchGallery.swift in Sources */,
D0EC6CC51EB9F58800EBF1C3 /* TGDataItem.m in Sources */,
092F36902157AB46001A9F49 /* ItemListCallListItem.swift in Sources */,
D00817D522B47A14008A895F /* ApplicationShortcutItem.swift in Sources */,
@@ -3722,7 +3652,6 @@
D04ECD721FFBF22B00DE9029 /* OpenUrl.swift in Sources */,
D056CD7A1FF3CC2A00880D28 /* ListMessagePlaybackOverlayNode.swift in Sources */,
D0EC6CF91EB9F58800EBF1C3 /* MediaManager.swift in Sources */,
- 0962E66521B3631100245FD9 /* WebSearchNavigationContentNode.swift in Sources */,
D0EB5ADF1F798033004E89B6 /* PeerMediaCollectionEmptyNode.swift in Sources */,
D0EC6CFB1EB9F58800EBF1C3 /* ManagedAudioRecorder.swift in Sources */,
D048B339203C532800038D05 /* ChatMediaInputPane.swift in Sources */,
@@ -3758,14 +3687,12 @@
09CE95042236C6B300A7D2C3 /* CachedInstantPages.swift in Sources */,
D0AB269E21D56A12008F6685 /* ChannelPermissionsController.swift in Sources */,
D0B69C3920EBB397003632C7 /* ChatMessageInteractiveInstantVideoNode.swift in Sources */,
- 09F79A0D21C88E8900820234 /* LegacyWebSearchEditor.swift in Sources */,
D056CD701FF147B000880D28 /* IconButtonNode.swift in Sources */,
D0F760DB222034910074F7E5 /* ChannelStatsController.swift in Sources */,
D0FA08CA2049BEAC00DD23FC /* ChatEmptyNode.swift in Sources */,
09CE95002232729A00A7D2C3 /* StickerPaneSearchContentNode.swift in Sources */,
D00817D122B47A14008A895F /* LegacyDataImport.swift in Sources */,
D053DADC201AAAB100993D32 /* ChatTextInputMenu.swift in Sources */,
- 0962E66321B3513100245FD9 /* WebSearchControllerNode.swift in Sources */,
D0C0B59B1EE019E5000F4D2C /* ChatSearchNavigationContentNode.swift in Sources */,
09F664CC21EB552C00AB7E26 /* WallpaperSearchRecentQueries.swift in Sources */,
D056CD781FF2A6EE00880D28 /* ChatMessageSwipeToReplyNode.swift in Sources */,
@@ -3781,7 +3708,6 @@
D0EC6D261EB9F58800EBF1C3 /* TransformOutgoingMessageMedia.swift in Sources */,
D0EC6D271EB9F58800EBF1C3 /* FetchResource.swift in Sources */,
D09D88731F86D56B00BEB4C9 /* AuthorizationLayout.swift in Sources */,
- D0EC6D281EB9F58800EBF1C3 /* MediaResources.swift in Sources */,
D0EC6D291EB9F58800EBF1C3 /* FetchVideoMediaResource.swift in Sources */,
09EDAD2E221164440012A50B /* AutodownloadSizeLimitItem.swift in Sources */,
D008177E22B46B7E008A895F /* TGItemProviderSignals.m in Sources */,
@@ -3806,7 +3732,6 @@
D0EC6D3A1EB9F58800EBF1C3 /* AudioWaveformNode.swift in Sources */,
D0EC6D3B1EB9F58800EBF1C3 /* EditableTokenListNode.swift in Sources */,
D0E2CE6C222930540084E3DD /* PrefetchManager.swift in Sources */,
- D0EB42011F30ED4F00838FE6 /* LegacyImageProcessors.m in Sources */,
D0CE8CE51F6F354400AA2DB0 /* ChatTextInputAccessoryItem.swift in Sources */,
D097C26820DD0A1D007BB4B8 /* PeerReportController.swift in Sources */,
09F664C621EB400A00AB7E26 /* ThemeGridSearchContentNode.swift in Sources */,
@@ -3833,7 +3758,6 @@
D0EC6D5B1EB9F58800EBF1C3 /* ListMessageNode.swift in Sources */,
D0DE66061F9A51E200EF4AE9 /* GalleryHiddenMediaManager.swift in Sources */,
D0EC6D5C1EB9F58800EBF1C3 /* ListMessageFileItemNode.swift in Sources */,
- D0671F2D2145AB28000A8AE7 /* LegacyAvatarPicker.swift in Sources */,
D0EC6D5D1EB9F58800EBF1C3 /* ListMessageSnippetItemNode.swift in Sources */,
D0EC6D5E1EB9F58800EBF1C3 /* ListMessageHoleItem.swift in Sources */,
D0EC6D5F1EB9F58800EBF1C3 /* GridMessageItem.swift in Sources */,
@@ -3981,7 +3905,6 @@
D0EC6DC31EB9F58900EBF1C3 /* ChatMediaInputStickerGridItem.swift in Sources */,
0947FCB0224055990086741C /* StringHash.swift in Sources */,
D0C0B59F1EE082F5000F4D2C /* ChatSearchInputPanelNode.swift in Sources */,
- 0962E66121B3512500245FD9 /* WebSearchController.swift in Sources */,
D0EC6DC61EB9F58900EBF1C3 /* MultiplexedSoftwareVideoSourceManager.swift in Sources */,
D0EC6DC71EB9F58900EBF1C3 /* SampleBufferPool.swift in Sources */,
0900678F21ED8E0E00530762 /* HexColor.swift in Sources */,
@@ -4000,12 +3923,10 @@
D0EC6DD01EB9F58900EBF1C3 /* HashtagChatInputContextPanelNode.swift in Sources */,
D0EC6DD11EB9F58900EBF1C3 /* HashtagChatInputPanelItem.swift in Sources */,
D0EC6DD21EB9F58900EBF1C3 /* MentionChatInputContextPanelNode.swift in Sources */,
- D00701A22029F6D0006B9E34 /* TGMimeTypeMap.m in Sources */,
D0EC6DD31EB9F58900EBF1C3 /* MentionChatInputPanelItem.swift in Sources */,
D0EC6DD41EB9F58900EBF1C3 /* CommandChatInputContextPanelNode.swift in Sources */,
D0EC6DD51EB9F58900EBF1C3 /* CommandChatInputPanelItem.swift in Sources */,
D0EC6DD61EB9F58900EBF1C3 /* VerticalListContextResultsChatInputContextPanelNode.swift in Sources */,
- 09F799FC21C3FF3000820234 /* WebSearchGalleryController.swift in Sources */,
D0EC6DD71EB9F58900EBF1C3 /* VerticalListContextResultsChatInputPanelItem.swift in Sources */,
D0EC6DD81EB9F58900EBF1C3 /* VerticalListContextResultsChatInputPanelButtonItem.swift in Sources */,
D04281F4200E5AB0009DDE36 /* ChatRecentActionsController.swift in Sources */,
@@ -4018,12 +3939,10 @@
D0EC6DDB1EB9F58900EBF1C3 /* ChatInputPanelNode.swift in Sources */,
D0EC6DDC1EB9F58900EBF1C3 /* ChatTextInputPanelNode.swift in Sources */,
D06350AE2229A7F800FA2B32 /* InChatPrefetchManager.swift in Sources */,
- D0EB41F51F30D26A00838FE6 /* LegacySuggestionContext.swift in Sources */,
D0EC6DDD1EB9F58900EBF1C3 /* ChatTextInputMediaRecordingButton.swift in Sources */,
D0EC6DDE1EB9F58900EBF1C3 /* ChatTextInputAudioRecordingOverlayButton.swift in Sources */,
D0EC6DDF1EB9F58900EBF1C3 /* ChatTextInputAudioRecordingTimeNode.swift in Sources */,
D0EC6DE01EB9F58900EBF1C3 /* ChatTextInputAudioRecordingCancelIndicator.swift in Sources */,
- 0962E67F21BA786A00245FD9 /* WebSearchItem.swift in Sources */,
D081A9A922EB26AE0069C449 /* PhoneLabelController.swift in Sources */,
D0EC6DE11EB9F58900EBF1C3 /* ChatMessageSelectionInputPanelNode.swift in Sources */,
D04281FA200E5CDC009DDE36 /* ChatRecentActionsControllerState.swift in Sources */,
@@ -4069,9 +3988,7 @@
09B4819523028A8A00D5B32B /* ThemeAccentColorControllerNode.swift in Sources */,
D000CABC21F158AD0011B15D /* PrepareSecretThumbnailData.swift in Sources */,
D0208AD61FA33D14001F0D5F /* RaiseToListenActivator.m in Sources */,
- 09DD88F321BF907C000766BC /* WebSearchRecentQueryItem.swift in Sources */,
D04554A421B42982007A6DD9 /* ConfirmPhoneNumberController.swift in Sources */,
- D07ABBA5202A14BC003671DE /* LegacyImagePicker.swift in Sources */,
D0EC6E0E1EB9F58900EBF1C3 /* PeerAvatarImageGalleryItem.swift in Sources */,
D0D4345C1F97CEAA00CC1806 /* ProxyServerSettingsController.swift in Sources */,
D08BDF641FA37BEA009D08E1 /* ChatRecordingPreviewInputPanelNode.swift in Sources */,
@@ -4121,8 +4038,6 @@
D00817DF22B47A14008A895F /* LegacyDataImportSplash.swift in Sources */,
D0B37C5C1F8D22AE004252DF /* ThemeSettingsController.swift in Sources */,
D05D8B412192FC8A0064586F /* LocalizationListItem.swift in Sources */,
- 0962E67B21BA00C900245FD9 /* WebSearchInterfaceState.swift in Sources */,
- 09DD88F521BF9730000766BC /* WebSearchRecentQueries.swift in Sources */,
D0AE303822B1D3620058D3BC /* TGBridgeAudioDecoder.mm in Sources */,
D0EC6E4D1EB9F58900EBF1C3 /* PeerInfoController.swift in Sources */,
D0EC6E4E1EB9F58900EBF1C3 /* GroupInfoController.swift in Sources */,
@@ -4133,7 +4048,6 @@
D0EC6E4F1EB9F58900EBF1C3 /* ChannelVisibilityController.swift in Sources */,
D09250061FE5371D003F693F /* GlobalExperimentalSettings.swift in Sources */,
D025A4231F79344500563950 /* FetchManager.swift in Sources */,
- 09F79A0121C8116C00820234 /* WebSearchBadgeNode.swift in Sources */,
D0CB27CF20C17A4A001ACF93 /* TermsOfServiceController.swift in Sources */,
D00BDA1F1EE5B69200C64C5E /* ChannelAdminController.swift in Sources */,
D09E778F22FA239B00B9CCA7 /* ChatMessageContextControllerContentSource.swift in Sources */,
@@ -4172,7 +4086,6 @@
D0B85C231FF70BF400E795B4 /* AuthorizationSequenceAwaitingAccountResetController.swift in Sources */,
D0EC6E6D1EB9F58900EBF1C3 /* ItemListStickerPackItem.swift in Sources */,
D0EC6E6E1EB9F58900EBF1C3 /* ArchivedStickerPacksController.swift in Sources */,
- 09F79A0B21C832F400820234 /* WebSearchGalleryFooterContentNode.swift in Sources */,
D0C0B5B11EE1C421000F4D2C /* ChatDateSelectionSheet.swift in Sources */,
D0EC6E731EB9F58900EBF1C3 /* WallpaperGalleryToolbarNode.swift in Sources */,
D025A4261F79428E00563950 /* FetchManagerLocation.swift in Sources */,
@@ -4183,7 +4096,6 @@
D0EC6E771EB9F58900EBF1C3 /* NotificationsAndSounds.swift in Sources */,
D0EC6E781EB9F58900EBF1C3 /* NotificationSoundSelection.swift in Sources */,
D0EC6E7A1EB9F58900EBF1C3 /* DebugController.swift in Sources */,
- D07ABBAB202A1BD1003671DE /* LegacyWallpaperPicker.swift in Sources */,
09E2D9F1226F214000EA0AA4 /* EmojiResources.swift in Sources */,
D0EC6E7B1EB9F58900EBF1C3 /* DebugAccountsController.swift in Sources */,
D0EC6E7C1EB9F58900EBF1C3 /* UsernameSetupController.swift in Sources */,
diff --git a/submodules/WebSearchUI/Info.plist b/submodules/WebSearchUI/Info.plist
new file mode 100644
index 0000000000..e1fe4cfb7b
--- /dev/null
+++ b/submodules/WebSearchUI/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ $(CURRENT_PROJECT_VERSION)
+
+
diff --git a/submodules/WebSearchUI/Sources/FrameworkBundle.swift b/submodules/WebSearchUI/Sources/FrameworkBundle.swift
new file mode 100644
index 0000000000..8ca13d7d92
--- /dev/null
+++ b/submodules/WebSearchUI/Sources/FrameworkBundle.swift
@@ -0,0 +1,13 @@
+import Foundation
+import UIKit
+
+private class FrameworkBundleClass: NSObject {
+}
+
+let frameworkBundle: Bundle = Bundle(for: FrameworkBundleClass.self)
+
+extension UIImage {
+ convenience init?(bundleImageName: String) {
+ self.init(named: bundleImageName, in: frameworkBundle, compatibleWith: nil)
+ }
+}
diff --git a/submodules/TelegramUI/TelegramUI/LegacyWebSearchEditor.swift b/submodules/WebSearchUI/Sources/LegacyWebSearchEditor.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/LegacyWebSearchEditor.swift
rename to submodules/WebSearchUI/Sources/LegacyWebSearchEditor.swift
diff --git a/submodules/TelegramUI/TelegramUI/LegacyWebSearchGallery.swift b/submodules/WebSearchUI/Sources/LegacyWebSearchGallery.swift
similarity index 98%
rename from submodules/TelegramUI/TelegramUI/LegacyWebSearchGallery.swift
rename to submodules/WebSearchUI/Sources/LegacyWebSearchGallery.swift
index f74bab466d..db3587dd99 100644
--- a/submodules/TelegramUI/TelegramUI/LegacyWebSearchGallery.swift
+++ b/submodules/WebSearchUI/Sources/LegacyWebSearchGallery.swift
@@ -11,6 +11,7 @@ import TelegramPresentationData
import AccountContext
import PhotoResources
import LegacyUI
+import LegacyMediaPickerUI
class LegacyWebSearchItem: NSObject, TGMediaEditableItem, TGMediaSelectableItem {
var isVideo: Bool {
@@ -392,7 +393,7 @@ func presentLegacyWebSearchGallery(context: AccountContext, peer: Peer?, theme:
present(legacyController, nil)
}
-func legacyEnqueueWebSearchMessages(_ selectionState: TGMediaSelectionContext, _ editingState: TGMediaEditingContext, enqueueChatContextResult: (ChatContextResult) -> Void, enqueueMediaMessages: ([Any]) -> Void)
+public func legacyEnqueueWebSearchMessages(_ selectionState: TGMediaSelectionContext, _ editingState: TGMediaEditingContext, enqueueChatContextResult: (ChatContextResult) -> Void, enqueueMediaMessages: ([Any]) -> Void)
{
var results: [ChatContextResult] = []
for item in selectionState.selectedItems() {
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchBadgeNode.swift b/submodules/WebSearchUI/Sources/WebSearchBadgeNode.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchBadgeNode.swift
rename to submodules/WebSearchUI/Sources/WebSearchBadgeNode.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchController.swift b/submodules/WebSearchUI/Sources/WebSearchController.swift
similarity index 96%
rename from submodules/TelegramUI/TelegramUI/WebSearchController.swift
rename to submodules/WebSearchUI/Sources/WebSearchController.swift
index 32f5ca9b46..db17897404 100644
--- a/submodules/TelegramUI/TelegramUI/WebSearchController.swift
+++ b/submodules/WebSearchUI/Sources/WebSearchController.swift
@@ -9,7 +9,7 @@ import LegacyComponents
import TelegramUIPreferences
import AccountContext
-func requestContextResults(account: Account, botId: PeerId, query: String, peerId: PeerId, offset: String = "", existingResults: ChatContextResultCollection? = nil, limit: Int = 60) -> Signal {
+public func requestContextResults(account: Account, botId: PeerId, query: String, peerId: PeerId, offset: String = "", existingResults: ChatContextResultCollection? = nil, limit: Int = 60) -> Signal {
return requestChatContextResults(account: account, botId: botId, peerId: peerId, query: query, offset: offset)
|> `catch` { error -> Signal in
return .single(nil)
@@ -50,12 +50,12 @@ func requestContextResults(account: Account, botId: PeerId, query: String, peerI
}
}
-enum WebSearchMode {
+public enum WebSearchMode {
case media
case avatar
}
-enum WebSearchControllerMode {
+public enum WebSearchControllerMode {
case media(completion: (ChatContextResultCollection, TGMediaSelectionContext, TGMediaEditingContext, Bool) -> Void)
case avatar(initialQuery: String?, completion: (UIImage) -> Void)
@@ -103,7 +103,7 @@ private func selectionChangedSignal(selectionState: TGMediaSelectionContext) ->
}
}
-final class WebSearchController: ViewController {
+public final class WebSearchController: ViewController {
private var validLayout: ContainerViewLayout?
private let context: AccountContext
@@ -132,7 +132,7 @@ final class WebSearchController: ViewController {
private var navigationContentNode: WebSearchNavigationContentNode?
- init(context: AccountContext, peer: Peer?, configuration: SearchBotsConfiguration, mode: WebSearchControllerMode) {
+ public init(context: AccountContext, peer: Peer?, configuration: SearchBotsConfiguration, mode: WebSearchControllerMode) {
self.context = context
self.mode = mode
self.peer = peer
@@ -261,7 +261,7 @@ final class WebSearchController: ViewController {
self.selectionDisposable?.dispose()
}
- public override func viewDidAppear(_ animated: Bool) {
+ override public func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if let presentationArguments = self.presentationArguments as? ViewControllerPresentationArguments, !self.didPlayPresentationAnimation {
@@ -272,7 +272,7 @@ final class WebSearchController: ViewController {
}
}
- override func viewWillAppear(_ animated: Bool) {
+ override public func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
var select = false
@@ -305,7 +305,7 @@ final class WebSearchController: ViewController {
self.displayNodeDidLoad()
}
- func updateInterfaceState(animated: Bool = true, _ f: (WebSearchInterfaceState) -> WebSearchInterfaceState) {
+ private func updateInterfaceState(animated: Bool = true, _ f: (WebSearchInterfaceState) -> WebSearchInterfaceState) {
let previousInterfaceState = self.interfaceState
let previousTheme = self.interfaceState.presentationData.theme
let previousStrings = self.interfaceState.presentationData.theme
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchControllerNode.swift b/submodules/WebSearchUI/Sources/WebSearchControllerNode.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchControllerNode.swift
rename to submodules/WebSearchUI/Sources/WebSearchControllerNode.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchGalleryController.swift b/submodules/WebSearchUI/Sources/WebSearchGalleryController.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchGalleryController.swift
rename to submodules/WebSearchUI/Sources/WebSearchGalleryController.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchGalleryFooterContentNode.swift b/submodules/WebSearchUI/Sources/WebSearchGalleryFooterContentNode.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchGalleryFooterContentNode.swift
rename to submodules/WebSearchUI/Sources/WebSearchGalleryFooterContentNode.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchInterfaceState.swift b/submodules/WebSearchUI/Sources/WebSearchInterfaceState.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchInterfaceState.swift
rename to submodules/WebSearchUI/Sources/WebSearchInterfaceState.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchItem.swift b/submodules/WebSearchUI/Sources/WebSearchItem.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchItem.swift
rename to submodules/WebSearchUI/Sources/WebSearchItem.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchNavigationContentNode.swift b/submodules/WebSearchUI/Sources/WebSearchNavigationContentNode.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchNavigationContentNode.swift
rename to submodules/WebSearchUI/Sources/WebSearchNavigationContentNode.swift
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchRecentQueries.swift b/submodules/WebSearchUI/Sources/WebSearchRecentQueries.swift
similarity index 97%
rename from submodules/TelegramUI/TelegramUI/WebSearchRecentQueries.swift
rename to submodules/WebSearchUI/Sources/WebSearchRecentQueries.swift
index 4ebcd9a51e..bad36c2911 100644
--- a/submodules/TelegramUI/TelegramUI/WebSearchRecentQueries.swift
+++ b/submodules/WebSearchUI/Sources/WebSearchRecentQueries.swift
@@ -24,7 +24,7 @@ private struct WebSearchRecentQueryItemId {
}
}
-final class RecentWebSearchQueryItem: OrderedItemListEntryContents {
+public final class RecentWebSearchQueryItem: OrderedItemListEntryContents {
init() {
}
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchRecentQueryItem.swift b/submodules/WebSearchUI/Sources/WebSearchRecentQueryItem.swift
similarity index 90%
rename from submodules/TelegramUI/TelegramUI/WebSearchRecentQueryItem.swift
rename to submodules/WebSearchUI/Sources/WebSearchRecentQueryItem.swift
index f505c5615e..0f73c66038 100644
--- a/submodules/TelegramUI/TelegramUI/WebSearchRecentQueryItem.swift
+++ b/submodules/WebSearchUI/Sources/WebSearchRecentQueryItem.swift
@@ -12,7 +12,7 @@ private enum RevealOptionKey: Int32 {
case delete
}
-class WebSearchRecentQueryItem: ListViewItem {
+public class WebSearchRecentQueryItem: ListViewItem {
let theme: PresentationTheme
let strings: PresentationStrings
let account: Account
@@ -22,7 +22,7 @@ class WebSearchRecentQueryItem: ListViewItem {
let header: ListViewItemHeader?
- init(account: Account, theme: PresentationTheme, strings: PresentationStrings, query: String, tapped: @escaping (String) -> Void, deleted: @escaping (String) -> Void, header: ListViewItemHeader) {
+ public init(account: Account, theme: PresentationTheme, strings: PresentationStrings, query: String, tapped: @escaping (String) -> Void, deleted: @escaping (String) -> Void, header: ListViewItemHeader) {
self.theme = theme
self.strings = strings
self.account = account
@@ -32,7 +32,7 @@ class WebSearchRecentQueryItem: ListViewItem {
self.header = header
}
- func nodeConfiguredForParams(async: @escaping (@escaping () -> Void) -> Void, params: ListViewItemLayoutParams, synchronousLoads: Bool, previousItem: ListViewItem?, nextItem: ListViewItem?, completion: @escaping (ListViewItemNode, @escaping () -> (Signal?, (ListViewItemApply) -> Void)) -> Void) {
+ public func nodeConfiguredForParams(async: @escaping (@escaping () -> Void) -> Void, params: ListViewItemLayoutParams, synchronousLoads: Bool, previousItem: ListViewItem?, nextItem: ListViewItem?, completion: @escaping (ListViewItemNode, @escaping () -> (Signal?, (ListViewItemApply) -> Void)) -> Void) {
async {
let node = WebSearchRecentQueryItemNode()
let makeLayout = node.asyncLayout()
@@ -44,7 +44,7 @@ class WebSearchRecentQueryItem: ListViewItem {
}
}
- func updateNode(async: @escaping (@escaping () -> Void) -> Void, node: @escaping () -> ListViewItemNode, params: ListViewItemLayoutParams, previousItem: ListViewItem?, nextItem: ListViewItem?, animation: ListViewItemUpdateAnimation, completion: @escaping (ListViewItemNodeLayout, @escaping (ListViewItemApply) -> Void) -> Void) {
+ public func updateNode(async: @escaping (@escaping () -> Void) -> Void, node: @escaping () -> ListViewItemNode, params: ListViewItemLayoutParams, previousItem: ListViewItem?, nextItem: ListViewItem?, animation: ListViewItemUpdateAnimation, completion: @escaping (ListViewItemNodeLayout, @escaping (ListViewItemApply) -> Void) -> Void) {
Queue.mainQueue().async {
if let nodeValue = node() as? WebSearchRecentQueryItemNode {
let layout = nodeValue.asyncLayout()
@@ -60,11 +60,11 @@ class WebSearchRecentQueryItem: ListViewItem {
}
}
- var selectable: Bool {
+ public var selectable: Bool {
return true
}
- func selected(listView: ListView) {
+ public func selected(listView: ListView) {
listView.clearHighlightAnimated(true)
self.tapped(self.query)
}
diff --git a/submodules/WebSearchUI/Sources/WebSearchUI.h b/submodules/WebSearchUI/Sources/WebSearchUI.h
new file mode 100644
index 0000000000..4c61e7ca82
--- /dev/null
+++ b/submodules/WebSearchUI/Sources/WebSearchUI.h
@@ -0,0 +1,19 @@
+//
+// WebSearchUI.h
+// WebSearchUI
+//
+// Created by Peter on 8/15/19.
+// Copyright © 2019 Telegram Messenger LLP. All rights reserved.
+//
+
+#import
+
+//! Project version number for WebSearchUI.
+FOUNDATION_EXPORT double WebSearchUIVersionNumber;
+
+//! Project version string for WebSearchUI.
+FOUNDATION_EXPORT const unsigned char WebSearchUIVersionString[];
+
+// In this header, you should import all the public headers of your framework using statements like #import
+
+
diff --git a/submodules/TelegramUI/TelegramUI/WebSearchVideoGalleryItem.swift b/submodules/WebSearchUI/Sources/WebSearchVideoGalleryItem.swift
similarity index 100%
rename from submodules/TelegramUI/TelegramUI/WebSearchVideoGalleryItem.swift
rename to submodules/WebSearchUI/Sources/WebSearchVideoGalleryItem.swift
diff --git a/submodules/WebSearchUI/WebSearchUI_Xcode.xcodeproj/project.pbxproj b/submodules/WebSearchUI/WebSearchUI_Xcode.xcodeproj/project.pbxproj
new file mode 100644
index 0000000000..8deb66fd50
--- /dev/null
+++ b/submodules/WebSearchUI/WebSearchUI_Xcode.xcodeproj/project.pbxproj
@@ -0,0 +1,675 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 50;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ D03E3F102304C2530049C28B /* WebSearchUI.h in Headers */ = {isa = PBXBuildFile; fileRef = D03E3F0E2304C2530049C28B /* WebSearchUI.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ D03E3F242304C2E00049C28B /* WebSearchController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F1A2304C2DE0049C28B /* WebSearchController.swift */; };
+ D03E3F252304C2E00049C28B /* WebSearchNavigationContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F1B2304C2DF0049C28B /* WebSearchNavigationContentNode.swift */; };
+ D03E3F262304C2E00049C28B /* WebSearchRecentQueryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F1C2304C2DF0049C28B /* WebSearchRecentQueryItem.swift */; };
+ D03E3F272304C2E00049C28B /* WebSearchGalleryFooterContentNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F1D2304C2DF0049C28B /* WebSearchGalleryFooterContentNode.swift */; };
+ D03E3F282304C2E00049C28B /* WebSearchInterfaceState.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F1E2304C2DF0049C28B /* WebSearchInterfaceState.swift */; };
+ D03E3F292304C2E00049C28B /* WebSearchRecentQueries.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F1F2304C2DF0049C28B /* WebSearchRecentQueries.swift */; };
+ D03E3F2A2304C2E00049C28B /* WebSearchItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F202304C2DF0049C28B /* WebSearchItem.swift */; };
+ D03E3F2B2304C2E00049C28B /* WebSearchControllerNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F212304C2DF0049C28B /* WebSearchControllerNode.swift */; };
+ D03E3F2C2304C2E00049C28B /* WebSearchGalleryController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F222304C2DF0049C28B /* WebSearchGalleryController.swift */; };
+ D03E3F2D2304C2E00049C28B /* WebSearchBadgeNode.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F232304C2DF0049C28B /* WebSearchBadgeNode.swift */; };
+ D03E3F302304C2EF0049C28B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F2F2304C2EF0049C28B /* Foundation.framework */; };
+ D03E3F322304C2F10049C28B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F312304C2F10049C28B /* UIKit.framework */; };
+ D03E3F342304C2F50049C28B /* AsyncDisplayKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F332304C2F50049C28B /* AsyncDisplayKit.framework */; };
+ D03E3F362304C2F90049C28B /* Display.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F352304C2F90049C28B /* Display.framework */; };
+ D03E3F382304C2FE0049C28B /* TelegramPresentationData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F372304C2FE0049C28B /* TelegramPresentationData.framework */; };
+ D03E3F3A2304C3050049C28B /* Postbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F392304C3050049C28B /* Postbox.framework */; };
+ D03E3F3C2304C30B0049C28B /* SwiftSignalKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F3B2304C30B0049C28B /* SwiftSignalKit.framework */; };
+ D03E3F3E2304C3140049C28B /* TelegramCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F3D2304C3140049C28B /* TelegramCore.framework */; };
+ D03E3F402304C31B0049C28B /* LegacyComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F3F2304C31B0049C28B /* LegacyComponents.framework */; };
+ D03E3F422304C31F0049C28B /* TelegramUIPreferences.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F412304C31F0049C28B /* TelegramUIPreferences.framework */; };
+ D03E3F442304C3230049C28B /* AccountContext.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F432304C3230049C28B /* AccountContext.framework */; };
+ D03E3F462304C3350049C28B /* MergeLists.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F452304C3350049C28B /* MergeLists.framework */; };
+ D03E3F482304C33D0049C28B /* GalleryUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F472304C33D0049C28B /* GalleryUI.framework */; };
+ D03E3F4A2304C3440049C28B /* ChatListSearchItemHeader.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F492304C3440049C28B /* ChatListSearchItemHeader.framework */; };
+ D03E3F4C2304C34D0049C28B /* QuickLook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F4B2304C34D0049C28B /* QuickLook.framework */; };
+ D03E3F4E2304C3580049C28B /* TelegramUniversalVideoContent.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F4D2304C3580049C28B /* TelegramUniversalVideoContent.framework */; };
+ D03E3F502304C3660049C28B /* CheckNode.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F4F2304C3660049C28B /* CheckNode.framework */; };
+ D03E3F522304C36B0049C28B /* PhotoResources.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F512304C36B0049C28B /* PhotoResources.framework */; };
+ D03E3F542304C3730049C28B /* SearchBarNode.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F532304C3730049C28B /* SearchBarNode.framework */; };
+ D03E3F562304C37F0049C28B /* ItemListUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3F552304C37F0049C28B /* ItemListUI.framework */; };
+ D03E3F5C2304C3E20049C28B /* WebSearchVideoGalleryItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F592304C3E20049C28B /* WebSearchVideoGalleryItem.swift */; };
+ D03E3F5D2304C3E20049C28B /* LegacyWebSearchEditor.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F5A2304C3E20049C28B /* LegacyWebSearchEditor.swift */; };
+ D03E3F5E2304C3E20049C28B /* LegacyWebSearchGallery.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3F5B2304C3E20049C28B /* LegacyWebSearchGallery.swift */; };
+ D03E3FA22304C5AA0049C28B /* LegacyMediaPickerUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D03E3FA12304C5AA0049C28B /* LegacyMediaPickerUI.framework */; };
+ D03E3FA42304C5D00049C28B /* FrameworkBundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = D03E3FA32304C5D00049C28B /* FrameworkBundle.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ D03E3F0B2304C2530049C28B /* WebSearchUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WebSearchUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F0E2304C2530049C28B /* WebSearchUI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebSearchUI.h; sourceTree = ""; };
+ D03E3F0F2304C2530049C28B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ D03E3F1A2304C2DE0049C28B /* WebSearchController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchController.swift; sourceTree = ""; };
+ D03E3F1B2304C2DF0049C28B /* WebSearchNavigationContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchNavigationContentNode.swift; sourceTree = ""; };
+ D03E3F1C2304C2DF0049C28B /* WebSearchRecentQueryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchRecentQueryItem.swift; sourceTree = ""; };
+ D03E3F1D2304C2DF0049C28B /* WebSearchGalleryFooterContentNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchGalleryFooterContentNode.swift; sourceTree = ""; };
+ D03E3F1E2304C2DF0049C28B /* WebSearchInterfaceState.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchInterfaceState.swift; sourceTree = ""; };
+ D03E3F1F2304C2DF0049C28B /* WebSearchRecentQueries.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchRecentQueries.swift; sourceTree = ""; };
+ D03E3F202304C2DF0049C28B /* WebSearchItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchItem.swift; sourceTree = ""; };
+ D03E3F212304C2DF0049C28B /* WebSearchControllerNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchControllerNode.swift; sourceTree = ""; };
+ D03E3F222304C2DF0049C28B /* WebSearchGalleryController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchGalleryController.swift; sourceTree = ""; };
+ D03E3F232304C2DF0049C28B /* WebSearchBadgeNode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchBadgeNode.swift; sourceTree = ""; };
+ D03E3F2F2304C2EF0049C28B /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ D03E3F312304C2F10049C28B /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
+ D03E3F332304C2F50049C28B /* AsyncDisplayKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = AsyncDisplayKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F352304C2F90049C28B /* Display.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Display.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F372304C2FE0049C28B /* TelegramPresentationData.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramPresentationData.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F392304C3050049C28B /* Postbox.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Postbox.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F3B2304C30B0049C28B /* SwiftSignalKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SwiftSignalKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F3D2304C3140049C28B /* TelegramCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F3F2304C31B0049C28B /* LegacyComponents.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LegacyComponents.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F412304C31F0049C28B /* TelegramUIPreferences.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramUIPreferences.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F432304C3230049C28B /* AccountContext.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = AccountContext.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F452304C3350049C28B /* MergeLists.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = MergeLists.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F472304C33D0049C28B /* GalleryUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = GalleryUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F492304C3440049C28B /* ChatListSearchItemHeader.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = ChatListSearchItemHeader.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F4B2304C34D0049C28B /* QuickLook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickLook.framework; path = System/Library/Frameworks/QuickLook.framework; sourceTree = SDKROOT; };
+ D03E3F4D2304C3580049C28B /* TelegramUniversalVideoContent.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = TelegramUniversalVideoContent.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F4F2304C3660049C28B /* CheckNode.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = CheckNode.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F512304C36B0049C28B /* PhotoResources.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = PhotoResources.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F532304C3730049C28B /* SearchBarNode.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SearchBarNode.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F552304C37F0049C28B /* ItemListUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = ItemListUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3F592304C3E20049C28B /* WebSearchVideoGalleryItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WebSearchVideoGalleryItem.swift; sourceTree = ""; };
+ D03E3F5A2304C3E20049C28B /* LegacyWebSearchEditor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyWebSearchEditor.swift; sourceTree = ""; };
+ D03E3F5B2304C3E20049C28B /* LegacyWebSearchGallery.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LegacyWebSearchGallery.swift; sourceTree = ""; };
+ D03E3FA12304C5AA0049C28B /* LegacyMediaPickerUI.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = LegacyMediaPickerUI.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ D03E3FA32304C5D00049C28B /* FrameworkBundle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FrameworkBundle.swift; sourceTree = ""; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ D03E3F082304C2530049C28B /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3FA22304C5AA0049C28B /* LegacyMediaPickerUI.framework in Frameworks */,
+ D03E3F562304C37F0049C28B /* ItemListUI.framework in Frameworks */,
+ D03E3F542304C3730049C28B /* SearchBarNode.framework in Frameworks */,
+ D03E3F522304C36B0049C28B /* PhotoResources.framework in Frameworks */,
+ D03E3F502304C3660049C28B /* CheckNode.framework in Frameworks */,
+ D03E3F4E2304C3580049C28B /* TelegramUniversalVideoContent.framework in Frameworks */,
+ D03E3F4C2304C34D0049C28B /* QuickLook.framework in Frameworks */,
+ D03E3F4A2304C3440049C28B /* ChatListSearchItemHeader.framework in Frameworks */,
+ D03E3F482304C33D0049C28B /* GalleryUI.framework in Frameworks */,
+ D03E3F462304C3350049C28B /* MergeLists.framework in Frameworks */,
+ D03E3F442304C3230049C28B /* AccountContext.framework in Frameworks */,
+ D03E3F422304C31F0049C28B /* TelegramUIPreferences.framework in Frameworks */,
+ D03E3F402304C31B0049C28B /* LegacyComponents.framework in Frameworks */,
+ D03E3F3E2304C3140049C28B /* TelegramCore.framework in Frameworks */,
+ D03E3F3C2304C30B0049C28B /* SwiftSignalKit.framework in Frameworks */,
+ D03E3F3A2304C3050049C28B /* Postbox.framework in Frameworks */,
+ D03E3F382304C2FE0049C28B /* TelegramPresentationData.framework in Frameworks */,
+ D03E3F362304C2F90049C28B /* Display.framework in Frameworks */,
+ D03E3F342304C2F50049C28B /* AsyncDisplayKit.framework in Frameworks */,
+ D03E3F322304C2F10049C28B /* UIKit.framework in Frameworks */,
+ D03E3F302304C2EF0049C28B /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ D03E3F012304C2530049C28B = {
+ isa = PBXGroup;
+ children = (
+ D03E3F0F2304C2530049C28B /* Info.plist */,
+ D03E3F0D2304C2530049C28B /* Sources */,
+ D03E3F0C2304C2530049C28B /* Products */,
+ D03E3F2E2304C2ED0049C28B /* Frameworks */,
+ );
+ sourceTree = "";
+ };
+ D03E3F0C2304C2530049C28B /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3F0B2304C2530049C28B /* WebSearchUI.framework */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ D03E3F0D2304C2530049C28B /* Sources */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3F5A2304C3E20049C28B /* LegacyWebSearchEditor.swift */,
+ D03E3F5B2304C3E20049C28B /* LegacyWebSearchGallery.swift */,
+ D03E3F592304C3E20049C28B /* WebSearchVideoGalleryItem.swift */,
+ D03E3F232304C2DF0049C28B /* WebSearchBadgeNode.swift */,
+ D03E3F1A2304C2DE0049C28B /* WebSearchController.swift */,
+ D03E3F212304C2DF0049C28B /* WebSearchControllerNode.swift */,
+ D03E3F222304C2DF0049C28B /* WebSearchGalleryController.swift */,
+ D03E3F1D2304C2DF0049C28B /* WebSearchGalleryFooterContentNode.swift */,
+ D03E3F1E2304C2DF0049C28B /* WebSearchInterfaceState.swift */,
+ D03E3F202304C2DF0049C28B /* WebSearchItem.swift */,
+ D03E3F1B2304C2DF0049C28B /* WebSearchNavigationContentNode.swift */,
+ D03E3F1F2304C2DF0049C28B /* WebSearchRecentQueries.swift */,
+ D03E3F1C2304C2DF0049C28B /* WebSearchRecentQueryItem.swift */,
+ D03E3FA32304C5D00049C28B /* FrameworkBundle.swift */,
+ D03E3F0E2304C2530049C28B /* WebSearchUI.h */,
+ );
+ path = Sources;
+ sourceTree = "";
+ };
+ D03E3F2E2304C2ED0049C28B /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ D03E3FA12304C5AA0049C28B /* LegacyMediaPickerUI.framework */,
+ D03E3F552304C37F0049C28B /* ItemListUI.framework */,
+ D03E3F532304C3730049C28B /* SearchBarNode.framework */,
+ D03E3F512304C36B0049C28B /* PhotoResources.framework */,
+ D03E3F4F2304C3660049C28B /* CheckNode.framework */,
+ D03E3F4D2304C3580049C28B /* TelegramUniversalVideoContent.framework */,
+ D03E3F4B2304C34D0049C28B /* QuickLook.framework */,
+ D03E3F492304C3440049C28B /* ChatListSearchItemHeader.framework */,
+ D03E3F472304C33D0049C28B /* GalleryUI.framework */,
+ D03E3F452304C3350049C28B /* MergeLists.framework */,
+ D03E3F432304C3230049C28B /* AccountContext.framework */,
+ D03E3F412304C31F0049C28B /* TelegramUIPreferences.framework */,
+ D03E3F3F2304C31B0049C28B /* LegacyComponents.framework */,
+ D03E3F3D2304C3140049C28B /* TelegramCore.framework */,
+ D03E3F3B2304C30B0049C28B /* SwiftSignalKit.framework */,
+ D03E3F392304C3050049C28B /* Postbox.framework */,
+ D03E3F372304C2FE0049C28B /* TelegramPresentationData.framework */,
+ D03E3F352304C2F90049C28B /* Display.framework */,
+ D03E3F332304C2F50049C28B /* AsyncDisplayKit.framework */,
+ D03E3F312304C2F10049C28B /* UIKit.framework */,
+ D03E3F2F2304C2EF0049C28B /* Foundation.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+ D03E3F062304C2530049C28B /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3F102304C2530049C28B /* WebSearchUI.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+ D03E3F0A2304C2530049C28B /* WebSearchUI */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = D03E3F132304C2530049C28B /* Build configuration list for PBXNativeTarget "WebSearchUI" */;
+ buildPhases = (
+ D03E3F062304C2530049C28B /* Headers */,
+ D03E3F072304C2530049C28B /* Sources */,
+ D03E3F082304C2530049C28B /* Frameworks */,
+ D03E3F092304C2530049C28B /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = WebSearchUI;
+ productName = WebSearchUI;
+ productReference = D03E3F0B2304C2530049C28B /* WebSearchUI.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ D03E3F022304C2530049C28B /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ DefaultBuildSystemTypeForWorkspace = Latest;
+ LastUpgradeCheck = 1030;
+ ORGANIZATIONNAME = "Telegram Messenger LLP";
+ TargetAttributes = {
+ D03E3F0A2304C2530049C28B = {
+ CreatedOnToolsVersion = 10.3;
+ LastSwiftMigration = 1030;
+ };
+ };
+ };
+ buildConfigurationList = D03E3F052304C2530049C28B /* Build configuration list for PBXProject "WebSearchUI_Xcode" */;
+ compatibilityVersion = "Xcode 9.3";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = D03E3F012304C2530049C28B;
+ productRefGroup = D03E3F0C2304C2530049C28B /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ D03E3F0A2304C2530049C28B /* WebSearchUI */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ D03E3F092304C2530049C28B /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ D03E3F072304C2530049C28B /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ D03E3F5C2304C3E20049C28B /* WebSearchVideoGalleryItem.swift in Sources */,
+ D03E3F2D2304C2E00049C28B /* WebSearchBadgeNode.swift in Sources */,
+ D03E3F282304C2E00049C28B /* WebSearchInterfaceState.swift in Sources */,
+ D03E3F252304C2E00049C28B /* WebSearchNavigationContentNode.swift in Sources */,
+ D03E3F292304C2E00049C28B /* WebSearchRecentQueries.swift in Sources */,
+ D03E3F2C2304C2E00049C28B /* WebSearchGalleryController.swift in Sources */,
+ D03E3F5E2304C3E20049C28B /* LegacyWebSearchGallery.swift in Sources */,
+ D03E3F242304C2E00049C28B /* WebSearchController.swift in Sources */,
+ D03E3F2A2304C2E00049C28B /* WebSearchItem.swift in Sources */,
+ D03E3F272304C2E00049C28B /* WebSearchGalleryFooterContentNode.swift in Sources */,
+ D03E3F2B2304C2E00049C28B /* WebSearchControllerNode.swift in Sources */,
+ D03E3F5D2304C3E20049C28B /* LegacyWebSearchEditor.swift in Sources */,
+ D03E3FA42304C5D00049C28B /* FrameworkBundle.swift in Sources */,
+ D03E3F262304C2E00049C28B /* WebSearchRecentQueryItem.swift in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ D03E3F112304C2530049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3F122304C2530049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3F142304C2530049C28B /* DebugAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.WebSearchUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugAppStoreLLC;
+ };
+ D03E3F152304C2530049C28B /* ReleaseAppStoreLLC */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.WebSearchUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseAppStoreLLC;
+ };
+ D03E3F162304C27F0049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "DEBUG=1",
+ "$(inherited)",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
+ MTL_FAST_MATH = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3F172304C27F0049C28B /* DebugHockeyapp */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.WebSearchUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = DebugHockeyapp;
+ };
+ D03E3F182304C2890049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_ENABLE_OBJC_WEAK = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ CODE_SIGN_IDENTITY = "iPhone Developer";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ MTL_FAST_MATH = YES;
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_OPTIMIZATION_LEVEL = "-O";
+ VALIDATE_PRODUCT = YES;
+ VERSIONING_SYSTEM = "apple-generic";
+ VERSION_INFO_PREFIX = "";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+ D03E3F192304C2890049C28B /* ReleaseHockeyappInternal */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ CLANG_ENABLE_MODULES = YES;
+ CODE_SIGN_IDENTITY = "";
+ CODE_SIGN_STYLE = Manual;
+ DEFINES_MODULE = YES;
+ DEVELOPMENT_TEAM = "";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ "@loader_path/Frameworks",
+ );
+ MACH_O_TYPE = staticlib;
+ PRODUCT_BUNDLE_IDENTIFIER = org.telegram.WebSearchUI;
+ PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
+ PROVISIONING_PROFILE_SPECIFIER = "";
+ SKIP_INSTALL = YES;
+ SWIFT_VERSION = 5.0;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ };
+ name = ReleaseHockeyappInternal;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ D03E3F052304C2530049C28B /* Build configuration list for PBXProject "WebSearchUI_Xcode" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3F112304C2530049C28B /* DebugAppStoreLLC */,
+ D03E3F162304C27F0049C28B /* DebugHockeyapp */,
+ D03E3F122304C2530049C28B /* ReleaseAppStoreLLC */,
+ D03E3F182304C2890049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+ D03E3F132304C2530049C28B /* Build configuration list for PBXNativeTarget "WebSearchUI" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ D03E3F142304C2530049C28B /* DebugAppStoreLLC */,
+ D03E3F172304C27F0049C28B /* DebugHockeyapp */,
+ D03E3F152304C2530049C28B /* ReleaseAppStoreLLC */,
+ D03E3F192304C2890049C28B /* ReleaseHockeyappInternal */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = ReleaseAppStoreLLC;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = D03E3F022304C2530049C28B /* Project object */;
+}