mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Update API [skip ci]
This commit is contained in:
parent
54de3e7b9f
commit
ffe60b7c9f
@ -1,5 +1,6 @@
|
||||
import UIKit
|
||||
import AsyncDisplayKit
|
||||
import SwiftSignalKit
|
||||
|
||||
private var backArrowImageCache: [Int32: UIImage] = [:]
|
||||
|
||||
@ -146,7 +147,23 @@ public final class NavigationBackgroundNode: ASDisplayNode {
|
||||
self.updateColor(color: color, transition: .immediate)
|
||||
}
|
||||
|
||||
|
||||
public override func didLoad() {
|
||||
super.didLoad()
|
||||
|
||||
if self.scheduledUpdate {
|
||||
self.scheduledUpdate = false
|
||||
self.updateBackgroundBlur(forceKeepBlur: false)
|
||||
}
|
||||
}
|
||||
|
||||
private var scheduledUpdate = false
|
||||
|
||||
private func updateBackgroundBlur(forceKeepBlur: Bool) {
|
||||
guard self.isNodeLoaded else {
|
||||
self.scheduledUpdate = true
|
||||
return
|
||||
}
|
||||
if self.enableBlur && !sharedIsReduceTransparencyEnabled && ((self._color.alpha > .ulpOfOne && self._color.alpha < 0.95) || forceKeepBlur) {
|
||||
if self.effectView == nil {
|
||||
let effectView = UIVisualEffectView(effect: UIBlurEffect(style: .light))
|
||||
|
@ -18,12 +18,15 @@ private class LeftAlignedIconButton: UIButton {
|
||||
override func titleRect(forContentRect contentRect: CGRect) -> CGRect {
|
||||
var titleRect = super.titleRect(forContentRect: contentRect)
|
||||
let imageSize = currentImage?.size ?? .zero
|
||||
titleRect.origin.x = imageSize.width + 2.0
|
||||
//
|
||||
// let availableWidth = contentRect.width - imageEdgeInsets.right - imageSize.width - titleRect.width
|
||||
// return titleRect.offsetBy(dx: round(availableWidth / 2) - imageEdgeInsets.left, dy: 0)
|
||||
titleRect.origin.x = imageSize.width
|
||||
return titleRect
|
||||
}
|
||||
|
||||
override func imageRect(forContentRect contentRect: CGRect) -> CGRect {
|
||||
var imageRect = super.imageRect(forContentRect: contentRect)
|
||||
imageRect.origin.x = 0.0
|
||||
return imageRect
|
||||
}
|
||||
}
|
||||
|
||||
class ChartStackSection: UIView, ChartThemeContainer {
|
||||
@ -72,6 +75,7 @@ class ChartStackSection: UIView, ChartThemeContainer {
|
||||
backButton.setImage(UIImage(bundleImageName: "Chart/arrow_left"), for: .normal)
|
||||
backButton.imageEdgeInsets = UIEdgeInsets(top: 0.0, left: 6.0, bottom: 0.0, right: 3.0)
|
||||
backButton.imageView?.tintColor = UIColor(rgb: 0x007aff)
|
||||
backButton.adjustsImageWhenHighlighted = false
|
||||
|
||||
backButton.setVisible(false, animated: false)
|
||||
}
|
||||
@ -172,7 +176,7 @@ class ChartStackSection: UIView, ChartThemeContainer {
|
||||
|
||||
self.rangeView.frame = CGRect(origin: CGPoint(x: 0.0, y: 310.0), size: CGSize(width: bounds.width, height: 42.0))
|
||||
self.visibilityView.frame = CGRect(origin: CGPoint(x: 0.0, y: self.displayRange ? 368.0 : 326.0), size: CGSize(width: bounds.width, height: 350.0))
|
||||
self.backButton.frame = CGRect(x: 0.0, y: 0.0, width: 96.0, height: 38.0)
|
||||
self.backButton.frame = CGRect(x: 8.0, y: 0.0, width: 96.0, height: 38.0)
|
||||
|
||||
self.chartView.setNeedsDisplay()
|
||||
}
|
||||
|
@ -283,7 +283,7 @@ private func inviteLinkListControllerEntries(presentationData: PresentationData,
|
||||
let mainInvite: ExportedInvitation?
|
||||
var isPublic = false
|
||||
if let peer = peer, let address = peer.addressName, !address.isEmpty && admin == nil {
|
||||
mainInvite = ExportedInvitation(link: "t.me/\(address)", isPermanent: true, requestApproval: false, isRevoked: false, adminId: EnginePeer.Id(0), date: 0, startDate: nil, expireDate: nil, usageLimit: nil, count: nil, approvedDate: nil)
|
||||
mainInvite = ExportedInvitation(link: "t.me/\(address)", isPermanent: true, requestApproval: false, isRevoked: false, adminId: EnginePeer.Id(0), date: 0, startDate: nil, expireDate: nil, usageLimit: nil, count: nil, requestedCount: nil)
|
||||
isPublic = true
|
||||
} else if let invites = invites, let invite = invites.first(where: { $0.isPermanent && !$0.isRevoked }) {
|
||||
mainInvite = invite
|
||||
|
@ -785,7 +785,7 @@ fileprivate let parsers: [Int32 : (BufferReader) -> Any?] = {
|
||||
dict[-1673717362] = { return Api.InputPeerNotifySettings.parse_inputPeerNotifySettings($0) }
|
||||
dict[-1634752813] = { return Api.messages.FavedStickers.parse_favedStickersNotModified($0) }
|
||||
dict[750063767] = { return Api.messages.FavedStickers.parse_favedStickers($0) }
|
||||
dict[19682803] = { return Api.ExportedChatInvite.parse_chatInviteExported($0) }
|
||||
dict[-1283792928] = { return Api.ExportedChatInvite.parse_chatInviteExported($0) }
|
||||
dict[-1389486888] = { return Api.account.AuthorizationForm.parse_authorizationForm($0) }
|
||||
dict[-1392388579] = { return Api.Authorization.parse_authorization($0) }
|
||||
dict[-1361650766] = { return Api.MaskCoords.parse_maskCoords($0) }
|
||||
|
@ -20124,13 +20124,13 @@ public extension Api {
|
||||
|
||||
}
|
||||
public enum ExportedChatInvite: TypeConstructorDescription {
|
||||
case chatInviteExported(flags: Int32, link: String, adminId: Int64, date: Int32, startDate: Int32?, expireDate: Int32?, usageLimit: Int32?, usage: Int32?, approved: Int32?)
|
||||
case chatInviteExported(flags: Int32, link: String, adminId: Int64, date: Int32, startDate: Int32?, expireDate: Int32?, usageLimit: Int32?, usage: Int32?, requested: Int32?)
|
||||
|
||||
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
|
||||
switch self {
|
||||
case .chatInviteExported(let flags, let link, let adminId, let date, let startDate, let expireDate, let usageLimit, let usage, let approved):
|
||||
case .chatInviteExported(let flags, let link, let adminId, let date, let startDate, let expireDate, let usageLimit, let usage, let requested):
|
||||
if boxed {
|
||||
buffer.appendInt32(19682803)
|
||||
buffer.appendInt32(-1283792928)
|
||||
}
|
||||
serializeInt32(flags, buffer: buffer, boxed: false)
|
||||
serializeString(link, buffer: buffer, boxed: false)
|
||||
@ -20140,15 +20140,15 @@ public extension Api {
|
||||
if Int(flags) & Int(1 << 1) != 0 {serializeInt32(expireDate!, buffer: buffer, boxed: false)}
|
||||
if Int(flags) & Int(1 << 2) != 0 {serializeInt32(usageLimit!, buffer: buffer, boxed: false)}
|
||||
if Int(flags) & Int(1 << 3) != 0 {serializeInt32(usage!, buffer: buffer, boxed: false)}
|
||||
if Int(flags) & Int(1 << 7) != 0 {serializeInt32(approved!, buffer: buffer, boxed: false)}
|
||||
if Int(flags) & Int(1 << 7) != 0 {serializeInt32(requested!, buffer: buffer, boxed: false)}
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
public func descriptionFields() -> (String, [(String, Any)]) {
|
||||
switch self {
|
||||
case .chatInviteExported(let flags, let link, let adminId, let date, let startDate, let expireDate, let usageLimit, let usage, let approved):
|
||||
return ("chatInviteExported", [("flags", flags), ("link", link), ("adminId", adminId), ("date", date), ("startDate", startDate), ("expireDate", expireDate), ("usageLimit", usageLimit), ("usage", usage), ("approved", approved)])
|
||||
case .chatInviteExported(let flags, let link, let adminId, let date, let startDate, let expireDate, let usageLimit, let usage, let requested):
|
||||
return ("chatInviteExported", [("flags", flags), ("link", link), ("adminId", adminId), ("date", date), ("startDate", startDate), ("expireDate", expireDate), ("usageLimit", usageLimit), ("usage", usage), ("requested", requested)])
|
||||
}
|
||||
}
|
||||
|
||||
@ -20181,7 +20181,7 @@ public extension Api {
|
||||
let _c8 = (Int(_1!) & Int(1 << 3) == 0) || _8 != nil
|
||||
let _c9 = (Int(_1!) & Int(1 << 7) == 0) || _9 != nil
|
||||
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 {
|
||||
return Api.ExportedChatInvite.chatInviteExported(flags: _1!, link: _2!, adminId: _3!, date: _4!, startDate: _5, expireDate: _6, usageLimit: _7, usage: _8, approved: _9)
|
||||
return Api.ExportedChatInvite.chatInviteExported(flags: _1!, link: _2!, adminId: _3!, date: _4!, startDate: _5, expireDate: _6, usageLimit: _7, usage: _8, requested: _9)
|
||||
}
|
||||
else {
|
||||
return nil
|
||||
|
@ -6,8 +6,8 @@ import TelegramApi
|
||||
extension ExportedInvitation {
|
||||
init(apiExportedInvite: Api.ExportedChatInvite) {
|
||||
switch apiExportedInvite {
|
||||
case let .chatInviteExported(flags, link, adminId, date, startDate, expireDate, usageLimit, usage, approved):
|
||||
self = ExportedInvitation(link: link, isPermanent: (flags & (1 << 5)) != 0, requestApproval: (flags & (1 << 6)) != 0, isRevoked: (flags & (1 << 0)) != 0, adminId: PeerId(namespace: Namespaces.Peer.CloudUser, id: PeerId.Id._internalFromInt64Value(adminId)), date: date, startDate: startDate, expireDate: expireDate, usageLimit: usageLimit, count: usage, approvedDate: approved)
|
||||
case let .chatInviteExported(flags, link, adminId, date, startDate, expireDate, usageLimit, usage, requested):
|
||||
self = ExportedInvitation(link: link, isPermanent: (flags & (1 << 5)) != 0, requestApproval: (flags & (1 << 6)) != 0, isRevoked: (flags & (1 << 0)) != 0, adminId: PeerId(namespace: Namespaces.Peer.CloudUser, id: PeerId.Id._internalFromInt64Value(adminId)), date: date, startDate: startDate, expireDate: expireDate, usageLimit: usageLimit, count: usage, requestedCount: requested)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -11,9 +11,9 @@ public struct ExportedInvitation: Codable, Equatable {
|
||||
public let expireDate: Int32?
|
||||
public let usageLimit: Int32?
|
||||
public let count: Int32?
|
||||
public let approvedDate: Int32?
|
||||
public let requestedCount: Int32?
|
||||
|
||||
public init(link: String, isPermanent: Bool, requestApproval: Bool, isRevoked: Bool, adminId: PeerId, date: Int32, startDate: Int32?, expireDate: Int32?, usageLimit: Int32?, count: Int32?, approvedDate: Int32?) {
|
||||
public init(link: String, isPermanent: Bool, requestApproval: Bool, isRevoked: Bool, adminId: PeerId, date: Int32, startDate: Int32?, expireDate: Int32?, usageLimit: Int32?, count: Int32?, requestedCount: Int32?) {
|
||||
self.link = link
|
||||
self.isPermanent = isPermanent
|
||||
self.requestApproval = requestApproval
|
||||
@ -24,7 +24,7 @@ public struct ExportedInvitation: Codable, Equatable {
|
||||
self.expireDate = expireDate
|
||||
self.usageLimit = usageLimit
|
||||
self.count = count
|
||||
self.approvedDate = approvedDate
|
||||
self.requestedCount = requestedCount
|
||||
}
|
||||
|
||||
public init(from decoder: Decoder) throws {
|
||||
@ -40,7 +40,7 @@ public struct ExportedInvitation: Codable, Equatable {
|
||||
self.expireDate = try container.decodeIfPresent(Int32.self, forKey: "expireDate")
|
||||
self.usageLimit = try container.decodeIfPresent(Int32.self, forKey: "usageLimit")
|
||||
self.count = try container.decodeIfPresent(Int32.self, forKey: "count")
|
||||
self.approvedDate = try? container.decodeIfPresent(Int32.self, forKey: "approvedDate")
|
||||
self.requestedCount = try? container.decodeIfPresent(Int32.self, forKey: "requestedCount")
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
@ -56,14 +56,14 @@ public struct ExportedInvitation: Codable, Equatable {
|
||||
try container.encodeIfPresent(self.expireDate, forKey: "expireDate")
|
||||
try container.encodeIfPresent(self.usageLimit, forKey: "usageLimit")
|
||||
try container.encodeIfPresent(self.count, forKey: "count")
|
||||
try container.encodeIfPresent(self.approvedDate, forKey: "approvedDate")
|
||||
try container.encodeIfPresent(self.requestedCount, forKey: "requestedCount")
|
||||
}
|
||||
|
||||
public static func ==(lhs: ExportedInvitation, rhs: ExportedInvitation) -> Bool {
|
||||
return lhs.link == rhs.link && lhs.isPermanent == rhs.isPermanent && lhs.requestApproval == rhs.requestApproval && lhs.isRevoked == rhs.isRevoked && lhs.adminId == rhs.adminId && lhs.date == rhs.date && lhs.startDate == rhs.startDate && lhs.expireDate == rhs.expireDate && lhs.usageLimit == rhs.usageLimit && lhs.count == rhs.count && lhs.approvedDate == rhs.approvedDate
|
||||
return lhs.link == rhs.link && lhs.isPermanent == rhs.isPermanent && lhs.requestApproval == rhs.requestApproval && lhs.isRevoked == rhs.isRevoked && lhs.adminId == rhs.adminId && lhs.date == rhs.date && lhs.startDate == rhs.startDate && lhs.expireDate == rhs.expireDate && lhs.usageLimit == rhs.usageLimit && lhs.count == rhs.count && lhs.requestedCount == rhs.requestedCount
|
||||
}
|
||||
|
||||
public func withUpdated(isRevoked: Bool) -> ExportedInvitation {
|
||||
return ExportedInvitation(link: self.link, isPermanent: self.isPermanent, requestApproval: self.requestApproval, isRevoked: isRevoked, adminId: self.adminId, date: self.date, startDate: self.startDate, expireDate: self.expireDate, usageLimit: self.usageLimit, count: self.count, approvedDate: self.approvedDate)
|
||||
return ExportedInvitation(link: self.link, isPermanent: self.isPermanent, requestApproval: self.requestApproval, isRevoked: isRevoked, adminId: self.adminId, date: self.date, startDate: self.startDate, expireDate: self.expireDate, usageLimit: self.usageLimit, count: self.count, requestedCount: self.requestedCount)
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user