From 23d0ac26b8acca9063943d82a485e76b187010a9 Mon Sep 17 00:00:00 2001 From: Ilya Laktyushin Date: Tue, 15 Dec 2020 02:12:49 +0400 Subject: [PATCH] Voice Chat UI fixes --- .../TelegramCallsUI/Sources/CallStatusBarNode.swift | 6 +++--- .../Sources/VoiceChatOverlayController.swift | 13 +++++++++++-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/submodules/TelegramCallsUI/Sources/CallStatusBarNode.swift b/submodules/TelegramCallsUI/Sources/CallStatusBarNode.swift index 973ac2cca5..0d7daa59cb 100644 --- a/submodules/TelegramCallsUI/Sources/CallStatusBarNode.swift +++ b/submodules/TelegramCallsUI/Sources/CallStatusBarNode.swift @@ -411,9 +411,9 @@ public class CallStatusBarNodeImpl: CallStatusBarNode { } let spacing: CGFloat = 5.0 - let titleSize = self.titleNode.updateLayout(CGSize(width: 160.0, height: size.height)) - let subtitleSize = self.subtitleNode.updateLayout(size: CGSize(width: 160.0, height: size.height), animated: true) - let speakerSize = self.speakerNode.updateLayout(CGSize(width: 160.0, height: size.height)) + let titleSize = self.titleNode.updateLayout(CGSize(width: 150.0, height: size.height)) + let subtitleSize = self.subtitleNode.updateLayout(size: CGSize(width: 150.0, height: size.height), animated: true) + let speakerSize = self.speakerNode.updateLayout(CGSize(width: 150.0, height: size.height)) let totalWidth = titleSize.width + spacing + subtitleSize.width let horizontalOrigin: CGFloat = floor((size.width - totalWidth) / 2.0) diff --git a/submodules/TelegramCallsUI/Sources/VoiceChatOverlayController.swift b/submodules/TelegramCallsUI/Sources/VoiceChatOverlayController.swift index f1c11575dd..61a1f0ecaf 100644 --- a/submodules/TelegramCallsUI/Sources/VoiceChatOverlayController.swift +++ b/submodules/TelegramCallsUI/Sources/VoiceChatOverlayController.swift @@ -39,10 +39,16 @@ public final class VoiceChatOverlayController: ViewController { return } - if self.isButtonHidden == hidden || (!slide && self.isSlidOffscreen) { + if self.isButtonHidden == hidden { return } self.isButtonHidden = hidden + + var slide = slide + if self.isSlidOffscreen && !hidden { + slide = true + } + self.isSlidOffscreen = hidden && slide guard actionButton.supernode === self else { @@ -382,8 +388,11 @@ public final class VoiceChatOverlayController: ViewController { var hidden = true var animated = true if controllers.count == 1 || controllers.last is ChatController { - if let chatController = controllers.last as? ChatController, chatController.isSendButtonVisible { + if let chatController = controllers.last as? ChatController { slide = false + if !chatController.isSendButtonVisible { + hidden = false + } } else { hidden = false }