Skip to content

Commit 62e53f8

Browse files
committed
Various fixes
1 parent 75d6745 commit 62e53f8

File tree

4 files changed

+30
-11
lines changed

4 files changed

+30
-11
lines changed

submodules/ChatListUI/Sources/ChatListController.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1523,6 +1523,7 @@ public class ChatListControllerImpl: TelegramBaseController, ChatListController
15231523
if let self, let contextController {
15241524
if animateIn {
15251525
contextController.statusBar.statusBarStyle = .Ignore
1526+
contextController.animateDismissalIfNeeded()
15261527
self.present(contextController, in: .window(.root))
15271528
return {
15281529
contextController.dismissNow()

submodules/ContextUI/Sources/ContextController.swift

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1365,6 +1365,16 @@ final class ContextControllerNode: ViewControllerTracingNode, ASScrollViewDelega
13651365
}
13661366
}
13671367

1368+
func animateDismissalIfNeeded() {
1369+
guard let layout = self.validLayout, layout.metrics.isTablet else {
1370+
return
1371+
}
1372+
if let sourceContainer = self.sourceContainer {
1373+
sourceContainer.animateOut(result: .dismissWithoutContent, completion: {})
1374+
return
1375+
}
1376+
}
1377+
13681378
func getActionsMinHeight() -> ContextController.ActionsHeight? {
13691379
if !self.actionsContainerNode.bounds.height.isZero {
13701380
return ContextController.ActionsHeight(
@@ -2784,6 +2794,10 @@ public final class ContextController: ViewController, StandalonePresentableContr
27842794
}
27852795
}
27862796

2797+
public func animateDismissalIfNeeded() {
2798+
self.controllerNode.animateDismissalIfNeeded()
2799+
}
2800+
27872801
public func cancelReactionAnimation() {
27882802
self.controllerNode.cancelReactionAnimation()
27892803
}

submodules/TelegramUI/Components/Chat/ChatUserInfoItem/Sources/ChatUserInfoItem.swift

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -289,14 +289,7 @@ public final class ChatUserInfoItemNode: ListViewItemNode, ASGestureRecognizerDe
289289
backgroundSize.height += verticalInset
290290

291291
let constrainedWidth = params.width - (horizontalInset + horizontalContentInset) * 2.0
292-
let (titleLayout, titleApply) = makeTitleLayout(TextNodeLayoutArguments(attributedString: NSAttributedString(string: item.peer.displayTitle(strings: item.presentationData.strings, displayOrder: item.presentationData.nameDisplayOrder) + item.peer.displayTitle(strings: item.presentationData.strings, displayOrder: item.presentationData.nameDisplayOrder) + item.peer.displayTitle(strings: item.presentationData.strings, displayOrder: item.presentationData.nameDisplayOrder), font: Font.semibold(15.0), textColor: primaryTextColor), backgroundColor: nil, maximumNumberOfLines: 2, truncationType: .end, constrainedSize: CGSize(width: constrainedWidth, height: CGFloat.greatestFiniteMagnitude), alignment: .center, cutout: nil, insets: UIEdgeInsets()))
293-
backgroundSize.height += titleLayout.size.height
294-
backgroundSize.height += verticalSpacing
295-
296-
let (subtitleLayout, subtitleApply) = makeSubtitleLayout(TextNodeLayoutArguments(attributedString: NSAttributedString(string: item.presentationData.strings.Chat_NonContactUser_Subtitle, font: Font.regular(13.0), textColor: subtitleColor), backgroundColor: nil, maximumNumberOfLines: 0, truncationType: .end, constrainedSize: CGSize(width: constrainedWidth, height: CGFloat.greatestFiniteMagnitude), alignment: .natural, cutout: nil, insets: UIEdgeInsets()))
297-
backgroundSize.height += subtitleLayout.size.height
298-
backgroundSize.height += verticalSpacing + paragraphSpacing
299-
292+
300293
let infoConstrainedSize = CGSize(width: floor(constrainedWidth * 0.7), height: CGFloat.greatestFiniteMagnitude)
301294

302295
var maxTitleWidth: CGFloat = 0.0
@@ -388,8 +381,17 @@ public final class ChatUserInfoItemNode: ListViewItemNode, ASGestureRecognizerDe
388381
groupsTitleLayoutAndApply = nil
389382
groupsValueLayoutAndApply = nil
390383
}
384+
385+
let titleConstrainedWidth = maxTitleWidth + attributeSpacing + maxValueWidth
386+
let (titleLayout, titleApply) = makeTitleLayout(TextNodeLayoutArguments(attributedString: NSAttributedString(string: item.peer.displayTitle(strings: item.presentationData.strings, displayOrder: item.presentationData.nameDisplayOrder), font: Font.semibold(15.0), textColor: primaryTextColor), backgroundColor: nil, maximumNumberOfLines: 3, truncationType: .end, constrainedSize: CGSize(width: titleConstrainedWidth, height: CGFloat.greatestFiniteMagnitude), alignment: .center, cutout: nil, insets: UIEdgeInsets()))
387+
backgroundSize.height += titleLayout.size.height
388+
backgroundSize.height += verticalSpacing
389+
390+
let (subtitleLayout, subtitleApply) = makeSubtitleLayout(TextNodeLayoutArguments(attributedString: NSAttributedString(string: item.presentationData.strings.Chat_NonContactUser_Subtitle, font: Font.regular(13.0), textColor: subtitleColor), backgroundColor: nil, maximumNumberOfLines: 0, truncationType: .end, constrainedSize: CGSize(width: titleConstrainedWidth, height: CGFloat.greatestFiniteMagnitude), alignment: .natural, cutout: nil, insets: UIEdgeInsets()))
391+
backgroundSize.height += subtitleLayout.size.height
392+
backgroundSize.height += verticalSpacing + paragraphSpacing
391393

392-
backgroundSize.width = horizontalContentInset * 2.0 + max(titleLayout.size.width, maxTitleWidth + attributeSpacing + maxValueWidth)
394+
backgroundSize.width = horizontalContentInset * 2.0 + maxTitleWidth + attributeSpacing + maxValueWidth
393395

394396
let disclaimerText: NSMutableAttributedString
395397
if let verification = item.verification {

submodules/TelegramUI/Sources/ChatController.swift

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7522,8 +7522,10 @@ public final class ChatControllerImpl: TelegramBaseController, ChatController, G
75227522
self.view.frame = initialFrame
75237523
self.containerLayoutUpdated(initialLayout, transition: .immediate)
75247524
self.containerLayoutUpdated(updatedLayout, transition: transition)
7525-
self.chatDisplayNode.historyNode.layer.animateScaleX(from: initialLayout.size.width / updatedLayout.size.width, to: 1.0, duration: 0.4, timingFunction: kCAMediaTimingFunctionSpring)
7526-
self.chatDisplayNode.historyNode.layer.animatePosition(from: CGPoint(x: (updatedLayout.size.width - initialLayout.size.width) / 2.0, y: 0.0), to: .zero, duration: 0.4, timingFunction: kCAMediaTimingFunctionSpring, additive: true)
7525+
if !updatedLayout.metrics.isTablet {
7526+
self.chatDisplayNode.historyNode.layer.animateScaleX(from: initialLayout.size.width / updatedLayout.size.width, to: 1.0, duration: 0.4, timingFunction: kCAMediaTimingFunctionSpring)
7527+
self.chatDisplayNode.historyNode.layer.animatePosition(from: CGPoint(x: (updatedLayout.size.width - initialLayout.size.width) / 2.0, y: 0.0), to: .zero, duration: 0.4, timingFunction: kCAMediaTimingFunctionSpring, additive: true)
7528+
}
75277529
self.chatDisplayNode.inputPanelBackgroundNode.layer.removeAllAnimations()
75287530
self.chatDisplayNode.inputPanelBackgroundNode.layer.animatePosition(from: CGPoint(x: 0.0, y: self.chatDisplayNode.inputPanelNode?.frame.height ?? 45.0), to: .zero, duration: 0.4, timingFunction: kCAMediaTimingFunctionSpring, additive: true)
75297531
self.view.layer.animate(from: 14.0, to: updatedLayout.deviceMetrics.screenCornerRadius, keyPath: "cornerRadius", timingFunction: kCAMediaTimingFunctionSpring, duration: 0.4)

0 commit comments

Comments
 (0)