ImmediateTextNode: added trailingLineWidth

This commit is contained in:
Peter 2019-04-26 15:28:49 +04:00
parent 99638081bf
commit 51c2d5e992

View File

@ -18,6 +18,8 @@ public class ImmediateTextNode: TextNode {
public var linkHighlightColor: UIColor? public var linkHighlightColor: UIColor?
public var trailingLineWidth: CGFloat?
public var highlightAttributeAction: (([NSAttributedStringKey: Any]) -> NSAttributedStringKey?)? { public var highlightAttributeAction: (([NSAttributedStringKey: Any]) -> NSAttributedStringKey?)? {
didSet { didSet {
if self.isNodeLoaded { if self.isNodeLoaded {
@ -33,6 +35,11 @@ public class ImmediateTextNode: TextNode {
let makeLayout = TextNode.asyncLayout(self) let makeLayout = TextNode.asyncLayout(self)
let (layout, apply) = makeLayout(TextNodeLayoutArguments(attributedString: self.attributedText, backgroundColor: nil, maximumNumberOfLines: self.maximumNumberOfLines, truncationType: self.truncationType, constrainedSize: constrainedSize, alignment: self.textAlignment, lineSpacing: self.lineSpacing, cutout: nil, insets: self.insets)) let (layout, apply) = makeLayout(TextNodeLayoutArguments(attributedString: self.attributedText, backgroundColor: nil, maximumNumberOfLines: self.maximumNumberOfLines, truncationType: self.truncationType, constrainedSize: constrainedSize, alignment: self.textAlignment, lineSpacing: self.lineSpacing, cutout: nil, insets: self.insets))
let _ = apply() let _ = apply()
if layout.numberOfLines > 1 {
self.trailingLineWidth = layout.trailingLineWidth
} else {
self.trailingLineWidth = nil
}
return layout.size return layout.size
} }