mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-07 06:43:43 +00:00
no message
This commit is contained in:
parent
5278f451f1
commit
f78cd6fe17
@ -299,20 +299,28 @@ public struct LocalFileReferenceMediaResourceId: MediaResourceId {
|
|||||||
public class LocalFileReferenceMediaResource: TelegramMediaResource {
|
public class LocalFileReferenceMediaResource: TelegramMediaResource {
|
||||||
let localFilePath: String
|
let localFilePath: String
|
||||||
let randomId: Int64
|
let randomId: Int64
|
||||||
|
let size: Int32?
|
||||||
|
|
||||||
public init(localFilePath: String, randomId: Int64) {
|
public init(localFilePath: String, randomId: Int64, size: Int32? = nil) {
|
||||||
self.localFilePath = localFilePath
|
self.localFilePath = localFilePath
|
||||||
self.randomId = randomId
|
self.randomId = randomId
|
||||||
|
self.size = size
|
||||||
}
|
}
|
||||||
|
|
||||||
public required init(decoder: Decoder) {
|
public required init(decoder: Decoder) {
|
||||||
self.localFilePath = decoder.decodeStringForKey("p")
|
self.localFilePath = decoder.decodeStringForKey("p")
|
||||||
self.randomId = decoder.decodeInt64ForKey("r")
|
self.randomId = decoder.decodeInt64ForKey("r")
|
||||||
|
self.size = decoder.decodeInt32ForKey("s")
|
||||||
}
|
}
|
||||||
|
|
||||||
public func encode(_ encoder: Encoder) {
|
public func encode(_ encoder: Encoder) {
|
||||||
encoder.encodeString(self.localFilePath, forKey: "p")
|
encoder.encodeString(self.localFilePath, forKey: "p")
|
||||||
encoder.encodeInt64(self.randomId, forKey: "r")
|
encoder.encodeInt64(self.randomId, forKey: "r")
|
||||||
|
if let size = self.size {
|
||||||
|
encoder.encodeInt32(size, forKey: "s")
|
||||||
|
} else {
|
||||||
|
encoder.encodeNil(forKey: "s")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public var id: MediaResourceId {
|
public var id: MediaResourceId {
|
||||||
@ -321,7 +329,7 @@ public class LocalFileReferenceMediaResource: TelegramMediaResource {
|
|||||||
|
|
||||||
public func isEqual(to: TelegramMediaResource) -> Bool {
|
public func isEqual(to: TelegramMediaResource) -> Bool {
|
||||||
if let to = to as? LocalFileReferenceMediaResource {
|
if let to = to as? LocalFileReferenceMediaResource {
|
||||||
return self.localFilePath == to.localFilePath && self.randomId == to.randomId
|
return self.localFilePath == to.localFilePath && self.randomId == to.randomId && self.size == size
|
||||||
} else {
|
} else {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|||||||
@ -202,7 +202,13 @@ private func uploadedThumbnail(network: Network, postbox: Postbox, image: Telegr
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func uploadedMediaFileContent(network: Network, postbox: Postbox, transformOutgoingMessageMedia: TransformOutgoingMessageMedia?, file: TelegramMediaFile, message: Message) -> Signal<PendingMessageUploadedContentResult, NoError> {
|
private func uploadedMediaFileContent(network: Network, postbox: Postbox, transformOutgoingMessageMedia: TransformOutgoingMessageMedia?, file: TelegramMediaFile, message: Message) -> Signal<PendingMessageUploadedContentResult, NoError> {
|
||||||
let upload = multipartUpload(network: network, postbox: postbox, resource: file.resource, encrypt: message.id.peerId.namespace == Namespaces.Peer.SecretChat, hintFileSize: file.size)
|
var hintSize: Int?
|
||||||
|
if let size = file.size {
|
||||||
|
hintSize = size
|
||||||
|
} else if let resource = file.resource as? LocalFileReferenceMediaResource, let size = resource.size {
|
||||||
|
hintSize = Int(size)
|
||||||
|
}
|
||||||
|
let upload = multipartUpload(network: network, postbox: postbox, resource: file.resource, encrypt: message.id.peerId.namespace == Namespaces.Peer.SecretChat, hintFileSize: hintSize)
|
||||||
/*|> map { next -> UploadedMediaFileContent in
|
/*|> map { next -> UploadedMediaFileContent in
|
||||||
switch next {
|
switch next {
|
||||||
case let .progress(progress):
|
case let .progress(progress):
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user