mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00

# Conflicts: # .gitignore # BUCK # Makefile # Telegram/Telegram-iOS/Telegram-iOS-Hockeyapp.entitlements # submodules/AsyncDisplayKit/Source/ASDisplayNode.h # submodules/AsyncDisplayKit/Source/Private/ASDisplayNode+FrameworkPrivate.h # submodules/Display/Display/ListView.swift # submodules/Display/Display/Navigation/NavigationController.swift # submodules/Display/Display/NavigationBar.swift # submodules/Display/Display/NavigationButtonNode.swift # submodules/Display/Display/TabBarNode.swift # submodules/Display/Display/ViewController.swift # submodules/Display/Source/ContextContentContainerNode.swift # submodules/Display/Source/ContextContentSourceNode.swift # submodules/Display/Source/ContextControllerSourceNode.swift # submodules/Display/Source/ContextGesture.swift # submodules/TelegramUI/Sources/Resources/Animations/ChatListEmpty.tgs # submodules/TelegramUI/Sources/Resources/Animations/ChatListFilterEmpty.tgs # submodules/TelegramUI/TelegramUI/ChatController.swift # submodules/TelegramUI/TelegramUI/FetchVideoMediaResource.swift # submodules/ffmpeg/FFMpeg/FFMpegRemuxer.m
28 lines
1.3 KiB
Swift
28 lines
1.3 KiB
Swift
import Foundation
|
|
import AsyncDisplayKit
|
|
import Display
|
|
|
|
public final class ContextContentContainerNode: ASDisplayNode {
|
|
public var contentNode: ContextContentNode?
|
|
|
|
override public init() {
|
|
super.init()
|
|
}
|
|
|
|
public func updateLayout(size: CGSize, scaledSize: CGSize, transition: ContainedViewLayoutTransition) {
|
|
guard let contentNode = self.contentNode else {
|
|
return
|
|
}
|
|
switch contentNode {
|
|
case .extracted:
|
|
break
|
|
case let .controller(controller):
|
|
transition.updatePosition(node: controller, position: CGPoint(x: scaledSize.width / 2.0, y: scaledSize.height / 2.0))
|
|
transition.updateBounds(node: controller, bounds: CGRect(origin: CGPoint(), size: size))
|
|
transition.updateTransformScale(node: controller, scale: scaledSize.width / size.width)
|
|
controller.updateLayout(size: size, transition: transition)
|
|
controller.controller.containerLayoutUpdated(ContainerViewLayout(size: size, metrics: LayoutMetrics(widthClass: .compact, heightClass: .compact), deviceMetrics: .iPhoneX, intrinsicInsets: UIEdgeInsets(), safeInsets: UIEdgeInsets(), statusBarHeight: nil, inputHeight: nil, inputHeightIsInteractivellyChanging: false, inVoiceOver: false), transition: transition)
|
|
}
|
|
}
|
|
}
|