mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
Various Fixes
This commit is contained in:
parent
cae1dbcd3b
commit
31ee543790
@ -114,9 +114,30 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)setContentSize:(CGSize)contentSize {
|
- (void)setContentSize:(CGSize)contentSize {
|
||||||
|
if (_shouldBlockPanGesture) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
[super setContentSize:contentSize];
|
[super setContentSize:contentSize];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)setContentOffset:(CGPoint)contentOffset {
|
||||||
|
if (_shouldBlockPanGesture) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[super setContentOffset:contentOffset];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated {
|
||||||
|
if (_shouldBlockPanGesture) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[super setContentOffset:contentOffset animated:animated];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)setBounds:(CGRect)bounds {
|
||||||
|
[super setBounds:bounds];
|
||||||
|
}
|
||||||
|
|
||||||
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
|
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
|
||||||
{
|
{
|
||||||
if (_targetForActionImpl) {
|
if (_targetForActionImpl) {
|
||||||
|
@ -1867,6 +1867,9 @@ class ChatListItemNode: ItemListRevealOptionsItemNode {
|
|||||||
transition.animatePosition(node: strongSelf.titleNode, from: CGPoint(x: titlePosition.x - contentDelta.x, y: titlePosition.y - contentDelta.y))
|
transition.animatePosition(node: strongSelf.titleNode, from: CGPoint(x: titlePosition.x - contentDelta.x, y: titlePosition.y - contentDelta.y))
|
||||||
|
|
||||||
transition.animatePositionAdditive(node: strongSelf.textNode, offset: CGPoint(x: -contentDelta.x, y: -contentDelta.y))
|
transition.animatePositionAdditive(node: strongSelf.textNode, offset: CGPoint(x: -contentDelta.x, y: -contentDelta.y))
|
||||||
|
if let dustNode = strongSelf.dustNode {
|
||||||
|
transition.animatePositionAdditive(node: dustNode, offset: CGPoint(x: -contentDelta.x, y: -contentDelta.y))
|
||||||
|
}
|
||||||
|
|
||||||
let authorPosition = strongSelf.authorNode.position
|
let authorPosition = strongSelf.authorNode.position
|
||||||
transition.animatePosition(node: strongSelf.authorNode, from: CGPoint(x: authorPosition.x - contentDelta.x, y: authorPosition.y - contentDelta.y))
|
transition.animatePosition(node: strongSelf.authorNode, from: CGPoint(x: authorPosition.x - contentDelta.x, y: authorPosition.y - contentDelta.y))
|
||||||
|
@ -1908,6 +1908,8 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate {
|
|||||||
let accentTextColor = presentationInterfaceState.theme.chat.inputPanel.panelControlAccentColor
|
let accentTextColor = presentationInterfaceState.theme.chat.inputPanel.panelControlAccentColor
|
||||||
let baseFontSize = max(minInputFontSize, presentationInterfaceState.fontSize.baseDisplaySize)
|
let baseFontSize = max(minInputFontSize, presentationInterfaceState.fontSize.baseDisplaySize)
|
||||||
|
|
||||||
|
textInputNode.textView.isScrollEnabled = false
|
||||||
|
|
||||||
refreshChatTextInputAttributes(textInputNode, theme: presentationInterfaceState.theme, baseFontSize: baseFontSize, spoilersRevealed: self.spoilersRevealed)
|
refreshChatTextInputAttributes(textInputNode, theme: presentationInterfaceState.theme, baseFontSize: baseFontSize, spoilersRevealed: self.spoilersRevealed)
|
||||||
|
|
||||||
textInputNode.attributedText = textAttributedStringForStateText(self.inputTextState.inputText, fontSize: baseFontSize, textColor: textColor, accentTextColor: accentTextColor, writingDirection: nil, spoilersRevealed: self.spoilersRevealed)
|
textInputNode.attributedText = textAttributedStringForStateText(self.inputTextState.inputText, fontSize: baseFontSize, textColor: textColor, accentTextColor: accentTextColor, writingDirection: nil, spoilersRevealed: self.spoilersRevealed)
|
||||||
@ -1916,14 +1918,22 @@ class ChatTextInputPanelNode: ChatInputPanelNode, ASEditableTextNodeDelegate {
|
|||||||
let containerView = textInputNode.textView.subviews[1]
|
let containerView = textInputNode.textView.subviews[1]
|
||||||
if let canvasView = containerView.subviews.first {
|
if let canvasView = containerView.subviews.first {
|
||||||
if let snapshotView = canvasView.snapshotView(afterScreenUpdates: false) {
|
if let snapshotView = canvasView.snapshotView(afterScreenUpdates: false) {
|
||||||
|
snapshotView.frame = canvasView.frame.offsetBy(dx: 0.0, dy: -textInputNode.textView.contentOffset.y)
|
||||||
textInputNode.view.insertSubview(snapshotView, at: 0)
|
textInputNode.view.insertSubview(snapshotView, at: 0)
|
||||||
canvasView.layer.animateAlpha(from: 0.0, to: 1.0, duration: 0.3)
|
canvasView.layer.animateAlpha(from: 0.0, to: 1.0, duration: 0.3)
|
||||||
snapshotView.layer.animateAlpha(from: 1.0, to: 0.0, duration: 0.3, removeOnCompletion: false, completion: { [weak snapshotView] _ in
|
snapshotView.layer.animateAlpha(from: 1.0, to: 0.0, duration: 0.3, removeOnCompletion: false, completion: { [weak snapshotView, weak textInputNode] _ in
|
||||||
|
textInputNode?.textView.isScrollEnabled = false
|
||||||
snapshotView?.removeFromSuperview()
|
snapshotView?.removeFromSuperview()
|
||||||
|
Queue.mainQueue().after(0.1) {
|
||||||
|
textInputNode?.textView.isScrollEnabled = true
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Queue.mainQueue().after(0.1) {
|
||||||
|
textInputNode.textView.isScrollEnabled = true
|
||||||
|
}
|
||||||
|
|
||||||
if animated {
|
if animated {
|
||||||
if revealed {
|
if revealed {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user