diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index b6f101bb7..6490e6962 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -385,10 +385,24 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char } else { data = (LinphoneCallAppData*) linphone_call_get_user_pointer(call); } + + if (state == LinphoneCallIncomingReceived &&[[UIDevice currentDevice] respondsToSelector:@selector(isMultitaskingSupported)] && [UIApplication sharedApplication].applicationState != UIApplicationStateActive) { - LinphoneCallLog* callLog=linphone_call_get_call_log(call); + + /*first step is to re-enable ctcall center*/ + [self setupGSMInteraction]; + + /*should we reject this call ?*/ + if ([callCenter currentCalls]!=nil) { + [LinphoneLogger logc:LinphoneLoggerLog format:"Mobile call ongoing... rejecting call from [%s]",linphone_address_get_username(linphone_call_get_call_log(call)->from)]; + linphone_core_decline_call([LinphoneManager getLc], call,LinphoneReasonBusy); + return; + } + + + LinphoneCallLog* callLog=linphone_call_get_call_log(call); NSString* callId=[NSString stringWithUTF8String:callLog->call_id]; const LinphoneAddress *addr = linphone_call_get_remote_address(call); NSString* address = nil; @@ -1327,9 +1341,10 @@ static void audioRouteChangeListenerCallback ( - (void)setupGSMInteraction { - if (callCenter != nil) + if (callCenter != nil) { + callCenter.callEventHandler=NULL; [callCenter release]; - + } callCenter = [[CTCallCenter alloc] init]; callCenter.callEventHandler = ^(CTCall* call) { // post on main thread diff --git a/Classes/fr.lproj/ChatRoomViewController.xib b/Classes/fr.lproj/ChatRoomViewController.xib index abcf137a7..a9a24015c 100644 --- a/Classes/fr.lproj/ChatRoomViewController.xib +++ b/Classes/fr.lproj/ChatRoomViewController.xib @@ -260,7 +260,7 @@ _NS:9 NO - Envoyez + Envoyer IBCocoaTouchFramework NO @@ -272,7 +272,7 @@ 0.0 0.0 0.0 - Envoyez + Envoyer 2 MCAwIDAAA diff --git a/submodules/linphone b/submodules/linphone index aa49870d7..e829fa6e2 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit aa49870d7117df201ea56838f34fe651b458d0ee +Subproject commit e829fa6e222f37de9c26e4e82f0227078f4b6629