Skip to content

Commit 94117d1

Browse files
committed
Merge branch 'master' of gitlab.com:peter-iakovlev/telegram-ios
2 parents cb0b8c0 + 3c077c2 commit 94117d1

File tree

48 files changed

+1146
-1243
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+1146
-1243
lines changed

.cursorignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Add directories or file patterns to ignore during indexing (e.g. foo/ or *.csv)

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,5 @@ build-input/*
6868
submodules/OpusBinding/SharedHeaders/*
6969
submodules/FFMpegBinding/SharedHeaders/*
7070
submodules/OpenSSLEncryptionProvider/SharedHeaders/*
71-
buildServer.json
71+
submodules/TelegramCore/FlatSerialization/Sources/*
72+
buildServer.json

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@ url=https://github.com/bazelbuild/rules_swift.git
1111
[submodule "build-system/bazel-rules/apple_support"]
1212
path = build-system/bazel-rules/apple_support
1313
url = https://github.com/bazelbuild/apple_support.git
14-
[submodule "submodules/TgVoip/libtgvoip"]
15-
path = submodules/TgVoip/libtgvoip
16-
url = https://github.com/telegramdesktop/libtgvoip.git
1714
[submodule "submodules/TgVoipWebrtc/tgcalls"]
1815
path = submodules/TgVoipWebrtc/tgcalls
1916
url=../tgcalls.git

submodules/BrowserUI/Sources/BrowserInstantPageContent.swift

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
3232
private var originalContent: BrowserContent?
3333
private let url: String
3434

35-
private var webPage: TelegramMediaWebpage?
35+
private var webPage: (webPage: TelegramMediaWebpage, instantPage: InstantPage?)?
3636

3737
let uuid: UUID
3838

@@ -97,7 +97,11 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
9797

9898
init(context: AccountContext, presentationData: PresentationData, webPage: TelegramMediaWebpage, anchor: String?, url: String, sourceLocation: InstantPageSourceLocation, preloadedResouces: [Any]?, originalContent: BrowserContent? = nil) {
9999
self.context = context
100-
self.webPage = webPage
100+
var instantPage: InstantPage?
101+
if case let .Loaded(content) = webPage.content {
102+
instantPage = content.instantPage?._parse()
103+
}
104+
self.webPage = (webPage, instantPage)
101105
self.presentationData = presentationData
102106
self.theme = instantPageThemeForType(presentationData.theme.overallDarkAppearance ? .dark : .light, settings: .defaultSettings)
103107
self.sourceLocation = sourceLocation
@@ -267,7 +271,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
267271
}
268272

269273
private func updateWebPage(_ webPage: TelegramMediaWebpage?, anchor: String?, state: InstantPageStoredState? = nil) {
270-
if self.webPage != webPage {
274+
if self.webPage?.webPage != webPage {
271275
if self.webPage != nil && self.currentLayout != nil {
272276
if let snapshotView = self.scrollNode.view.snapshotView(afterScreenUpdates: false) {
273277
snapshotView.frame = self.scrollNode.frame
@@ -279,7 +283,15 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
279283
}
280284

281285
self.setupScrollOffsetOnLayout = self.webPage == nil
282-
self.webPage = webPage
286+
if let webPage {
287+
var instantPage: InstantPage?
288+
if case let .Loaded(content) = webPage.content {
289+
instantPage = content.instantPage?._parse()
290+
}
291+
self.webPage = (webPage, instantPage)
292+
} else {
293+
self.webPage = nil
294+
}
283295
if let anchor = anchor {
284296
self.initialAnchor = anchor.removingPercentEncoding
285297
} else if let state = state {
@@ -455,11 +467,11 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
455467
}
456468

457469
private func updatePageLayout() {
458-
guard let (size, insets, _) = self.containerLayout, let webPage = self.webPage else {
470+
guard let (size, insets, _) = self.containerLayout, let (webPage, instantPage) = self.webPage else {
459471
return
460472
}
461473

462-
let currentLayout = instantPageLayoutForWebPage(webPage, userLocation: self.sourceLocation.userLocation, boundingWidth: size.width, safeInset: insets.left, strings: self.presentationData.strings, theme: self.theme, dateTimeFormat: self.presentationData.dateTimeFormat, webEmbedHeights: self.currentWebEmbedHeights)
474+
let currentLayout = instantPageLayoutForWebPage(webPage, instantPage: instantPage, userLocation: self.sourceLocation.userLocation, boundingWidth: size.width, safeInset: insets.left, strings: self.presentationData.strings, theme: self.theme, dateTimeFormat: self.presentationData.dateTimeFormat, webEmbedHeights: self.currentWebEmbedHeights)
463475

464476
for (_, tileNode) in self.visibleTiles {
465477
tileNode.removeFromSupernode()
@@ -920,7 +932,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
920932
}
921933
}
922934

923-
if let webPage = self.webPage, case let .Loaded(content) = webPage.content, let page = content.instantPage, page.url == baseUrl || baseUrl.isEmpty, let anchor = anchor {
935+
if let page = self.webPage?.instantPage, page.url == baseUrl || baseUrl.isEmpty, let anchor = anchor {
924936
self.scrollToAnchor(anchor)
925937
return
926938
}
@@ -1029,7 +1041,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
10291041
}
10301042

10311043
private func openMedia(_ media: InstantPageMedia) {
1032-
guard let items = self.currentLayout?.items, let webPage = self.webPage else {
1044+
guard let items = self.currentLayout?.items, let (webPage, _) = self.webPage else {
10331045
return
10341046
}
10351047

@@ -1157,7 +1169,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
11571169
let _ = saveToCameraRoll(context: self.context, postbox: self.context.account.postbox, userLocation: self.sourceLocation.userLocation, mediaReference: .standalone(media: media)).start()
11581170
}
11591171
}), ContextMenuAction(content: .text(title: self.presentationData.strings.Conversation_ContextMenuShare, accessibilityLabel: self.presentationData.strings.Conversation_ContextMenuShare), action: { [weak self] in
1160-
if let self, let webPage = self.webPage, let image = media.media._asMedia() as? TelegramMediaImage {
1172+
if let self, let (webPage, _) = self.webPage, let image = media.media._asMedia() as? TelegramMediaImage {
11611173
self.present(ShareController(context: self.context, subject: .image(image.representations.map({ ImageRepresentationWithReference(representation: $0, reference: MediaResourceReference.media(media: .webPage(webPage: WebpageReference(webPage), media: image), resource: $0.resource)) }))), nil)
11621174
}
11631175
})], catchTapsOutside: true)
@@ -1300,7 +1312,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
13001312
strongSelf.present(UndoOverlayController(presentationData: presentationData, content: .copy(text: strings.Conversation_TextCopied), elevatedLayout: false, animateInAsReplacement: false, action: { _ in return false }), nil)
13011313
}
13021314
}), ContextMenuAction(content: .text(title: strings.Conversation_ContextMenuShare, accessibilityLabel: strings.Conversation_ContextMenuShare), action: { [weak self] in
1303-
if let strongSelf = self, let webPage = strongSelf.webPage, case let .Loaded(content) = webPage.content {
1315+
if let strongSelf = self, let (webPage, _) = strongSelf.webPage, case let .Loaded(content) = webPage.content {
13041316
strongSelf.present(ShareController(context: strongSelf.context, subject: .quote(text: text, url: content.url)), nil)
13051317
}
13061318
})]
@@ -1368,7 +1380,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
13681380
}
13691381

13701382
private func presentReferenceView(item: InstantPageTextItem, referenceAnchor: String) {
1371-
guard let webPage = self.webPage else {
1383+
guard let (webPage, instantPage) = self.webPage else {
13721384
return
13731385
}
13741386

@@ -1389,7 +1401,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
13891401
return
13901402
}
13911403

1392-
let controller = InstantPageReferenceController(context: self.context, sourceLocation: self.sourceLocation, theme: theme, webPage: webPage, anchorText: anchorText, openUrl: { [weak self] url in
1404+
let controller = InstantPageReferenceController(context: self.context, sourceLocation: self.sourceLocation, theme: theme, webPage: webPage, instantPage: instantPage, anchorText: anchorText, openUrl: { [weak self] url in
13931405
self?.openUrl(url)
13941406
}, openUrlIn: { [weak self] url in
13951407
self?.openUrlIn(url)
@@ -1444,7 +1456,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
14441456
}
14451457
self.scrollNode.view.setContentOffset(CGPoint(x: 0.0, y: targetY), animated: true)
14461458
}
1447-
} else if case let .Loaded(content) = self.webPage?.content, let instantPage = content.instantPage, !instantPage.isComplete {
1459+
} else if let instantPage = self.webPage?.instantPage, !instantPage.isComplete {
14481460
// self.loadProgress.set(0.5)
14491461
self.pendingAnchor = anchor
14501462
}
@@ -1480,7 +1492,7 @@ final class BrowserInstantPageContent: UIView, BrowserContent, UIScrollViewDeleg
14801492
}
14811493

14821494
func addToRecentlyVisited() {
1483-
if let webPage = self.webPage {
1495+
if let (webPage, _) = self.webPage {
14841496
let _ = addRecentlyVisitedLink(engine: self.context.engine, webPage: webPage).startStandalone()
14851497
}
14861498
}

submodules/ChatPresentationInterfaceState/Sources/ChatPresentationInterfaceState.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1019,6 +1019,11 @@ public final class ChatPresentationInterfaceState: Equatable {
10191019
public func updatedInputQueryResult(queryKind: ChatPresentationInputQueryKind, _ f: (ChatPresentationInputQueryResult?) -> ChatPresentationInputQueryResult?) -> ChatPresentationInterfaceState {
10201020
var inputQueryResults = self.inputQueryResults
10211021
let updated = f(inputQueryResults[queryKind])
1022+
if case .contextRequest = queryKind {
1023+
#if DEBUG
1024+
print("updatedInputQueryResult: \(String(describing: updated))")
1025+
#endif
1026+
}
10221027
if let updated = updated {
10231028
inputQueryResults[queryKind] = updated
10241029
} else {

submodules/ComposePollUI/Sources/ComposePollScreen.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1284,7 +1284,7 @@ final class ComposePollScreenComponent: Component {
12841284
component: AnyComponent(EmojiSuggestionsComponent(
12851285
context: component.context,
12861286
userLocation: .other,
1287-
theme: EmojiSuggestionsComponent.Theme(theme: environment.theme),
1287+
theme: EmojiSuggestionsComponent.Theme(theme: environment.theme, backgroundColor: environment.theme.list.itemBlocksBackgroundColor),
12881288
animationCache: component.context.animationCache,
12891289
animationRenderer: component.context.animationRenderer,
12901290
files: value,

submodules/GalleryData/Sources/GalleryData.swift

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,10 +64,12 @@ private func instantPageBlockMedia(pageId: MediaId, block: InstantPageBlock, med
6464
return []
6565
}
6666

67-
public func instantPageGalleryMedia(webpageId: MediaId, page: InstantPage, galleryMedia: Media) -> [InstantPageGalleryEntry] {
67+
public func instantPageGalleryMedia(webpageId: MediaId, page: InstantPage.Accessor, galleryMedia: Media) -> [InstantPageGalleryEntry] {
6868
var result: [InstantPageGalleryEntry] = []
6969
var counter: Int = 0
7070

71+
let page = page._parse()
72+
7173
for block in page.blocks {
7274
result.append(contentsOf: instantPageBlockMedia(pageId: webpageId, block: block, media: page.media, counter: &counter))
7375
}

0 commit comments

Comments
 (0)