From 019a2cd2992777f9208205ffc9c50da8da2f392d Mon Sep 17 00:00:00 2001 From: ryanzhao Date: Wed, 22 Sep 2021 11:44:35 +1000 Subject: [PATCH] add options for voice call and video call --- .../ConversationVC+Interaction.swift | 29 ++++++++++++++++-- .../Session/VideoCall.imageset/Contents.json | 12 ++++++++ .../Session/VideoCall.imageset/video_call.pdf | Bin 0 -> 5281 bytes 3 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 Session/Meta/Images.xcassets/Session/VideoCall.imageset/Contents.json create mode 100644 Session/Meta/Images.xcassets/Session/VideoCall.imageset/video_call.pdf diff --git a/Session/Conversations/ConversationVC+Interaction.swift b/Session/Conversations/ConversationVC+Interaction.swift index 6aeaa4e64..269f1a5ca 100644 --- a/Session/Conversations/ConversationVC+Interaction.swift +++ b/Session/Conversations/ConversationVC+Interaction.swift @@ -28,13 +28,38 @@ extension ConversationVC : InputViewDelegate, MessageCellDelegate, ContextMenuAc // MARK: Call @objc func startCall(_ sender: Any) { + let alertVC = UIAlertController.init(title: nil, message: nil, preferredStyle: .actionSheet) + let voiceCallAction = UIAlertAction.init(title: NSLocalizedString("voice_call", comment: ""), style: .default) { _ in + self.startVoiceCall() + } + voiceCallAction.setValue(UIImage(named: "Phone"), forKey: "image") + alertVC.addAction(voiceCallAction) + + let videoCallAction = UIAlertAction.init(title: NSLocalizedString("video_call", comment: ""), style: .default) { _ in + self.startVideoCall() + } + videoCallAction.setValue(UIImage(named: "VideoCall"), forKey: "image") + alertVC.addAction(videoCallAction) + + let cancelAction = UIAlertAction.init(title: NSLocalizedString("TXT_CANCEL_TITLE", comment: ""), style: .cancel) {_ in + self.showInputAccessoryView() + } + alertVC.addAction(cancelAction) + self.inputAccessoryView?.isHidden = true + self.inputAccessoryView?.alpha = 0 + self.presentAlert(alertVC, animated: true) + } + + private func startVoiceCall() { + + } + + private func startVideoCall() { guard let contactSessionID = (thread as? TSContactThread)?.contactSessionID() else { return } let callVC = CallVC(for: contactSessionID, mode: .offer) callVC.conversationVC = self callVC.modalPresentationStyle = .overFullScreen callVC.modalTransitionStyle = .crossDissolve - self.inputAccessoryView?.isHidden = true - self.inputAccessoryView?.alpha = 0 present(callVC, animated: true, completion: nil) } diff --git a/Session/Meta/Images.xcassets/Session/VideoCall.imageset/Contents.json b/Session/Meta/Images.xcassets/Session/VideoCall.imageset/Contents.json new file mode 100644 index 000000000..5612afc47 --- /dev/null +++ b/Session/Meta/Images.xcassets/Session/VideoCall.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "video_call.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Session/Meta/Images.xcassets/Session/VideoCall.imageset/video_call.pdf b/Session/Meta/Images.xcassets/Session/VideoCall.imageset/video_call.pdf new file mode 100644 index 0000000000000000000000000000000000000000..86e1c39c5ef4d8a65d7a991bb3159d13f6094292 GIT binary patch literal 5281 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