api fixes

This commit is contained in:
Mike Renoir 2023-04-07 13:01:55 +04:00
parent e4e810ae29
commit a74dc88c79
3 changed files with 10 additions and 10 deletions

View File

@ -3405,8 +3405,8 @@ func replayFinalState(
for (space, _) in holesAtHistoryStart { for (space, _) in holesAtHistoryStart {
transaction.removeHole(peerId: chatPeerId, threadId: nil, namespace: Namespaces.Message.Cloud, space: space, range: 1 ... id.id) transaction.removeHole(peerId: chatPeerId, threadId: nil, namespace: Namespaces.Message.Cloud, space: space, range: 1 ... id.id)
} }
case let .setChatWallpaper(wallpaper): case let .setChatWallpaper(wallpaper), let .setSameChatWallpaper(wallpaper):
if chatPeerId == accountPeerId { if message.authorId == accountPeerId {
transaction.updatePeerCachedData(peerIds: [message.id.peerId], update: { peerId, current in transaction.updatePeerCachedData(peerIds: [message.id.peerId], update: { peerId, current in
var current = current var current = current
if current == nil { if current == nil {

View File

@ -140,11 +140,11 @@ func _internal_setChatWallpaper(account: Account, peerId: PeerId, wallpaper: Tel
var inputSettings: Api.WallPaperSettings? var inputSettings: Api.WallPaperSettings?
if let inputWallpaperAndInputSettings = wallpaper?.apiInputWallpaperAndSettings { if let inputWallpaperAndInputSettings = wallpaper?.apiInputWallpaperAndSettings {
flags |= 1 << 0 flags |= 1 << 0
flags |= 1 << 2
inputWallpaper = inputWallpaperAndInputSettings.0 inputWallpaper = inputWallpaperAndInputSettings.0
inputSettings = inputWallpaperAndInputSettings.1 inputSettings = inputWallpaperAndInputSettings.1
} }
return account.network.request(Api.functions.messages.setChatWallPaper(flags: flags, peer: inputPeer, wallpaper: inputWallpaper, settings: inputSettings, id: nil)) return account.network.request(Api.functions.messages.setChatWallPaper(flags: flags, peer: inputPeer, wallpaper: inputWallpaper, settings: inputSettings, id: nil), automaticFloodWait: false)
|> `catch` { error in |> `catch` { error in
return .complete() return .complete()
} }
@ -160,7 +160,7 @@ public enum SetExistingChatWallpaperError {
case generic case generic
} }
func _internal_setExistingChatWallpaper(account: Account, messageId: MessageId, wallpaper: TelegramWallpaper?) -> Signal<Void, SetExistingChatWallpaperError> { func _internal_setExistingChatWallpaper(account: Account, messageId: MessageId, settings: WallpaperSettings?) -> Signal<Void, SetExistingChatWallpaperError> {
return account.postbox.transaction { transaction -> Peer? in return account.postbox.transaction { transaction -> Peer? in
if let peer = transaction.getPeer(messageId.peerId), let message = transaction.getMessage(messageId) { if let peer = transaction.getPeer(messageId.peerId), let message = transaction.getMessage(messageId) {
if let action = message.media.first(where: { $0 is TelegramMediaAction }) as? TelegramMediaAction, case let .setChatWallpaper(wallpaper) = action.action { if let action = message.media.first(where: { $0 is TelegramMediaAction }) as? TelegramMediaAction, case let .setChatWallpaper(wallpaper) = action.action {
@ -185,11 +185,11 @@ func _internal_setExistingChatWallpaper(account: Account, messageId: MessageId,
var flags: Int32 = 1 << 1 var flags: Int32 = 1 << 1
var inputSettings: Api.WallPaperSettings? var inputSettings: Api.WallPaperSettings?
if let inputWallpaperAndInputSettings = wallpaper?.apiInputWallpaperAndSettings { if let settings = settings {
flags |= 1 << 2 flags |= 1 << 2
inputSettings = inputWallpaperAndInputSettings.1 inputSettings = apiWallpaperSettings(settings)
} }
return account.network.request(Api.functions.messages.setChatWallPaper(flags: flags, peer: inputPeer, wallpaper: nil, settings: inputSettings, id: messageId.id)) return account.network.request(Api.functions.messages.setChatWallPaper(flags: flags, peer: inputPeer, wallpaper: nil, settings: inputSettings, id: messageId.id), automaticFloodWait: false)
|> `catch` { _ -> Signal<Api.Updates, SetExistingChatWallpaperError> in |> `catch` { _ -> Signal<Api.Updates, SetExistingChatWallpaperError> in
return .fail(.generic) return .fail(.generic)
} }

View File

@ -21,8 +21,8 @@ public extension TelegramEngine {
return _internal_setChatWallpaper(account: self.account, peerId: peerId, wallpaper: wallpaper) return _internal_setChatWallpaper(account: self.account, peerId: peerId, wallpaper: wallpaper)
} }
public func setExistingChatWallpaper(messageId: MessageId, wallpaper: TelegramWallpaper?) -> Signal<Void, SetExistingChatWallpaperError> { public func setExistingChatWallpaper(messageId: MessageId, settings: WallpaperSettings?) -> Signal<Void, SetExistingChatWallpaperError> {
return _internal_setExistingChatWallpaper(account: self.account, messageId: messageId, wallpaper: wallpaper) return _internal_setExistingChatWallpaper(account: self.account, messageId: messageId, settings: settings)
} }
} }
} }