mirror of
https://github.com/TelegramMessenger/Telegram-iOS.git
synced 2026-07-06 03:33:41 +02:00
Postbox -> TelegramEngine wave 106 (pivot: engine data() incremental facade + 1-site drain)
Original wave 106 pure import-drop sweep abandoned: 576 candidate files all genuinely reference Postbox-tier tokens; wave 93's pattern exhausted at file granularity (no single-file orphans remain). Pivot: extend engine.resources.data(resource:) facade with `incremental: Bool = false` parameter (wires to ResourceDataRequestOption). Drain the 1 live consumer site (ChatInterfaceStateContextMenus:1327) plus consumer-side `data.complete` -> `data.isComplete` rename. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
40e1a5c7e5
commit
1b85d8ccb0
2 changed files with 7 additions and 3 deletions
|
|
@ -454,12 +454,16 @@ public extension TelegramEngine {
|
|||
resource: EngineMediaResource,
|
||||
pathExtension: String? = nil,
|
||||
waitUntilFetchStatus: Bool = false,
|
||||
incremental: Bool = false,
|
||||
attemptSynchronously: Bool = false
|
||||
) -> Signal<EngineMediaResource.ResourceData, NoError> {
|
||||
let option: ResourceDataRequestOption = incremental
|
||||
? .incremental(waitUntilFetchStatus: waitUntilFetchStatus)
|
||||
: .complete(waitUntilFetchStatus: waitUntilFetchStatus)
|
||||
return self.account.postbox.mediaBox.resourceData(
|
||||
resource._asResource(),
|
||||
pathExtension: pathExtension,
|
||||
option: .complete(waitUntilFetchStatus: waitUntilFetchStatus),
|
||||
option: option,
|
||||
attemptSynchronously: attemptSynchronously
|
||||
)
|
||||
|> map { EngineMediaResource.ResourceData($0) }
|
||||
|
|
|
|||
|
|
@ -1324,10 +1324,10 @@ func contextMenuForChatPresentationInterfaceState(chatPresentationInterfaceState
|
|||
if resourceAvailable {
|
||||
for media in message.media {
|
||||
if let image = media as? TelegramMediaImage, let largest = largestImageRepresentation(image.representations) {
|
||||
let _ = (context.account.postbox.mediaBox.resourceData(largest.resource, option: .incremental(waitUntilFetchStatus: false))
|
||||
let _ = (context.engine.resources.data(resource: EngineMediaResource(largest.resource), incremental: true)
|
||||
|> take(1)
|
||||
|> deliverOnMainQueue).startStandalone(next: { data in
|
||||
if data.complete, let imageData = try? Data(contentsOf: URL(fileURLWithPath: data.path)) {
|
||||
if data.isComplete, let imageData = try? Data(contentsOf: URL(fileURLWithPath: data.path)) {
|
||||
if let image = UIImage(data: imageData) {
|
||||
if !messageText.isEmpty {
|
||||
copyTextWithEntities()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue