Files
GLEGram-iOS/submodules/BotPaymentsUI/Sources/BotPaymentTextItemNode.swift
T
Leeksov 4647310322 GLEGram 12.5 — Initial public release
Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
2026-04-06 09:48:12 +03:00

41 lines
1.3 KiB
Swift

import Foundation
import UIKit
import AsyncDisplayKit
import Display
import TelegramPresentationData
private let textFont = Font.regular(14.0)
final class BotPaymentTextItemNode: BotPaymentItemNode {
private let text: String
private let textNode: ASTextNode
private var theme: PresentationTheme?
init(text: String) {
self.text = text
self.textNode = ASTextNode()
self.textNode.maximumNumberOfLines = 0
super.init(needsBackground: false)
self.addSubnode(self.textNode)
}
override func layoutContents(theme: PresentationTheme, width: CGFloat, sideInset: CGFloat, measuredInset: CGFloat, transition: ContainedViewLayoutTransition) -> CGFloat {
if self.theme !== theme {
self.theme = theme
self.textNode.attributedText = NSAttributedString(string: self.text, font: textFont, textColor: theme.list.sectionHeaderTextColor)
}
let leftInset: CGFloat = 16.0
let textSize = self.textNode.measure(CGSize(width: width - leftInset - 10.0 - sideInset * 2.0, height: CGFloat.greatestFiniteMagnitude))
transition.updateFrame(node: self.textNode, frame: CGRect(origin: CGPoint(x: leftInset + sideInset, y: 7.0), size: textSize))
return textSize.height + 7.0 + 7.0
}
}