@@ -1057,50 +1057,57 @@ public class AttachmentController: ViewController, MinimizableController {
10571057 var containerLayout = layout
10581058 let containerRect : CGRect
10591059 if case . regular = layout. metrics. widthClass {
1060- let availableHeight = layout. size. height - ( layout. inputHeight ?? 0.0 ) - 60.0
1061-
1062- let size = CGSize ( width: 390.0 , height: min ( 620.0 , availableHeight) )
1063-
1064- let insets = layout. insets ( options: [ . input] )
1065- let masterWidth = min ( max ( 320.0 , floor ( layout. size. width / 3.0 ) ) , floor ( layout. size. width / 2.0 ) )
1066-
1067- let position : CGPoint
1068- let positionY = layout. size. height - size. height - insets. bottom - 40.0
1069- if let sourceRect = controller. getSourceRect ? ( ) {
1070- position = CGPoint ( x: min ( layout. size. width - size. width - 28.0 , floor ( sourceRect. midX - size. width / 2.0 ) ) , y: min ( positionY, sourceRect. minY - size. height) )
1060+ if controller. isFullscreen {
1061+ containerRect = CGRect ( origin: . zero, size: layout. size)
1062+ self . wrapperNode. cornerRadius = 0.0
1063+ self . wrapperNode. view. mask = nil
1064+ self . shadowNode. alpha = 0.0
10711065 } else {
1072- position = CGPoint ( x: masterWidth - 174.0 , y: positionY)
1073- }
1074-
1075- if controller. isStandalone && !controller. forceSourceRect {
1076- var containerY = floorToScreenPixels ( ( layout. size. height - size. height) / 2.0 )
1077- if let inputHeight = layout. inputHeight, inputHeight > 88.0 {
1078- containerY = layout. size. height - inputHeight - size. height - 80.0
1066+ let availableHeight = layout. size. height - ( layout. inputHeight ?? 0.0 ) - 60.0
1067+
1068+ let size = CGSize ( width: 390.0 , height: min ( 620.0 , availableHeight) )
1069+
1070+ let insets = layout. insets ( options: [ . input] )
1071+ let masterWidth = min ( max ( 320.0 , floor ( layout. size. width / 3.0 ) ) , floor ( layout. size. width / 2.0 ) )
1072+
1073+ let position : CGPoint
1074+ let positionY = layout. size. height - size. height - insets. bottom - 40.0
1075+ if let sourceRect = controller. getSourceRect ? ( ) {
1076+ position = CGPoint ( x: min ( layout. size. width - size. width - 28.0 , floor ( sourceRect. midX - size. width / 2.0 ) ) , y: min ( positionY, sourceRect. minY - size. height) )
1077+ } else {
1078+ position = CGPoint ( x: masterWidth - 174.0 , y: positionY)
1079+ }
1080+
1081+ if controller. isStandalone && !controller. forceSourceRect {
1082+ var containerY = floorToScreenPixels ( ( layout. size. height - size. height) / 2.0 )
1083+ if let inputHeight = layout. inputHeight, inputHeight > 88.0 {
1084+ containerY = layout. size. height - inputHeight - size. height - 80.0
1085+ }
1086+ containerRect = CGRect ( origin: CGPoint ( x: floorToScreenPixels ( ( layout. size. width - size. width) / 2.0 ) , y: containerY) , size: size)
1087+ } else {
1088+ containerRect = CGRect ( origin: position, size: size)
1089+ }
1090+ containerLayout. size = containerRect. size
1091+ containerLayout. intrinsicInsets. bottom = 12.0
1092+ containerLayout. inputHeight = nil
1093+
1094+ if controller. isStandalone {
1095+ self . wrapperNode. cornerRadius = 10.0
1096+ } else if self . wrapperNode. view. mask == nil {
1097+ let maskView = UIImageView ( )
1098+ maskView. image = generateMaskImage ( )
1099+ maskView. contentMode = . scaleToFill
1100+ self . wrapperNode. view. mask = maskView
1101+ }
1102+
1103+ if let maskView = self . wrapperNode. view. mask {
1104+ transition. updateFrame ( view: maskView, frame: CGRect ( origin: CGPoint ( ) , size: size) )
1105+ }
1106+
1107+ self . shadowNode. alpha = 1.0
1108+ if self . shadowNode. image == nil {
1109+ self . shadowNode. image = generateShadowImage ( )
10791110 }
1080- containerRect = CGRect ( origin: CGPoint ( x: floorToScreenPixels ( ( layout. size. width - size. width) / 2.0 ) , y: containerY) , size: size)
1081- } else {
1082- containerRect = CGRect ( origin: position, size: size)
1083- }
1084- containerLayout. size = containerRect. size
1085- containerLayout. intrinsicInsets. bottom = 12.0
1086- containerLayout. inputHeight = nil
1087-
1088- if controller. isStandalone {
1089- self . wrapperNode. cornerRadius = 10.0
1090- } else if self . wrapperNode. view. mask == nil {
1091- let maskView = UIImageView ( )
1092- maskView. image = generateMaskImage ( )
1093- maskView. contentMode = . scaleToFill
1094- self . wrapperNode. view. mask = maskView
1095- }
1096-
1097- if let maskView = self . wrapperNode. view. mask {
1098- transition. updateFrame ( view: maskView, frame: CGRect ( origin: CGPoint ( ) , size: size) )
1099- }
1100-
1101- self . shadowNode. alpha = 1.0
1102- if self . shadowNode. image == nil {
1103- self . shadowNode. image = generateShadowImage ( )
11041111 }
11051112 } else {
11061113 let containerHeight : CGFloat
0 commit comments