|
|
@ -10,15 +10,17 @@ extension AppDelegate {
|
|
|
|
DispatchQueue.main.async {
|
|
|
|
DispatchQueue.main.async {
|
|
|
|
let sdp = RTCSessionDescription(type: .offer, sdp: message.sdps![0])
|
|
|
|
let sdp = RTCSessionDescription(type: .offer, sdp: message.sdps![0])
|
|
|
|
guard let presentingVC = CurrentAppContext().frontmostViewController() else { preconditionFailure() } // TODO: Handle more gracefully
|
|
|
|
guard let presentingVC = CurrentAppContext().frontmostViewController() else { preconditionFailure() } // TODO: Handle more gracefully
|
|
|
|
|
|
|
|
if let conversationVC = presentingVC as? ConversationVC, let contactThread = conversationVC.thread as? TSContactThread, contactThread.contactSessionID() == message.sender! {
|
|
|
|
let callVC = CallVC(for: message.sender!, mode: .answer(sdp: sdp))
|
|
|
|
let callVC = CallVC(for: message.sender!, mode: .answer(sdp: sdp))
|
|
|
|
callVC.modalPresentationStyle = .overFullScreen
|
|
|
|
callVC.modalPresentationStyle = .overFullScreen
|
|
|
|
callVC.modalTransitionStyle = .crossDissolve
|
|
|
|
callVC.modalTransitionStyle = .crossDissolve
|
|
|
|
if let conversationVC = presentingVC as? ConversationVC {
|
|
|
|
|
|
|
|
callVC.conversationVC = conversationVC
|
|
|
|
callVC.conversationVC = conversationVC
|
|
|
|
conversationVC.inputAccessoryView?.isHidden = true
|
|
|
|
conversationVC.inputAccessoryView?.isHidden = true
|
|
|
|
conversationVC.inputAccessoryView?.alpha = 0
|
|
|
|
conversationVC.inputAccessoryView?.alpha = 0
|
|
|
|
}
|
|
|
|
|
|
|
|
presentingVC.present(callVC, animated: true, completion: nil)
|
|
|
|
presentingVC.present(callVC, animated: true, completion: nil)
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// Answer messages
|
|
|
|
// Answer messages
|
|
|
|