From 22340a54cce710eb77c26c90aaf4d7ccdc61f212 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Mon, 26 Oct 2015 10:51:47 +0100 Subject: [PATCH] Dialer: use video icon when video policy is automatically start --- Classes/Base.lproj/DialerView.xib | 10 +++++----- Classes/DialerView.m | 24 ++++++------------------ Classes/LinphoneManager.m | 2 -- Classes/LinphoneUI/UICallButton.h | 2 ++ Classes/LinphoneUI/UICallButton.m | 11 +++++++++++ 5 files changed, 24 insertions(+), 25 deletions(-) diff --git a/Classes/Base.lproj/DialerView.xib b/Classes/Base.lproj/DialerView.xib index 3ebd87f40..8c836273d 100644 --- a/Classes/Base.lproj/DialerView.xib +++ b/Classes/Base.lproj/DialerView.xib @@ -1,5 +1,5 @@ - + @@ -322,10 +322,10 @@ - - - - + + + + diff --git a/Classes/DialerView.m b/Classes/DialerView.m index 2de2fc0ab..d3c29ddc6 100644 --- a/Classes/DialerView.m +++ b/Classes/DialerView.m @@ -326,24 +326,12 @@ static UICompositeViewDescription *compositeDescription = nil; - (void)callUpdate:(LinphoneCall *)call state:(LinphoneCallState)state { LinphoneCore *lc = [LinphoneManager getLc]; - if (linphone_core_get_calls_nb(lc) > 0) { - if (transferMode) { - [addCallButton setHidden:true]; - [transferButton setHidden:false]; - } else { - [addCallButton setHidden:false]; - [transferButton setHidden:true]; - } - [callButton setHidden:true]; - [backButton setHidden:false]; - [addContactButton setHidden:true]; - } else { - [addCallButton setHidden:true]; - [callButton setHidden:false]; - [backButton setHidden:true]; - [addContactButton setHidden:false]; - [transferButton setHidden:true]; - } + BOOL callInProgress = (linphone_core_get_calls_nb(lc) > 0); + addCallButton.hidden = (!callInProgress || transferMode); + transferButton.hidden = (!callInProgress || !transferMode); + addContactButton.hidden = callButton.hidden = callInProgress; + backButton.hidden = !callInProgress; + [callButton updateVideoPolicy]; } - (void)setAddress:(NSString *)address { diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index fe46a03cb..ba56ef133 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -1912,8 +1912,6 @@ static void audioRouteChangeListenerCallback(void *inUserData, // 1 [error show]; } else { // Finally we can make the call - LinphoneProxyConfig *proxyCfg; - linphone_core_get_default_proxy(theLinphoneCore, &proxyCfg); LinphoneCallParams *lcallParams = linphone_core_create_default_call_parameters(theLinphoneCore); if ([self lpConfigBoolForKey:@"edge_opt_preference"] && (self.network == network_2g)) { LOGI(@"Enabling low bandwidth mode"); diff --git a/Classes/LinphoneUI/UICallButton.h b/Classes/LinphoneUI/UICallButton.h index 1e67fe164..55168d6ca 100644 --- a/Classes/LinphoneUI/UICallButton.h +++ b/Classes/LinphoneUI/UICallButton.h @@ -26,4 +26,6 @@ @property (nonatomic, strong) IBOutlet UITextField* addressField; +- (void)updateVideoPolicy; + @end diff --git a/Classes/LinphoneUI/UICallButton.m b/Classes/LinphoneUI/UICallButton.m index 3b7d37f6b..32b5381a5 100644 --- a/Classes/LinphoneUI/UICallButton.m +++ b/Classes/LinphoneUI/UICallButton.m @@ -93,4 +93,15 @@ } } +- (void)updateVideoPolicy { + if (linphone_core_get_video_policy([LinphoneManager getLc])->automatically_initiate) { + [self setImage:[UIImage imageNamed:@"call_video_start_default.png"] forState:UIControlStateNormal]; + [self setImage:[UIImage imageNamed:@"call_video_start_over.png"] forState:UIControlStateHighlighted]; + [self setImage:[UIImage imageNamed:@"call_video_start_disabled.png"] forState:UIControlStateDisabled]; + } else { + [self setImage:[UIImage imageNamed:@"call_start_body_default.png"] forState:UIControlStateNormal]; + [self setImage:[UIImage imageNamed:@"call_start_body_over.png"] forState:UIControlStateHighlighted]; + [self setImage:[UIImage imageNamed:@"call_start_body_disabled.png"] forState:UIControlStateDisabled]; + } +} @end