From 3ba84b99d8b327defaadbd7daa7dae3464eb5f09 Mon Sep 17 00:00:00 2001 From: Quentin Monnier Date: Wed, 13 Jul 2022 17:44:55 +0200 Subject: [PATCH] bug fix: -shows the "backToCallButton" when accessing the "TransferCallView" and the "AddCallView" from the "ExtraButtonMenu" in active calls -delete the first blank character in the entered DTMF -disable the hide action of the "ExtraButtonMenu" when clicking between buttons, in the background -closes the "NumpadView" and the "CallStatsView" when the call ends -displays the "StatusBar" in "Incoming/OutgoingCallView" -define the height of the "EneteredDtmfTextView" (no longer automatic since the blank character has been removed) --- Classes/DialerView.m | 3 ++- Classes/Swift/Voip/ViewModels/CallData.swift | 2 +- .../ActiveCallOrConferenceView.swift | 16 +++++++++++++--- .../IncomingCallView.swift | 2 +- .../OutgoingCallView.swift | 2 +- .../Swift/Voip/Views/Fragments/NumpadView.swift | 4 +++- 6 files changed, 21 insertions(+), 8 deletions(-) diff --git a/Classes/DialerView.m b/Classes/DialerView.m index eca3e9a8c..88593f6b7 100644 --- a/Classes/DialerView.m +++ b/Classes/DialerView.m @@ -175,10 +175,11 @@ static UICompositeViewDescription *compositeDescription = nil; _padView.hidden = !IPAD && UIInterfaceOrientationIsLandscape(toInterfaceOrientation); if (linphone_core_get_calls_nb(LC)) { _backButton.hidden = FALSE; + _addContactButton.hidden = TRUE; } else { _backButton.hidden = TRUE; + _addContactButton.hidden = FALSE; } - _addContactButton.hidden = FALSE; } - (void)viewDidAppear:(BOOL)animated { diff --git a/Classes/Swift/Voip/ViewModels/CallData.swift b/Classes/Swift/Voip/ViewModels/CallData.swift index c70a5cc8b..e94fc03fd 100644 --- a/Classes/Swift/Voip/ViewModels/CallData.swift +++ b/Classes/Swift/Voip/ViewModels/CallData.swift @@ -42,7 +42,7 @@ class CallData { let callState = MutableLiveData() let iFrameReceived = MutableLiveData(false) let outgoingEarlyMedia = MutableLiveData() - let enteredDTMF = MutableLiveData(" ") + let enteredDTMF = MutableLiveData("") var chatRoom: ChatRoom? = nil diff --git a/Classes/Swift/Voip/Views/CompositeViewControllers/ActiveCallOrConferenceView.swift b/Classes/Swift/Voip/Views/CompositeViewControllers/ActiveCallOrConferenceView.swift index 1c2bff27f..14ec0c6e2 100644 --- a/Classes/Swift/Voip/Views/CompositeViewControllers/ActiveCallOrConferenceView.swift +++ b/Classes/Swift/Voip/Views/CompositeViewControllers/ActiveCallOrConferenceView.swift @@ -245,7 +245,7 @@ import linphonesw ControlsViewModel.shared.hideExtraButtons.readCurrentAndObserve { (_) in self.hideModalSubview(view: self.extraButtonsView) } - self.view.onClick { + shadingMask.onClick { if (!self.extraButtonsView.isHidden) { self.hideModalSubview(view: self.extraButtonsView) } @@ -261,7 +261,11 @@ import linphonesw self.numpadView?.removeFromSuperview() self.shadingMask.isHidden = true }) - } + } else { + self.numpadView?.removeFromSuperview() + self.shadingMask.isHidden = true + } + } // Call stats @@ -273,7 +277,11 @@ import linphonesw self.currentCallStatsVew?.removeFromSuperview() self.shadingMask.isHidden = true }) - } + } else { + self.currentCallStatsVew?.removeFromSuperview() + self.shadingMask.isHidden = true + } + } // Video activation dialog request @@ -351,6 +359,8 @@ import linphonesw participantsListView?.removeFromSuperview() participantsListView = nil + ControlsViewModel.shared.numpadVisible.value = false + ControlsViewModel.shared.callStatsVisible.value = false ControlsViewModel.shared.fullScreenMode.value = false super.viewWillDisappear(animated) } diff --git a/Classes/Swift/Voip/Views/CompositeViewControllers/IncomingCallView.swift b/Classes/Swift/Voip/Views/CompositeViewControllers/IncomingCallView.swift index 6009bf0a5..e1a7693bc 100644 --- a/Classes/Swift/Voip/Views/CompositeViewControllers/IncomingCallView.swift +++ b/Classes/Swift/Voip/Views/CompositeViewControllers/IncomingCallView.swift @@ -27,7 +27,7 @@ import linphonesw // Layout constants let buttons_distance_from_center_x = 38 - static let compositeDescription = UICompositeViewDescription(IncomingCallView.self, statusBar: nil, tabBar: nil, sideMenu: nil, fullscreen: true, isLeftFragment: false,fragmentWith: nil) + static let compositeDescription = UICompositeViewDescription(IncomingCallView.self, statusBar: StatusBarView.self, tabBar: nil, sideMenu: nil, fullscreen: false, isLeftFragment: false,fragmentWith: nil) static func compositeViewDescription() -> UICompositeViewDescription! { return compositeDescription } func compositeViewDescription() -> UICompositeViewDescription! { return type(of: self).compositeDescription } diff --git a/Classes/Swift/Voip/Views/CompositeViewControllers/OutgoingCallView.swift b/Classes/Swift/Voip/Views/CompositeViewControllers/OutgoingCallView.swift index 613f05eb4..3c8f4c11f 100644 --- a/Classes/Swift/Voip/Views/CompositeViewControllers/OutgoingCallView.swift +++ b/Classes/Swift/Voip/Views/CompositeViewControllers/OutgoingCallView.swift @@ -32,7 +32,7 @@ import linphonesw var shadingMask = UIView() - static let compositeDescription = UICompositeViewDescription(OutgoingCallView.self, statusBar: nil, tabBar: nil, sideMenu: nil, fullscreen: true, isLeftFragment: false,fragmentWith: nil) + static let compositeDescription = UICompositeViewDescription(OutgoingCallView.self, statusBar: StatusBarView.self, tabBar: nil, sideMenu: nil, fullscreen: false, isLeftFragment: false,fragmentWith: nil) static func compositeViewDescription() -> UICompositeViewDescription! { return compositeDescription } func compositeViewDescription() -> UICompositeViewDescription! { return OutgoingCallView.compositeDescription } diff --git a/Classes/Swift/Voip/Views/Fragments/NumpadView.swift b/Classes/Swift/Voip/Views/Fragments/NumpadView.swift index d8f65364e..148cbd38d 100644 --- a/Classes/Swift/Voip/Views/Fragments/NumpadView.swift +++ b/Classes/Swift/Voip/Views/Fragments/NumpadView.swift @@ -25,6 +25,7 @@ import linphonesw // Layout constants let side_margins = 10.0 let margin_top = 100.0 + let eneteredDtmf_size = 40.0 let button_size = 70 let button_vertical_space = 17.0 let button_horizontal_space = 14.0 @@ -44,6 +45,7 @@ import linphonesw callData.callState.observe { state in if (state == Call.State.End) { + //never happens onDismissAction() } } @@ -59,7 +61,7 @@ import linphonesw let eneteredDtmf = StyledLabel(VoipTheme.dtmf_label) addSubview(eneteredDtmf) - _ = eneteredDtmf.matchParentSideBorders().alignUnder(view:hide,withMargin:side_margins) + eneteredDtmf.height(eneteredDtmf_size).matchParentSideBorders().alignUnder(view:hide,withMargin:side_margins).done() callData.enteredDTMF.readCurrentAndObserve { (dtmfs) in eneteredDtmf.text = dtmfs }