From 93c8a62dbd014fa588cc53c1516a1d67508e04bf Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Thu, 8 Nov 2012 23:37:36 +0100 Subject: [PATCH 01/14] fix x264 bug on iphone5 --- linphone.xcodeproj/project.pbxproj | 2 +- submodules/build/builders.d/x264.mk | 13 ++++++++----- submodules/externals/x264 | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index af55dde2f..57e51dc3a 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -5680,7 +5680,7 @@ HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = "79E53132-649F-48B3-A931-24792E466A11"; + PROVISIONING_PROFILE = "D0073029-09E3-435D-B758-DA3E8EFDA2A3"; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2"; diff --git a/submodules/build/builders.d/x264.mk b/submodules/build/builders.d/x264.mk index fbe943686..203ffe351 100644 --- a/submodules/build/builders.d/x264.mk +++ b/submodules/build/builders.d/x264.mk @@ -43,12 +43,12 @@ ifneq (,$(findstring armv7,$(host))) endif x264_dir?=externals/x264 -$(BUILDER_SRC_DIR)/$(x264_dir)/patched : - cd $(BUILDER_SRC_DIR)/$(x264_dir) \ - && git apply $(BUILDER_SRC_DIR)/build/builders.d/x264.patch \ - && touch $(BUILDER_SRC_DIR)/$(x264_dir)/patched +#$(BUILDER_SRC_DIR)/$(x264_dir)/patched : +# cd $(BUILDER_SRC_DIR)/$(x264_dir) \ +# && git apply $(BUILDER_SRC_DIR)/build/builders.d/x264.patch \ +# && touch $(BUILDER_SRC_DIR)/$(x264_dir)/patched -$(BUILDER_BUILD_DIR)/$(x264_dir)/configure: $(BUILDER_SRC_DIR)/$(x264_dir)/patched +$(BUILDER_BUILD_DIR)/$(x264_dir)/configure: mkdir -p $(BUILDER_BUILD_DIR)/$(x264_dir) cd $(BUILDER_BUILD_DIR)/$(x264_dir)/ \ && rsync -av --exclude ".git" $(BUILDER_SRC_DIR)/$(x264_dir)/* . @@ -66,6 +66,9 @@ clean-x264: veryclean-x264: -cd $(BUILDER_BUILD_DIR)/$(x264_dir) && make distclean + cd $(BUILDER_SRC_DIR)/$(x264_dir)/ \ + && git checkout common/arm/asm.S \ + && rm -f patched rm -rf $(BUILDER_BUILD_DIR)/$(x264_dir) clean-makefile-x264: diff --git a/submodules/externals/x264 b/submodules/externals/x264 index 926a03a9c..f6a8615ab 160000 --- a/submodules/externals/x264 +++ b/submodules/externals/x264 @@ -1 +1 @@ -Subproject commit 926a03a9c1f48d0fbd54b0e802d740774c100a78 +Subproject commit f6a8615ab0c922ac2cb5c82c9824f6f4742b1725 From d5c4cc36037748c0def1d5529b4e4bd9a73ab2a0 Mon Sep 17 00:00:00 2001 From: Simon Morlat Date: Fri, 9 Nov 2012 02:32:43 +0100 Subject: [PATCH 02/14] update linphone submodule for important chat fix. --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index 42b4cb544..b35e47746 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 42b4cb544661f129d2959ca9faf492b9b90cf197 +Subproject commit b35e4774658ab2fe666c4b7ec2f93d8ebe59d91a From 89a57270a8175ced1daac5db0ba5cff5470529d6 Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Fri, 9 Nov 2012 11:09:52 +0100 Subject: [PATCH 03/14] Fix call bar for iPhone 5 --- .../LinphoneUI/UICompositeViewController.m | 2 +- Classes/LinphoneUI/en.lproj/UICallBar.xib | 470 +++++++++++++++++- Classes/LinphoneUI/fr.lproj/UICallBar.xib | 422 ++++++++++++++-- Resources/callbar_left_padding.png | Bin 0 -> 3729 bytes Resources/callbar_right_padding.png | Bin 0 -> 3368 bytes linphone.ldb/Contents.plist | 12 +- .../UICallBar/{10 => 11}/UICallBar.xib | 470 +++++++++++++++++- linphone.xcodeproj/project.pbxproj | 12 + 8 files changed, 1313 insertions(+), 75 deletions(-) create mode 100644 Resources/callbar_left_padding.png create mode 100644 Resources/callbar_right_padding.png rename linphone.ldb/Resources/LinphoneUI/UICallBar/{10 => 11}/UICallBar.xib (87%) diff --git a/Classes/LinphoneUI/UICompositeViewController.m b/Classes/LinphoneUI/UICompositeViewController.m index 775e8c1eb..433987ad1 100644 --- a/Classes/LinphoneUI/UICompositeViewController.m +++ b/Classes/LinphoneUI/UICompositeViewController.m @@ -527,7 +527,7 @@ tabFrame.origin.y = viewFrame.size.height; tabFrame.origin.x = viewFrame.size.width; tabFrame.size.height = self.tabBarViewController.view.frame.size.height; - tabFrame.size.width = self.tabBarViewController.view.frame.size.width; + //tabFrame.size.width = self.tabBarViewController.view.frame.size.width; tabFrame.origin.y -= tabFrame.size.height; tabFrame.origin.x -= tabFrame.size.width; contentFrame.size.height = tabFrame.origin.y - contentFrame.origin.y; diff --git a/Classes/LinphoneUI/en.lproj/UICallBar.xib b/Classes/LinphoneUI/en.lproj/UICallBar.xib index 26e33847b..3398db0d7 100644 --- a/Classes/LinphoneUI/en.lproj/UICallBar.xib +++ b/Classes/LinphoneUI/en.lproj/UICallBar.xib @@ -2,9 +2,9 @@ 1536 - 11E53 + 11G63 2840 - 1138.47 + 1138.51 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -35,13 +35,14 @@ - 301 + 266 - -2147483356 + -2147483355 {{0, 335}, {320, 125}} + _NS:9 1 @@ -56,13 +57,14 @@ - 288 + 293 274 {281, 260} + _NS:9 2 @@ -78,6 +80,7 @@ 292 {{-20, 10}, {107, 54}} + 1 @@ -121,6 +124,7 @@ 292 {{87, 10}, {106, 54}} + NO NO @@ -148,6 +152,7 @@ 292 {{193, 10}, {107, 54}} + NO NO @@ -175,6 +180,7 @@ 292 {{-20, 72}, {107, 54}} + NO NO @@ -202,6 +208,7 @@ 292 {{87, 72}, {106, 54}} + NO NO @@ -229,6 +236,7 @@ 292 {{193, 72}, {107, 54}} + NO NO @@ -256,6 +264,7 @@ 292 {{-20, 134}, {107, 54}} + NO NO @@ -283,6 +292,7 @@ 292 {{87, 134}, {106, 54}} + NO NO @@ -310,6 +320,7 @@ 292 {{193, 134}, {107, 54}} + NO NO @@ -337,6 +348,7 @@ 292 {{-20, 196}, {107, 54}} + NO NO @@ -364,6 +376,7 @@ 292 {{87, 196}, {106, 54}} + NO NO @@ -391,6 +404,7 @@ 292 {{193, 196}, {107, 54}} + NO NO @@ -416,6 +430,7 @@ {{20, 57}, {281, 260}} + _NS:9 @@ -427,13 +442,14 @@ - 292 + 293 292 {{3, 0}, {77, 68}} + _NS:9 NO @@ -491,6 +507,7 @@ 292 {{3, 58}, {77, 68}} + _NS:9 NO @@ -530,6 +547,7 @@ {{240, 208}, {80, 126}} + _NS:9 @@ -538,13 +556,46 @@ - 292 + 293 + + + 292 + {{-44, -8}, {44, 90}} + + + + _NS:9 + 100 + NO + IBCocoaTouchFramework + + NSImage + callbar_left_padding.png + + + + + 292 + {{320, -8}, {44, 90}} + + + + _NS:9 + 101 + NO + IBCocoaTouchFramework + + NSImage + callbar_right_padding.png + + 290 {{0, 135}, {320, 2000}} + _NS:9 @@ -559,6 +610,7 @@ 292 {80, 67} + _NS:9 NO @@ -605,6 +657,7 @@ -2147483356 {{20, 20}, {37, 37}} + _NS:9 NO @@ -617,6 +670,7 @@ 292 {{80, 0}, {80, 67}} + _NS:9 NO @@ -663,6 +717,7 @@ 292 {{160, 0}, {80, 67}} + _NS:9 NO @@ -709,6 +764,7 @@ 292 {{240, 0}, {80, 67}} + _NS:9 NO @@ -755,6 +811,7 @@ 264 {{0, 67}, {105, 68}} + _NS:9 NO @@ -791,6 +848,7 @@ -2147483384 {{0, 67}, {105, 68}} + _NS:9 NO @@ -820,6 +878,7 @@ 264 {{105, 67}, {111, 68}} + _NS:9 NO @@ -849,7 +908,8 @@ 264 {{215, 67}, {105, 68}} - + + _NS:9 NO 27 @@ -884,7 +944,8 @@ {{0, 325}, {320, 135}} - + + _NS:9 18 @@ -893,21 +954,22 @@ {320, 460} + _NS:9 - NO IBCocoaTouchFramework - 301 + 266 - -2147483356 + -2147483355 {{0, 248}, {480, 72}} + _NS:9 @@ -923,13 +985,14 @@ - 288 + 293 274 {281, 260} + _NS:9 2 @@ -942,6 +1005,7 @@ 292 {{-20, 10}, {107, 54}} + 1 @@ -964,6 +1028,7 @@ 292 {{87, 10}, {106, 54}} + NO NO @@ -982,6 +1047,7 @@ 292 {{193, 10}, {107, 54}} + NO NO @@ -1000,6 +1066,7 @@ 292 {{-20, 72}, {107, 54}} + NO NO @@ -1018,6 +1085,7 @@ 292 {{87, 72}, {106, 54}} + NO NO @@ -1036,6 +1104,7 @@ 292 {{193, 72}, {107, 54}} + NO NO @@ -1054,6 +1123,7 @@ 292 {{-20, 134}, {107, 54}} + NO NO @@ -1072,6 +1142,7 @@ 292 {{87, 134}, {106, 54}} + NO NO @@ -1090,6 +1161,7 @@ 292 {{193, 134}, {107, 54}} + NO NO @@ -1108,6 +1180,7 @@ 292 {{-20, 196}, {107, 54}} + NO NO @@ -1126,6 +1199,7 @@ 292 {{87, 196}, {106, 54}} + NO NO @@ -1144,6 +1218,7 @@ 292 {{193, 196}, {107, 54}} + NO NO 14 @@ -1159,6 +1234,7 @@ {{91, 0}, {281, 260}} + _NS:9 @@ -1167,13 +1243,14 @@ - 292 + 293 292 {65, 55} + _NS:9 NO @@ -1215,6 +1292,7 @@ 292 {{0, 51}, {65, 55}} + _NS:9 NO @@ -1254,6 +1332,7 @@ {{415, 140}, {65, 105}} + _NS:9 @@ -1262,13 +1341,40 @@ - 292 + 293 + + + 292 + {{-44, -8}, {44, 90}} + + + + _NS:9 + 100 + NO + IBCocoaTouchFramework + + + + + 292 + {{480, -8}, {44, 90}} + + + + _NS:9 + 101 + NO + IBCocoaTouchFramework + + 290 {{0, 82}, {480, 2000}} + _NS:9 @@ -1283,6 +1389,7 @@ 292 {{65, 0}, {65, 82}} + _NS:9 NO @@ -1329,6 +1436,7 @@ -2147483356 {{79, 20}, {37, 37}} + _NS:9 NO @@ -1341,6 +1449,7 @@ 292 {{130, 0}, {65, 82}} + _NS:9 NO @@ -1387,6 +1496,7 @@ 292 {{285, 0}, {65, 82}} + _NS:9 NO @@ -1433,6 +1543,7 @@ 292 {{350, 0}, {65, 82}} + _NS:9 NO @@ -1479,6 +1590,7 @@ 264 {65, 82} + _NS:9 NO @@ -1512,6 +1624,7 @@ -2147483384 {65, 82} + _NS:9 NO @@ -1541,6 +1654,7 @@ 264 {{195, 0}, {90, 82}} + _NS:9 NO @@ -1570,7 +1684,8 @@ 264 {{415, 0}, {65, 82}} - + + _NS:9 NO 27 @@ -1602,7 +1717,8 @@ {{0, 238}, {480, 82}} - + + _NS:9 18 @@ -1611,10 +1727,10 @@ {480, 320} + _NS:9 - NO 3 3 @@ -2035,6 +2151,8 @@ + + buttons @@ -2361,6 +2479,8 @@ + + buttons @@ -2437,6 +2557,30 @@ background + + 143 + + + leftPadding + + + 144 + + + rightPadding + + + 145 + + + rightPadding + + + 146 + + + leftPadding + @@ -2535,6 +2679,10 @@ com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -2605,14 +2753,296 @@ - 142 + 163 + + + + + TPMultiLayoutViewController + UIViewController + + UIView + UIView + + + + landscapeView + UIView + + + portraitView + UIView + + + + IBProjectSource + ./Classes/TPMultiLayoutViewController.h + + + + UICallBar + TPMultiLayoutViewController + + id + id + id + id + id + + + + onConferenceClick: + id + + + onOptionsAddClick: + id + + + onOptionsClick: + id + + + onOptionsTransferClick: + id + + + onPadClick: + id + + + + UIButton + UIToggleButton + UIDigitButton + UIDigitButton + UIDigitButton + UIHangUpButton + UIMicroButton + UIDigitButton + UIDigitButton + UIButton + UIToggleButton + UIButton + UIView + UIView + UIPauseButton + UIDigitButton + UIDigitButton + UIDigitButton + UISpeakerButton + UIDigitButton + UIDigitButton + UIDigitButton + UIVideoButton + UIDigitButton + + + + conferenceButton + UIButton + + + dialerButton + UIToggleButton + + + eightButton + UIDigitButton + + + fiveButton + UIDigitButton + + + fourButton + UIDigitButton + + + hangupButton + UIHangUpButton + + + microButton + UIMicroButton + + + nineButton + UIDigitButton + + + oneButton + UIDigitButton + + + optionsAddButton + UIButton + + + optionsButton + UIToggleButton + + + optionsTransferButton + UIButton + + + optionsView + UIView + + + padView + UIView + + + pauseButton + UIPauseButton + + + sevenButton + UIDigitButton + + + sharpButton + UIDigitButton + + + sixButton + UIDigitButton + + + speakerButton + UISpeakerButton + + + starButton + UIDigitButton + + + threeButton + UIDigitButton + + + twoButton + UIDigitButton + + + videoButton + UIVideoButton + + + zeroButton + UIDigitButton + + + + IBProjectSource + ./Classes/UICallBar.h + + + + UIDigitButton + UILongTouchButton + + addressField + UITextField + + + addressField + + addressField + UITextField + + + + IBProjectSource + ./Classes/UIDigitButton.h + + + + UIHangUpButton + UIButton + + IBProjectSource + ./Classes/UIHangUpButton.h + + + + UILongTouchButton + UIButton + + IBProjectSource + ./Classes/UILongTouchButton.h + + + + UIMicroButton + UIToggleButton + + IBProjectSource + ./Classes/UIMicroButton.h + + + + UIPauseButton + UIToggleButton + + IBProjectSource + ./Classes/UIPauseButton.h + + + + UISpeakerButton + UIToggleButton + + IBProjectSource + ./Classes/UISpeakerButton.h + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + UITransparentView + UIView + + IBProjectSource + ./Classes/UITransparentView.h + + + + UIVideoButton + UIToggleButton + + waitView + UIActivityIndicatorView + + + waitView + + waitView + UIActivityIndicatorView + + + + IBProjectSource + ./Classes/UIVideoButton.h + + + - 0 IBCocoaTouchFramework YES 3 + {88, 180} + {88, 180} {209, 136} {130, 163} {209, 136} diff --git a/Classes/LinphoneUI/fr.lproj/UICallBar.xib b/Classes/LinphoneUI/fr.lproj/UICallBar.xib index 6fa108778..04797317e 100644 --- a/Classes/LinphoneUI/fr.lproj/UICallBar.xib +++ b/Classes/LinphoneUI/fr.lproj/UICallBar.xib @@ -1,21 +1,21 @@ - 1280 - 11E53 - 1938 - 1138.47 + 1536 + 11G63 + 2840 + 1138.51 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 933 + 1926 - IBUIButton - IBUIActivityIndicatorView - IBUIView - IBUIImageView IBProxyObject + IBUIActivityIndicatorView + IBUIButton + IBUIImageView + IBUIView com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -35,11 +35,11 @@ - 301 + 266 - -2147483356 + -2147483355 {{0, 335}, {320, 125}} _NS:9 @@ -56,7 +56,7 @@ - 288 + 293 @@ -427,7 +427,7 @@ - 292 + 293 @@ -538,8 +538,38 @@ - 292 + 293 + + + 292 + {{-44, -8}, {44, 90}} + + + _NS:9 + 100 + NO + IBCocoaTouchFramework + + NSImage + callbar_left_padding.png + + + + + 292 + {{320, -8}, {44, 90}} + + + _NS:9 + 101 + NO + IBCocoaTouchFramework + + NSImage + callbar_right_padding.png + + 290 @@ -849,7 +879,7 @@ 264 {{215, 67}, {105, 68}} - + _NS:9 NO 27 @@ -884,7 +914,7 @@ {{0, 325}, {320, 135}} - + _NS:9 18 @@ -895,16 +925,15 @@ _NS:9 - NO IBCocoaTouchFramework - 301 + 266 - -2147483356 + -2147483355 {{0, 248}, {480, 72}} @@ -922,7 +951,7 @@ - 288 + 293 @@ -1166,7 +1195,7 @@ - 292 + 293 @@ -1261,8 +1290,32 @@ - 292 + 293 + + + 292 + {{-44, -8}, {44, 90}} + + + _NS:9 + 100 + NO + IBCocoaTouchFramework + + + + + 292 + {{480, -8}, {44, 90}} + + + _NS:9 + 101 + NO + IBCocoaTouchFramework + + 290 @@ -1569,7 +1622,7 @@ 264 {{415, 0}, {65, 82}} - + _NS:9 NO 27 @@ -1601,7 +1654,7 @@ {{0, 238}, {480, 82}} - + _NS:9 18 @@ -1612,7 +1665,6 @@ _NS:9 - NO 3 3 @@ -2033,6 +2085,8 @@ + + buttons @@ -2359,6 +2413,8 @@ + + buttons @@ -2435,6 +2491,30 @@ background + + 143 + + + leftPadding + + + 144 + + + rightPadding + + + 145 + + + rightPadding + + + 146 + + + leftPadding + @@ -2533,6 +2613,10 @@ com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -2603,14 +2687,296 @@ - 142 + 163 + + + + + TPMultiLayoutViewController + UIViewController + + UIView + UIView + + + + landscapeView + UIView + + + portraitView + UIView + + + + IBProjectSource + ./Classes/TPMultiLayoutViewController.h + + + + UICallBar + TPMultiLayoutViewController + + id + id + id + id + id + + + + onConferenceClick: + id + + + onOptionsAddClick: + id + + + onOptionsClick: + id + + + onOptionsTransferClick: + id + + + onPadClick: + id + + + + UIButton + UIToggleButton + UIDigitButton + UIDigitButton + UIDigitButton + UIHangUpButton + UIMicroButton + UIDigitButton + UIDigitButton + UIButton + UIToggleButton + UIButton + UIView + UIView + UIPauseButton + UIDigitButton + UIDigitButton + UIDigitButton + UISpeakerButton + UIDigitButton + UIDigitButton + UIDigitButton + UIVideoButton + UIDigitButton + + + + conferenceButton + UIButton + + + dialerButton + UIToggleButton + + + eightButton + UIDigitButton + + + fiveButton + UIDigitButton + + + fourButton + UIDigitButton + + + hangupButton + UIHangUpButton + + + microButton + UIMicroButton + + + nineButton + UIDigitButton + + + oneButton + UIDigitButton + + + optionsAddButton + UIButton + + + optionsButton + UIToggleButton + + + optionsTransferButton + UIButton + + + optionsView + UIView + + + padView + UIView + + + pauseButton + UIPauseButton + + + sevenButton + UIDigitButton + + + sharpButton + UIDigitButton + + + sixButton + UIDigitButton + + + speakerButton + UISpeakerButton + + + starButton + UIDigitButton + + + threeButton + UIDigitButton + + + twoButton + UIDigitButton + + + videoButton + UIVideoButton + + + zeroButton + UIDigitButton + + + + IBProjectSource + ./Classes/UICallBar.h + + + + UIDigitButton + UILongTouchButton + + addressField + UITextField + + + addressField + + addressField + UITextField + + + + IBProjectSource + ./Classes/UIDigitButton.h + + + + UIHangUpButton + UIButton + + IBProjectSource + ./Classes/UIHangUpButton.h + + + + UILongTouchButton + UIButton + + IBProjectSource + ./Classes/UILongTouchButton.h + + + + UIMicroButton + UIToggleButton + + IBProjectSource + ./Classes/UIMicroButton.h + + + + UIPauseButton + UIToggleButton + + IBProjectSource + ./Classes/UIPauseButton.h + + + + UISpeakerButton + UIToggleButton + + IBProjectSource + ./Classes/UISpeakerButton.h + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + UITransparentView + UIView + + IBProjectSource + ./Classes/UITransparentView.h + + + + UIVideoButton + UIToggleButton + + waitView + UIActivityIndicatorView + + + waitView + + waitView + UIActivityIndicatorView + + + + IBProjectSource + ./Classes/UIVideoButton.h + + + - 0 IBCocoaTouchFramework YES 3 + {88, 180} + {88, 180} {209, 136} {130, 163} {209, 136} @@ -2702,6 +3068,6 @@ {160, 134} {130, 163} - 933 + 1926 diff --git a/Resources/callbar_left_padding.png b/Resources/callbar_left_padding.png new file mode 100644 index 0000000000000000000000000000000000000000..c54a13b3cfc7f72090fc42553705f232bb35cc11 GIT binary patch literal 3729 zcmaJ^c|4ST_nwWhhUk%0#*oHinFYg4WSa>wGE&wuV`eaxnZXnz%OJ9*6v>_~sk9(M zNTEg1rbRJPDJqm?8N8#Xdf(sY_x9eOdpYNP&UKyZe9!skPH}Ryk(F8}1pokK?Q99o zqOY6isgn=~0Dyi<1D+yBg-dkf?qvIN!>OSRfF+&n!+_ZZQ~emu3@V)$a+_fa0Dv`_ zE^b^mk^`Q`4%Vlxgi|my!5)S*3!VNTo z|0Bwcx=|3$5bAHpZ!hRl;=)jN>R1OlYk6LNzS0ah@zf*&Q ze`kkrof-eu`(KH}TzDJ?(wPy)-WN&}4bE3%r4$Em9m=3`*`Y3McF?a=bn<6&*G)RM8ey#!njlxjbTSHgNr!ynM^t!ZD@?cVNHk_j4=j{CSt5i za40JyVNnnmi}+-wm)K5mLZrUs!U*nGWRp++d|pFupdq1 znSa(|{YSo^So)u}5dMfoio_sSM*AP5{uL7K&x-kbaYfGW)n~9o`yMJ#S|c zlIwB#rRC8HbEm^R>6;A5U0E-|jT3B{3+6FY3Y}i=N^aNEx>sTpZv44#t)A3-S0!%r zUvT}DYUYPi1gSO{q0G43RXp}Sa&`?3i~=YBEkzM~a4}Pf5AYFAep*;oW}9PB265l? zpu=?7(tQhcSnkzjU`4EOURGBj1{F0wQy7=1@|km_^?-#bIQf7rHrGqkxkft|eT)Bk zwDypTac+5*wDOVU9$!HN$5-I;u%zbtwCo5u!A7<#2zqdcM&!7;sWkF zyhG%Djmj=d=*RU1GV2Qp5I#9ULn^DUnv;De{j1l$69+@&tFGS%m$x~+>il@Fr#SA3 zHsZD!w7#b5ozEMO`GsC@8Kij>b@tn+99Z$VZ zgkqOf)c=YejD1RFTX@GT%_ur713gXYs=C&_g44AF%wu0C>knGo(;~OI ziErFvFyHXXA}3xKii;o1=y>o38!%aQy-YlFodZt|!kgZ5Y!sZJKE7jYt&D0pD9)~p zx7N*F%t@(kvW+TFo40SejyRu(%+0u89cv}y;E*goLKpTr-Tj_pd63V592(pjE97@9 zLxQY#35oSGkW}7~K~=2~K1ksL0*;>Y6bBW?MqFPcT$b$;YmHel&9mGlyU{3OcAbno zKl-d6b8Tv=G3gj0*+e^80{=mGRllR-{CA-mKCQ$)q;Ho~fsz-Oo!6^n_T9)Q-@<59 zF$cLG#P;vK9o_OYY~uXP%-n`>{GD%?np+?>cTt}b4{&3ian4&m)fkx4rW7C6FrFIo zZkOhOUxF_1y>(tMLp(VfO)qXx?f^-Zp^0v3>Z#w`9rnP653HI6eCF#2)ZH%}<_rqN zrJQYIB#y>d6e(vZLjnrha*B7RtXmA&RZ)b{PHF*X+Ul|ai%V;@!aZT7{vu>T~oO2yLVWEnlik_rGp5S zWb`C!S@Ytn@KI+fDXITsad&`jst#6bSp#Nd zoxQ5)%$WOUuR|qYjL!wE32`VIN9d*=cvKo!kA2F!^$bpbFY_E-sF?Bvwb40C0OJ7&9Gne*L$#UYJ~oa^EtaX_{JpxoqNNLG9karC1rUg~LmWm$&=P z)>1B!-&7oi+Q%lzEr0t`q_#cB@<5DOU~6N3(!-^U!*avBr%pg48o8?Z1R*MGue@D( z?^j*r_lVRrkbs{ywnM2ya7SsNy5K_TYjQyG&AFGO(xw;{nI8Vq0t|!Ux0mH+*O?3= zqSf_w_=Y@*H<`{ip>_|HvJVG5v46v>tj%(dCLb^Nse4Y7!1YacGY8Tgvpo05K_{KP zAn7@;%2f*{_r|wFv`}$=a>B2jVROyPg8`bZ!#d8{wr3s$-JYL`e*P@lH=BIIN<2xk z=GDN-lP!Ut+mC70?;o!*ys+1sB?tj+I<$DKpEalwcm+|H@8{%iLjft~{veff_`haE zN*vXc_hjhEM3<)|z*&Xc`s~7(>JNn z-g+XX`Au4nMuTS;-sgzzr*=Q^JNaC~q>fgZPxG3)I|~!tgJoRZZ;TM~DzjFJ_uGdE zef3W5@2*WcLS3&}w0`>9)lKN^DZ0OeWYn_D>i5v;PNJRZ$AgL|9$B3;+hym{nS-4v z>i{(j-WmgMMW)ogHLOOWRE_g0w<4W);bc`+?T&YbUnyVBo?lnA&&BA_un-zVadbe&%``RN{5{!Z6i-5TO+;Z?B_BY)mOP# z^~phSE_D@Fb;n=q&5y1f>0;70Z*sidec+)M`Ml=X1g|T<&LH8=ln)Fsh9QH}|Nhe3 zW&EkKOH6oX!L0X-!*>0I-DkZ%9H=ZIuWhD9jfeN37svW{l&UIlYBrs6p2(X|ee+d% zc`dP(C%9`{(bMF*kUAEv^r>{eFyC{a>x5VMlXP0C9W((mN?80TDY`nsuH0cP)8Ux9`D?@+JN~a|CoG0YT zz1ei*&Kf~Q_oYhB9$beSwl7(bxsF@)E()j=?;<|d1Djm@r=czr>*NQpVivn|Ck;oHtQ{;&5BY5 zYP|A1_f2R2QP9rS=f%GCE2jg!NiX`V@`Bq*Qe^d= zHijN3`)%nV3R!j+jysgy2_L=aUUTN0pM78P{iN24yn~WfHeqrRE#vlbrp`IdM%a6u z1s%Hi?r5)7sh&Uz(FGNueFkv%YWVa@={B z7@zlHNp(%W8(Sku9wgvK8{&Y*ba;Hm{Oy_T8L;;4Xoo7_~pL`YAFOJquii|;tAS=wK`%CN^~@SCA+`%9=Iir5ZuXjcL% zqJTU9(||ZAphQ6h`G4X+-IZj8$zV{7@{o~@yX|U4=jnGJ$!{&|F4{c(eh-1(aPG(& zJ7e(z%}bIu`~|}Fnhg52j1xNEl=F;xNnkkxY}vCQ0`skDTp~ocFkSZrwhaP^X;hk9 zn2h`z7xF=D{91a>Rc}>UREgqTmD_RuD!urlN5xqu8zToL?nk8npytjR@xXg&ss1RV zGW(o_7UZV-Ldi$ih12BrvRmJ;rBqb(5lLlw1&g`p2dN!*{7rfjT7m1nQf{8l4%xHK z`kqRCo9@iTHAkO01}k!#c!tOF`m`##;!yy4N*+nU=lByyPStX7ku&n*?N zK_l5Tsd5BpBkif7gDqKj*{?%8mA_dRq(uQ$O5}{kx)Y?NLvMUC4~t@O)&%$P)ul{qhdi+Kq)FJ zC^l3Sf*^t*tVpvX2-sE-Sdb!o!BuyEtlvB{cg{WYzV9jb{FyX=KM%MPLJ0zaz`Z<) zfzo$~^tqxS4}m}A-o_qoyVteL5OoWn+gJ6OiBb82vWjhb~JMT~`j$&s=l5PL@fheF#1@&GCr!C(=PBh|G?fDukWZm=PtNgP)& zlHnQ41%qP!f@!haXm;U9M+d-OfR_p|K^_GVFt@X!@B#wzt1ez@FS=1k;46f;jez_+ zsSuJs;L7HLfQ^NfISq}$09dRA#@Ysp#rz6bqA`{zwDiWBW32HuSiGez@a;lMqjAIO z_&}ojw^-600U62TaquVvt}ZO^arNEZ%o+_&;3iPq~Z3z~o3H6G1LxCm8O|Wix@VMdKMi&&BGe zdf&L=KhMSbr(BdY8Pwv@{_Ci}yQK58X#N;n>E_4igDmO1bESiw_luwr0#Q8bMRX1p zJfYtDGNCO~DM}OFGEsA!o*h{bYJ2Tp_|>UR1IUJr>DxVitQYPk%Xt?*rz+dYl~*Fy z8BY(6nTpr`rl@dNclTAj$o|ZLyPbRMu1xilXL>Fas=Tb-lWg*0JTZgP#ovM+9&TTu z;#d=xXeLZyjD3ixt@O@p;>ari?pt-_;7)U4`*PpcrXMu9Zt_{VqoJuu0<_+%2P6;d zdedS47>LaISbC2uV#hr)@j1tj0D}0 z7kkB4DiB#UFE^;VlWwXm)aoi!8JfJ=>4QweTc_a(A| ztYszcHz-Aq&Q77k?68^>WpjzQcY4Q~%dXE1ZBlsGzoFKp_=qKBvc<4Zvly>^@cW&cSa_HE4zUc^xllYpfp>( z&Q)=@8JPNen!8M+K1DudcJ>7%dcc?42n2|^p%qpFr{n!?q@D;v@mgWXt2v=$sC#(t zh^N){;mbgMx#M;d>WPZRLdU|ibH24-B47q%uTjc6t~F{KhRf#~TP{u+>!t%|y8ilW z+*n*IT*wK_W5uZ+-7N6<5)3_BsrLXVmfwr8->f39AgR%RZ>`cm?&aSe>d?`_$|_T- ziD}8uwB&f>K9T?zqK_BJYEa|L);X<-^)kDNat=P38hl%`Y+}<)so$rbH~mfX`H`g9 zzI|pf%{ML06Y!@xmf|9Q;Z|*b4VK&pt@6sfhMl#36Pm7QPtLFOJ2PQ48TwQu$KOT? zC~e|dGfNI15?p*~pT7DzZR09DHUH91kQ~rFqu=l>^w7y%^yxa>H0!p(5S z!PhLCeT|Z^u*%M26Rz1M`}FoJ8lzKYg!>2)^jn-Qcn3N1$j9g>;v$@A#nYZ0AO0Yw zo|JJlHY-tzrj?134;lCA3see<_692IC>gwK5+?&vO)aB!ME3MTTHb9}2!yeM+>CnffI(PSArn>u_G?o;^+`~`pZtpE{ zg?W@fkH5#4UXQ8UBsb)N;o+Q9#)X026_&n^SU z+!wm8{z4x6{dwgVgf2hYL7%p=^JG2DX_as2eV;+qlS^a&7f80n?kk;j}up>{5itbKyBEvrINq zdH8XxZB`T8s_L|HyK9%2e%QQfupLn+tLcmWkA<_Q?iAd!Q#hBtYZ85-F+L!BM;>p` z41TPqzP|OqIL@qGJH|9bziUaOGrRVHf18$VOm*EA`A!orCdP+JuwS$E@gByq7W?6R zb9l`zYi{XvpZuuO>nk6of_dkE2^vf|gRr&IGyVkKNq9HUx9Gbf*09v_qqKGH9|?as zIqo4GzVF>a4^_MR4ELe{wpUyLQ|j8{gnj3iqWy%}Tiutd>+q>?#bWtid+>c>*?#sC zO}4SFGJ(`P)lUu`yrwmCz?yMVSfX}xgK12b0~;0FbFRS;&@E^9n3m*p5sE`S6w7?g zX`8z3&>uElGn~Oy=V;SUvGWGv)W@hVQ$F`K7g;qK1)c6JId+x^FcZeoU7lFm zgi-5LR)vEZo>=(6&c~)!+{u@cKNUw&YY>ZHlt0_KOU)y%Pk@@v(EJ zjoup7Q1$6YF+-$}$FFEMp^H5F%MXq-VYiCgV#~7EcJ|C7MB-L~byCwnE_J8<@ltPYDw%siggn!u zWYRTq3Xa3NCv|KVQ`Zp!wq1B0I1&NPyc}qN)XeR&LDI83K*p}?Y-rnvL3V(*?ZTI> z5hMN9`RhMP3SQ^LzI~-P(}>G2Zq0J?Ie*YV|LokOl&Ml&rqd1^K+jnHVE04^_Sl3^ z1^ZCI=cffoGHf+DU8HzKR0faJ!RXz6k))O$)ciTrqkNCGKys!gcz(w4(2)uY)E$9g z)Ur+P;OdurbR~WLBLYV|Ta}d&naGWfv1rq8UA`HWH!gpqFcETzCn@yH_KL4!$oi_I zp_*tniL9?g>)!@6Nb33e^@s5{>?_{J73=+pzT3Oqqs9Y6r@y$1lt7 zPI>PRZf!$AbhT%EROHdIWtp(^myz(k!1&(oYb7L;%7DYkrt?~K1VGL9LvDK82PR}x zXp-Gbnds4*8FT)UItpZiJO>PD+P#WNS+5AsP?$yZWhrl7)^Q__i`9PS4fUwXf}OA2 zyzQxzvwDPeXYqsUCLL|q*M=#!^2;ciu7bZi6$3O7HX5dv1s?RPZ z)%=Mqd3&YC;^9@9d539trQJHtUkm?fz2Dn%D{Dr%rgsLGH+1;e;=hZRn;)^lg`Ds| DZhxVb literal 0 HcmV?d00001 diff --git a/linphone.ldb/Contents.plist b/linphone.ldb/Contents.plist index 6307ec04b..f3a73709f 100644 --- a/linphone.ldb/Contents.plist +++ b/linphone.ldb/Contents.plist @@ -7504,17 +7504,17 @@ backup - 10 + 11 class BLWrapperHandle name - LinphoneUI/UICallBar/10/UICallBar.xib + LinphoneUI/UICallBar/11/UICallBar.xib change date - 2012-09-27T09:31:07Z + 2012-11-09T09:15:46Z changed values class @@ -7524,7 +7524,7 @@ flags 0 hash - c5958759098558a4f8f5d1c18abc0e21 + 18fba1eaf5f411c2e245f79b882aa7b1 name UICallBar.xib @@ -8626,9 +8626,9 @@ versions en - 10 + 11 fr - 10 + 11 diff --git a/linphone.ldb/Resources/LinphoneUI/UICallBar/10/UICallBar.xib b/linphone.ldb/Resources/LinphoneUI/UICallBar/11/UICallBar.xib similarity index 87% rename from linphone.ldb/Resources/LinphoneUI/UICallBar/10/UICallBar.xib rename to linphone.ldb/Resources/LinphoneUI/UICallBar/11/UICallBar.xib index 26e33847b..343b085af 100644 --- a/linphone.ldb/Resources/LinphoneUI/UICallBar/10/UICallBar.xib +++ b/linphone.ldb/Resources/LinphoneUI/UICallBar/11/UICallBar.xib @@ -2,9 +2,9 @@ 1536 - 11E53 + 11G63 2840 - 1138.47 + 1138.51 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -35,13 +35,14 @@ - 301 + 266 - -2147483356 + -2147483355 {{0, 335}, {320, 125}} + _NS:9 1 @@ -56,13 +57,14 @@ - 288 + 293 274 {281, 260} + _NS:9 2 @@ -78,6 +80,7 @@ 292 {{-20, 10}, {107, 54}} + 1 @@ -121,6 +124,7 @@ 292 {{87, 10}, {106, 54}} + NO NO @@ -148,6 +152,7 @@ 292 {{193, 10}, {107, 54}} + NO NO @@ -175,6 +180,7 @@ 292 {{-20, 72}, {107, 54}} + NO NO @@ -202,6 +208,7 @@ 292 {{87, 72}, {106, 54}} + NO NO @@ -229,6 +236,7 @@ 292 {{193, 72}, {107, 54}} + NO NO @@ -256,6 +264,7 @@ 292 {{-20, 134}, {107, 54}} + NO NO @@ -283,6 +292,7 @@ 292 {{87, 134}, {106, 54}} + NO NO @@ -310,6 +320,7 @@ 292 {{193, 134}, {107, 54}} + NO NO @@ -337,6 +348,7 @@ 292 {{-20, 196}, {107, 54}} + NO NO @@ -364,6 +376,7 @@ 292 {{87, 196}, {106, 54}} + NO NO @@ -391,6 +404,7 @@ 292 {{193, 196}, {107, 54}} + NO NO @@ -416,6 +430,7 @@ {{20, 57}, {281, 260}} + _NS:9 @@ -427,13 +442,14 @@ - 292 + 293 292 {{3, 0}, {77, 68}} + _NS:9 NO @@ -491,6 +507,7 @@ 292 {{3, 58}, {77, 68}} + _NS:9 NO @@ -530,6 +547,7 @@ {{240, 208}, {80, 126}} + _NS:9 @@ -538,13 +556,46 @@ - 292 + 293 + + + 292 + {{-44, -8}, {44, 90}} + + + + _NS:9 + 100 + NO + IBCocoaTouchFramework + + NSImage + callbar_left_padding.png + + + + + 292 + {{320, -8}, {44, 90}} + + + + _NS:9 + 101 + NO + IBCocoaTouchFramework + + NSImage + callbar_right_padding.png + + 290 {{0, 135}, {320, 2000}} + _NS:9 @@ -559,6 +610,7 @@ 292 {80, 67} + _NS:9 NO @@ -605,6 +657,7 @@ -2147483356 {{20, 20}, {37, 37}} + _NS:9 NO @@ -617,6 +670,7 @@ 292 {{80, 0}, {80, 67}} + _NS:9 NO @@ -663,6 +717,7 @@ 292 {{160, 0}, {80, 67}} + _NS:9 NO @@ -709,6 +764,7 @@ 292 {{240, 0}, {80, 67}} + _NS:9 NO @@ -755,6 +811,7 @@ 264 {{0, 67}, {105, 68}} + _NS:9 NO @@ -791,6 +848,7 @@ -2147483384 {{0, 67}, {105, 68}} + _NS:9 NO @@ -820,6 +878,7 @@ 264 {{105, 67}, {111, 68}} + _NS:9 NO @@ -849,7 +908,8 @@ 264 {{215, 67}, {105, 68}} - + + _NS:9 NO 27 @@ -884,7 +944,8 @@ {{0, 325}, {320, 135}} - + + _NS:9 18 @@ -893,21 +954,22 @@ {320, 460} + _NS:9 - NO IBCocoaTouchFramework - 301 + 266 - -2147483356 + -2147483355 {{0, 248}, {480, 72}} + _NS:9 @@ -923,13 +985,14 @@ - 288 + 293 274 {281, 260} + _NS:9 2 @@ -942,6 +1005,7 @@ 292 {{-20, 10}, {107, 54}} + 1 @@ -964,6 +1028,7 @@ 292 {{87, 10}, {106, 54}} + NO NO @@ -982,6 +1047,7 @@ 292 {{193, 10}, {107, 54}} + NO NO @@ -1000,6 +1066,7 @@ 292 {{-20, 72}, {107, 54}} + NO NO @@ -1018,6 +1085,7 @@ 292 {{87, 72}, {106, 54}} + NO NO @@ -1036,6 +1104,7 @@ 292 {{193, 72}, {107, 54}} + NO NO @@ -1054,6 +1123,7 @@ 292 {{-20, 134}, {107, 54}} + NO NO @@ -1072,6 +1142,7 @@ 292 {{87, 134}, {106, 54}} + NO NO @@ -1090,6 +1161,7 @@ 292 {{193, 134}, {107, 54}} + NO NO @@ -1108,6 +1180,7 @@ 292 {{-20, 196}, {107, 54}} + NO NO @@ -1126,6 +1199,7 @@ 292 {{87, 196}, {106, 54}} + NO NO @@ -1144,6 +1218,7 @@ 292 {{193, 196}, {107, 54}} + NO NO 14 @@ -1159,6 +1234,7 @@ {{91, 0}, {281, 260}} + _NS:9 @@ -1167,13 +1243,14 @@ - 292 + 293 292 {65, 55} + _NS:9 NO @@ -1215,6 +1292,7 @@ 292 {{0, 51}, {65, 55}} + _NS:9 NO @@ -1254,6 +1332,7 @@ {{415, 140}, {65, 105}} + _NS:9 @@ -1262,13 +1341,40 @@ - 292 + 293 + + + 292 + {{-44, -8}, {44, 90}} + + + + _NS:9 + 100 + NO + IBCocoaTouchFramework + + + + + 292 + {{480, -8}, {44, 90}} + + + + _NS:9 + 101 + NO + IBCocoaTouchFramework + + 290 {{0, 82}, {480, 2000}} + _NS:9 @@ -1283,6 +1389,7 @@ 292 {{65, 0}, {65, 82}} + _NS:9 NO @@ -1329,6 +1436,7 @@ -2147483356 {{79, 20}, {37, 37}} + _NS:9 NO @@ -1341,6 +1449,7 @@ 292 {{130, 0}, {65, 82}} + _NS:9 NO @@ -1387,6 +1496,7 @@ 292 {{285, 0}, {65, 82}} + _NS:9 NO @@ -1433,6 +1543,7 @@ 292 {{350, 0}, {65, 82}} + _NS:9 NO @@ -1479,6 +1590,7 @@ 264 {65, 82} + _NS:9 NO @@ -1512,6 +1624,7 @@ -2147483384 {65, 82} + _NS:9 NO @@ -1541,6 +1654,7 @@ 264 {{195, 0}, {90, 82}} + _NS:9 NO @@ -1570,7 +1684,8 @@ 264 {{415, 0}, {65, 82}} - + + _NS:9 NO 27 @@ -1602,7 +1717,8 @@ {{0, 238}, {480, 82}} - + + _NS:9 18 @@ -1611,10 +1727,10 @@ {480, 320} + _NS:9 - NO 3 3 @@ -2035,6 +2151,8 @@ + + buttons @@ -2361,6 +2479,8 @@ + + buttons @@ -2437,6 +2557,30 @@ background + + 143 + + + leftPadding + + + 144 + + + rightPadding + + + 145 + + + rightPadding + + + 146 + + + leftPadding + @@ -2535,6 +2679,10 @@ com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -2605,14 +2753,296 @@ - 142 + 163 + + + + + TPMultiLayoutViewController + UIViewController + + UIView + UIView + + + + landscapeView + UIView + + + portraitView + UIView + + + + IBProjectSource + ./Classes/TPMultiLayoutViewController.h + + + + UICallBar + TPMultiLayoutViewController + + id + id + id + id + id + + + + onConferenceClick: + id + + + onOptionsAddClick: + id + + + onOptionsClick: + id + + + onOptionsTransferClick: + id + + + onPadClick: + id + + + + UIButton + UIToggleButton + UIDigitButton + UIDigitButton + UIDigitButton + UIHangUpButton + UIMicroButton + UIDigitButton + UIDigitButton + UIButton + UIToggleButton + UIButton + UIView + UIView + UIPauseButton + UIDigitButton + UIDigitButton + UIDigitButton + UISpeakerButton + UIDigitButton + UIDigitButton + UIDigitButton + UIVideoButton + UIDigitButton + + + + conferenceButton + UIButton + + + dialerButton + UIToggleButton + + + eightButton + UIDigitButton + + + fiveButton + UIDigitButton + + + fourButton + UIDigitButton + + + hangupButton + UIHangUpButton + + + microButton + UIMicroButton + + + nineButton + UIDigitButton + + + oneButton + UIDigitButton + + + optionsAddButton + UIButton + + + optionsButton + UIToggleButton + + + optionsTransferButton + UIButton + + + optionsView + UIView + + + padView + UIView + + + pauseButton + UIPauseButton + + + sevenButton + UIDigitButton + + + sharpButton + UIDigitButton + + + sixButton + UIDigitButton + + + speakerButton + UISpeakerButton + + + starButton + UIDigitButton + + + threeButton + UIDigitButton + + + twoButton + UIDigitButton + + + videoButton + UIVideoButton + + + zeroButton + UIDigitButton + + + + IBProjectSource + ./Classes/UICallBar.h + + + + UIDigitButton + UILongTouchButton + + addressField + UITextField + + + addressField + + addressField + UITextField + + + + IBProjectSource + ./Classes/UIDigitButton.h + + + + UIHangUpButton + UIButton + + IBProjectSource + ./Classes/UIHangUpButton.h + + + + UILongTouchButton + UIButton + + IBProjectSource + ./Classes/UILongTouchButton.h + + + + UIMicroButton + UIToggleButton + + IBProjectSource + ./Classes/UIMicroButton.h + + + + UIPauseButton + UIToggleButton + + IBProjectSource + ./Classes/UIPauseButton.h + + + + UISpeakerButton + UIToggleButton + + IBProjectSource + ./Classes/UISpeakerButton.h + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + UITransparentView + UIView + + IBProjectSource + ./Classes/UITransparentView.h + + + + UIVideoButton + UIToggleButton + + waitView + UIActivityIndicatorView + + + waitView + + waitView + UIActivityIndicatorView + + + + IBProjectSource + ./Classes/UIVideoButton.h + + + - 0 IBCocoaTouchFramework YES 3 + {88, 180} + {88, 180} {209, 136} {130, 163} {209, 136} diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 57e51dc3a..1007a8f6b 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -326,6 +326,10 @@ D33CF34B15D3A03400CD4B85 /* linphone_icon_57@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D33CF34815D3A03400CD4B85 /* linphone_icon_57@2x.png */; }; D33CF34C15D3A03400CD4B85 /* linphone_icon_72@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D33CF34915D3A03400CD4B85 /* linphone_icon_72@2x.png */; }; D33CF34D15D3A03400CD4B85 /* linphone_icon_72@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D33CF34915D3A03400CD4B85 /* linphone_icon_72@2x.png */; }; + D33E1F08164CF35100CFA363 /* callbar_left_padding.png in Resources */ = {isa = PBXBuildFile; fileRef = D33E1F06164CF35100CFA363 /* callbar_left_padding.png */; }; + D33E1F09164CF35100CFA363 /* callbar_left_padding.png in Resources */ = {isa = PBXBuildFile; fileRef = D33E1F06164CF35100CFA363 /* callbar_left_padding.png */; }; + D33E1F0A164CF35100CFA363 /* callbar_right_padding.png in Resources */ = {isa = PBXBuildFile; fileRef = D33E1F07164CF35100CFA363 /* callbar_right_padding.png */; }; + D33E1F0B164CF35100CFA363 /* callbar_right_padding.png in Resources */ = {isa = PBXBuildFile; fileRef = D33E1F07164CF35100CFA363 /* callbar_right_padding.png */; }; D3432A62158A4446001C6B0B /* led_connected.png in Resources */ = {isa = PBXBuildFile; fileRef = D3432A5C158A4446001C6B0B /* led_connected.png */; }; D3432A64158A4446001C6B0B /* led_error.png in Resources */ = {isa = PBXBuildFile; fileRef = D3432A5D158A4446001C6B0B /* led_error.png */; }; D3432A66158A4446001C6B0B /* call_quality_indicator_0.png in Resources */ = {isa = PBXBuildFile; fileRef = D3432A5E158A4446001C6B0B /* call_quality_indicator_0.png */; }; @@ -1757,6 +1761,8 @@ D339890515C6E16F00CAF1E4 /* dialer_alt_back_over_landscape~ipad.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "dialer_alt_back_over_landscape~ipad.png"; path = "Resources/dialer_alt_back_over_landscape~ipad.png"; sourceTree = ""; }; D33CF34815D3A03400CD4B85 /* linphone_icon_57@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "linphone_icon_57@2x.png"; path = "Resources/linphone_icon_57@2x.png"; sourceTree = ""; }; D33CF34915D3A03400CD4B85 /* linphone_icon_72@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "linphone_icon_72@2x.png"; path = "Resources/linphone_icon_72@2x.png"; sourceTree = ""; }; + D33E1F06164CF35100CFA363 /* callbar_left_padding.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = callbar_left_padding.png; path = Resources/callbar_left_padding.png; sourceTree = ""; }; + D33E1F07164CF35100CFA363 /* callbar_right_padding.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = callbar_right_padding.png; path = Resources/callbar_right_padding.png; sourceTree = ""; }; D3432A5C158A4446001C6B0B /* led_connected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = led_connected.png; path = Resources/led_connected.png; sourceTree = ""; }; D3432A5D158A4446001C6B0B /* led_error.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = led_error.png; path = Resources/led_error.png; sourceTree = ""; }; D3432A5E158A4446001C6B0B /* call_quality_indicator_0.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = call_quality_indicator_0.png; path = Resources/call_quality_indicator_0.png; sourceTree = ""; }; @@ -2998,6 +3004,8 @@ D31C9C8D158A1C1000756B45 /* call_status_incoming.png */, D31C9C8E158A1C1000756B45 /* call_status_missed.png */, D31C9C8F158A1C1000756B45 /* call_status_outgoing.png */, + D33E1F06164CF35100CFA363 /* callbar_left_padding.png */, + D33E1F07164CF35100CFA363 /* callbar_right_padding.png */, D3E84F1715B00F4100420DAC /* cancel_default.png */, D3E84F1815B00F4100420DAC /* cancel_over.png */, D36C43CC158F2F370048BA40 /* cell_call.png */, @@ -4201,6 +4209,8 @@ D3103926162C3C5200C00C18 /* linphone_splashscreen-Landscape@2x.png in Resources */, D3103928162C3C5200C00C18 /* linphone_splashscreen-Portrait.png in Resources */, D310392A162C3C5200C00C18 /* linphone_splashscreen-Portrait@2x.png in Resources */, + D33E1F08164CF35100CFA363 /* callbar_left_padding.png in Resources */, + D33E1F0A164CF35100CFA363 /* callbar_right_padding.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4707,6 +4717,8 @@ D3103927162C3C5200C00C18 /* linphone_splashscreen-Landscape@2x.png in Resources */, D3103929162C3C5200C00C18 /* linphone_splashscreen-Portrait.png in Resources */, D310392B162C3C5200C00C18 /* linphone_splashscreen-Portrait@2x.png in Resources */, + D33E1F09164CF35100CFA363 /* callbar_left_padding.png in Resources */, + D33E1F0B164CF35100CFA363 /* callbar_right_padding.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; From d15b9846bba8e875a49e22138369f1e503774700 Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Tue, 13 Nov 2012 10:30:57 +0100 Subject: [PATCH 04/14] Now use ranged ports for audio/video --- Classes/LinphoneCoreSettingsStore.m | 75 +++++++++++++++-- Classes/LinphoneUI/fr.lproj/UICallBar.xib | 40 ++++----- Settings/InAppSettings.bundle/Network.plist | 8 +- .../en.lproj/Network.strings | 8 +- .../fr.lproj/Network.strings | 8 +- linphone.ldb/Contents.plist | 82 +++++++++++++++---- .../Network/1/Network.strings | 8 +- .../UICallBar/{11 => 12}/UICallBar.xib | 40 ++++----- 8 files changed, 191 insertions(+), 78 deletions(-) rename linphone.ldb/Resources/LinphoneUI/UICallBar/{11 => 12}/UICallBar.xib (99%) diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index 6ec1bfe74..ba467f7fe 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -122,8 +122,22 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); linphone_address_destroy(parsed); } { - [self setInteger: linphone_core_get_audio_port(lc) forKey:@"audio_port_preference"]; - [self setInteger: linphone_core_get_video_port(lc) forKey:@"video_port_preference"]; + { + int minPort, maxPort; + linphone_core_get_audio_port_range(lc, &minPort, &maxPort); + if(minPort != maxPort) + [self setObject:[NSString stringWithFormat:@"%d-%d", minPort, maxPort] forKey:@"audio_port_preference"]; + else + [self setObject:[NSString stringWithFormat:@"%d", minPort] forKey:@"audio_port_preference"]; + } + { + int minPort, maxPort; + linphone_core_get_video_port_range(lc, &minPort, &maxPort); + if(minPort != maxPort) + [self setObject:[NSString stringWithFormat:@"%d-%d", minPort, maxPort] forKey:@"video_port_preference"]; + else + [self setObject:[NSString stringWithFormat:@"%d", minPort] forKey:@"video_port_preference"]; + } } { [self setInteger: linphone_core_get_upload_bandwidth(lc) forKey:@"upload_bandwidth_preference"]; @@ -396,6 +410,47 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [[[LinphoneManager instance] fastAddressBook] reload]; } ++ (int)validPort:(int)port { + if(port < 0) { + return 0; + } + if(port > 65535) { + return 65535; + } + return port; +} + ++ (BOOL)parsePortRange:(NSString*)text minPort:(int*)minPort maxPort:(int*)maxPort { + NSError* error = nil; + *minPort = -1; + *maxPort = -1; + NSRegularExpression* regex = [NSRegularExpression regularExpressionWithPattern:@"([0-9]+)(([^0-9]+)([0-9]+))?" options:0 error:&error]; + if(error != NULL) + return FALSE; + NSArray* matches = [regex matchesInString:text options:0 range:NSMakeRange(0, [text length])]; + if([matches count] == 1) { + NSTextCheckingResult *match = [matches objectAtIndex:0]; + NSLog(@"%d", [match numberOfRanges]); + bool range = [match rangeAtIndex:2].length > 0; + if(!range) { + NSRange rangeMinPort = [match rangeAtIndex:1]; + *minPort = [LinphoneCoreSettingsStore validPort:[[text substringWithRange:rangeMinPort] integerValue]]; + *maxPort = *minPort; + return TRUE; + } else { + NSRange rangeMinPort = [match rangeAtIndex:1]; + *minPort = [LinphoneCoreSettingsStore validPort:[[text substringWithRange:rangeMinPort] integerValue]]; + NSRange rangeMaxPort = [match rangeAtIndex:4]; + *maxPort = [LinphoneCoreSettingsStore validPort:[[text substringWithRange:rangeMaxPort] integerValue]]; + if(*minPort > *maxPort) { + *minPort = *maxPort; + } + return TRUE; + } + } + return FALSE; +} + - (BOOL)synchronize { if (![LinphoneManager isLcReady]) return YES; LinphoneCore *lc=[LinphoneManager getLc]; @@ -485,10 +540,18 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); // Audio & Video Port - int audio_port_preference = [self integerForKey:@"audio_port_preference"]; - linphone_core_set_audio_port(lc, audio_port_preference); - int video_port_preference = [self integerForKey:@"video_port_preference"]; - linphone_core_set_video_port(lc, video_port_preference); + { + NSString *audio_port_preference = [self stringForKey:@"audio_port_preference"]; + int minPort, maxPort; + [LinphoneCoreSettingsStore parsePortRange:audio_port_preference minPort:&minPort maxPort:&maxPort]; + linphone_core_set_audio_port_range(lc, minPort, maxPort); + } + { + NSString *video_port_preference = [self stringForKey:@"video_port_preference"]; + int minPort, maxPort; + [LinphoneCoreSettingsStore parsePortRange:video_port_preference minPort:&minPort maxPort:&maxPort]; + linphone_core_set_video_port_range(lc, minPort, maxPort); + } int upload_bandwidth = [self integerForKey:@"upload_bandwidth_preference"]; linphone_core_set_upload_bandwidth(lc, upload_bandwidth); diff --git a/Classes/LinphoneUI/fr.lproj/UICallBar.xib b/Classes/LinphoneUI/fr.lproj/UICallBar.xib index 04797317e..166865260 100644 --- a/Classes/LinphoneUI/fr.lproj/UICallBar.xib +++ b/Classes/LinphoneUI/fr.lproj/UICallBar.xib @@ -540,7 +540,7 @@ 293 - + 292 {{-44, -8}, {44, 90}} @@ -550,12 +550,12 @@ 100 NO IBCocoaTouchFramework - + NSImage callbar_left_padding.png - + 292 {{320, -8}, {44, 90}} @@ -565,7 +565,7 @@ 101 NO IBCocoaTouchFramework - + NSImage callbar_right_padding.png @@ -879,7 +879,7 @@ 264 {{215, 67}, {105, 68}} - + _NS:9 NO 27 @@ -914,7 +914,7 @@ {{0, 325}, {320, 135}} - + _NS:9 18 @@ -1292,7 +1292,7 @@ 293 - + 292 {{-44, -8}, {44, 90}} @@ -1302,9 +1302,9 @@ 100 NO IBCocoaTouchFramework - + - + 292 {{480, -8}, {44, 90}} @@ -1314,7 +1314,7 @@ 101 NO IBCocoaTouchFramework - + @@ -1622,7 +1622,7 @@ 264 {{415, 0}, {65, 82}} - + _NS:9 NO 27 @@ -1654,7 +1654,7 @@ {{0, 238}, {480, 82}} - + _NS:9 18 @@ -2085,8 +2085,8 @@ - - + + buttons @@ -2413,8 +2413,8 @@ - - + + buttons @@ -2493,25 +2493,25 @@ 143 - + leftPadding 144 - + rightPadding 145 - + rightPadding 146 - + leftPadding diff --git a/Settings/InAppSettings.bundle/Network.plist b/Settings/InAppSettings.bundle/Network.plist index 410c308e7..864b5acc3 100644 --- a/Settings/InAppSettings.bundle/Network.plist +++ b/Settings/InAppSettings.bundle/Network.plist @@ -68,11 +68,11 @@ Key audio_port_preference Title - Audio Port + Audio Port(s) Type PSTextFieldSpecifier KeyboardType - NumberPad + NumbersAndPunctuation DefaultValue 7076 IASKTextAlignment @@ -82,11 +82,11 @@ Key video_port_preference Title - Video Port + Video Port(s) Type PSTextFieldSpecifier KeyboardType - NumberPad + NumbersAndPunctuation DefaultValue 9078 IASKTextAlignment diff --git a/Settings/InAppSettings.bundle/en.lproj/Network.strings b/Settings/InAppSettings.bundle/en.lproj/Network.strings index 0af66238b..a2aa822d3 100644 --- a/Settings/InAppSettings.bundle/en.lproj/Network.strings +++ b/Settings/InAppSettings.bundle/en.lproj/Network.strings @@ -13,11 +13,11 @@ /* Port */ "Port" = "Port"; -/* Audio Port */ -"Audio Port" = "Audio Port"; +/* Audio Port(s) */ +"Audio Port(s)" = "Audio Port(s)"; -/* Video Port */ -"Video Port" = "Video Port"; +/* Video Port(s) */ +"Video Port(s)" = "Video Port(s)"; /* Transport */ "Transport" = "Transport"; diff --git a/Settings/InAppSettings.bundle/fr.lproj/Network.strings b/Settings/InAppSettings.bundle/fr.lproj/Network.strings index 8235ab319..105b01f75 100644 --- a/Settings/InAppSettings.bundle/fr.lproj/Network.strings +++ b/Settings/InAppSettings.bundle/fr.lproj/Network.strings @@ -13,11 +13,11 @@ /* Port */ "Port" = "Port"; -/* Audio Port */ -"Audio Port" = "Port Audio"; +/* Audio Port(s) */ +"Audio Port(s)" = "Port(s) Audio"; -/* Video Port */ -"Video Port" = "Port Vidéo"; +/* Video Port(s) */ +"Video Port(s)" = "Port(s) Vidéo"; /* Transport */ "Transport" = "Transport"; diff --git a/linphone.ldb/Contents.plist b/linphone.ldb/Contents.plist index f3a73709f..72d19e91f 100644 --- a/linphone.ldb/Contents.plist +++ b/linphone.ldb/Contents.plist @@ -7504,17 +7504,17 @@ backup - 11 + 12 class BLWrapperHandle name - LinphoneUI/UICallBar/11/UICallBar.xib + LinphoneUI/UICallBar/12/UICallBar.xib change date - 2012-11-09T09:15:46Z + 2012-11-13T08:39:33Z changed values class @@ -7524,7 +7524,7 @@ flags 0 hash - 18fba1eaf5f411c2e245f79b882aa7b1 + 6ce20b228103dd1de3d5c07ecc8cc68a name UICallBar.xib @@ -8626,9 +8626,9 @@ versions en - 11 + 12 fr - 11 + 12 @@ -17452,7 +17452,7 @@ Raison: %2$s change date - 2012-11-06T09:36:36Z + 2012-11-13T09:28:24Z changed values class @@ -17462,7 +17462,7 @@ Raison: %2$s flags 0 hash - bb988b6e05b6fdd4c767f75b9d73b087 + 7220a3af4b5567ce1842c8a01759b1c9 name Network.strings @@ -17601,19 +17601,19 @@ Raison: %2$s class BLStringKeyObject comment - Audio Port + Audio Port(s) errors flags 0 key - Audio Port + Audio Port(s) localizations en - Audio Port + Audio Port(s) fr - Port Audio + Port(s) Audio snapshots @@ -17626,19 +17626,19 @@ Raison: %2$s class BLStringKeyObject comment - Video Port + Video Port(s) errors flags 0 key - Video Port + Video Port(s) localizations en - Video Port + Video Port(s) fr - Port Vidéo + Port(s) Vidéo snapshots @@ -18030,6 +18030,56 @@ Raison: %2$s snapshots + + change date + 2001-01-01T00:00:00Z + changed values + + class + BLStringKeyObject + comment + Audio Port + errors + + flags + 0 + key + Audio Port + localizations + + en + Audio Port + fr + Port Audio + + snapshots + + + + change date + 2001-01-01T00:00:00Z + changed values + + class + BLStringKeyObject + comment + Video Port + errors + + flags + 0 + key + Video Port + localizations + + en + Video Port + fr + Port Vidéo + + snapshots + + plist file diff --git a/linphone.ldb/Resources/InAppSettings.bundle/Network/1/Network.strings b/linphone.ldb/Resources/InAppSettings.bundle/Network/1/Network.strings index 0af66238b..a2aa822d3 100644 --- a/linphone.ldb/Resources/InAppSettings.bundle/Network/1/Network.strings +++ b/linphone.ldb/Resources/InAppSettings.bundle/Network/1/Network.strings @@ -13,11 +13,11 @@ /* Port */ "Port" = "Port"; -/* Audio Port */ -"Audio Port" = "Audio Port"; +/* Audio Port(s) */ +"Audio Port(s)" = "Audio Port(s)"; -/* Video Port */ -"Video Port" = "Video Port"; +/* Video Port(s) */ +"Video Port(s)" = "Video Port(s)"; /* Transport */ "Transport" = "Transport"; diff --git a/linphone.ldb/Resources/LinphoneUI/UICallBar/11/UICallBar.xib b/linphone.ldb/Resources/LinphoneUI/UICallBar/12/UICallBar.xib similarity index 99% rename from linphone.ldb/Resources/LinphoneUI/UICallBar/11/UICallBar.xib rename to linphone.ldb/Resources/LinphoneUI/UICallBar/12/UICallBar.xib index 343b085af..3398db0d7 100644 --- a/linphone.ldb/Resources/LinphoneUI/UICallBar/11/UICallBar.xib +++ b/linphone.ldb/Resources/LinphoneUI/UICallBar/12/UICallBar.xib @@ -558,7 +558,7 @@ 293 - + 292 {{-44, -8}, {44, 90}} @@ -569,12 +569,12 @@ 100 NO IBCocoaTouchFramework - + NSImage callbar_left_padding.png - + 292 {{320, -8}, {44, 90}} @@ -585,7 +585,7 @@ 101 NO IBCocoaTouchFramework - + NSImage callbar_right_padding.png @@ -909,7 +909,7 @@ {{215, 67}, {105, 68}} - + _NS:9 NO 27 @@ -945,7 +945,7 @@ {{0, 325}, {320, 135}} - + _NS:9 18 @@ -1343,7 +1343,7 @@ 293 - + 292 {{-44, -8}, {44, 90}} @@ -1354,9 +1354,9 @@ 100 NO IBCocoaTouchFramework - + - + 292 {{480, -8}, {44, 90}} @@ -1367,7 +1367,7 @@ 101 NO IBCocoaTouchFramework - + @@ -1685,7 +1685,7 @@ {{415, 0}, {65, 82}} - + _NS:9 NO 27 @@ -1718,7 +1718,7 @@ {{0, 238}, {480, 82}} - + _NS:9 18 @@ -2151,8 +2151,8 @@ - - + + buttons @@ -2479,8 +2479,8 @@ - - + + buttons @@ -2559,25 +2559,25 @@ 143 - + leftPadding 144 - + rightPadding 145 - + rightPadding 146 - + leftPadding From 5423b3b8cb3d2715048160723f655e2d28eede7f Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Tue, 13 Nov 2012 14:51:20 +0100 Subject: [PATCH 05/14] update provisionning profile for linphone adhoc --- linphone.xcodeproj/project.pbxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 1007a8f6b..88ad73a91 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -5279,7 +5279,7 @@ HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = "EE9CAF78-3536-4133-BAAA-020FDF65D279"; + PROVISIONING_PROFILE = "7763350E-083E-4ADA-8535-05883F19F947"; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2"; From 59adceb9d21fa3a02916144fc71f0d143485d116 Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Wed, 14 Nov 2012 12:21:44 +0100 Subject: [PATCH 06/14] Remove dealloc issue in UIDigit button --- Classes/LinphoneUI/UIDigitButton.m | 2 +- linphone.xcodeproj/project.pbxproj | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Classes/LinphoneUI/UIDigitButton.m b/Classes/LinphoneUI/UIDigitButton.m index 3f84c0ee6..9d7f03e46 100644 --- a/Classes/LinphoneUI/UIDigitButton.m +++ b/Classes/LinphoneUI/UIDigitButton.m @@ -61,8 +61,8 @@ } - (void)dealloc { - [super dealloc]; [addressField release]; + [super dealloc]; } diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 88ad73a91..2a108235e 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -5684,7 +5684,7 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - CODE_SIGN_IDENTITY = "iPhone Developer: jehan monnier (E8MYPN2NXL)"; + CODE_SIGN_IDENTITY = "iPhone Developer"; GCC_THUMB_SUPPORT = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -5692,7 +5692,7 @@ HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = "D0073029-09E3-435D-B758-DA3E8EFDA2A3"; + PROVISIONING_PROFILE = ""; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2"; From 9a6e8dcdf4e23f208e5baf91f47237b4e5d6a7f9 Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Wed, 14 Nov 2012 16:11:44 +0100 Subject: [PATCH 07/14] Disable conference button during transition states --- Classes/LinphoneUI/UICallBar.m | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Classes/LinphoneUI/UICallBar.m b/Classes/LinphoneUI/UICallBar.m index eda89bc0e..c1848ad14 100644 --- a/Classes/LinphoneUI/UICallBar.m +++ b/Classes/LinphoneUI/UICallBar.m @@ -277,6 +277,22 @@ [pauseButton setHidden:true]; [conferenceButton setHidden:false]; } + bool enabled = true; + const MSList *list = linphone_core_get_calls(lc); + while(list != NULL) { + LinphoneCall *call = (LinphoneCall*) list->data; + LinphoneCallState state = linphone_call_get_state(call); + if(state == LinphoneCallIncomingReceived || + state == LinphoneCallOutgoingInit || + state == LinphoneCallOutgoingProgress || + state == LinphoneCallOutgoingRinging || + state == LinphoneCallOutgoingEarlyMedia || + state == LinphoneCallConnected) { + enabled = false; + } + list = list->next; + } + [conferenceButton setEnabled:enabled]; } else { if([pauseButton isHidden]) { [pauseButton setHidden:false]; From 13d9a7f99d59317c18b0dd4bf94b39ce58ce727a Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Thu, 15 Nov 2012 12:35:48 +0100 Subject: [PATCH 08/14] Hide remove button from contact edition if it is a new contact --- Classes/ContactDetailsTableViewController.m | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/Classes/ContactDetailsTableViewController.m b/Classes/ContactDetailsTableViewController.m index d2e0ef476..74a47a6fe 100644 --- a/Classes/ContactDetailsTableViewController.m +++ b/Classes/ContactDetailsTableViewController.m @@ -588,10 +588,11 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C - (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { if(section == (ContactSections_MAX - 1)) { - return [footerController view]; - } else { - return nil; + if(ABRecordGetRecordID(contact) != kABRecordInvalidID) { + return [footerController view]; + } } + return nil; } - (NSString*)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { @@ -619,9 +620,13 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C } } -- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { +- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { if(section == (ContactSections_MAX - 1)) { - return [UIContactDetailsFooter height:[footerController isEditing]]; + if(ABRecordGetRecordID(contact) != kABRecordInvalidID) { + return [UIContactDetailsFooter height:[footerController isEditing]]; + } else { + return 0.000001f; // Hack UITableView = 0 + } } else if(section == ContactSections_None) { return 0.000001f; // Hack UITableView = 0 } From 19be7093e6964f92efec60ffde9c91056be4561d Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Fri, 16 Nov 2012 11:01:01 +0100 Subject: [PATCH 09/14] Fix test for callSecurityTimer release in call bar --- Classes/LinphoneUI/UIStateBar.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Classes/LinphoneUI/UIStateBar.m b/Classes/LinphoneUI/UIStateBar.m index 90cd30892..926d3b397 100644 --- a/Classes/LinphoneUI/UIStateBar.m +++ b/Classes/LinphoneUI/UIStateBar.m @@ -100,7 +100,7 @@ NSTimer *callSecurityTimer; [callQualityTimer invalidate]; callQualityTimer = nil; } - if(callQualityTimer != nil) { + if(callSecurityTimer != nil) { [callSecurityTimer invalidate]; callSecurityTimer = nil; } From 6e953d10f388071e96a5934cf206f6d094d33068 Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Fri, 16 Nov 2012 11:31:31 +0100 Subject: [PATCH 10/14] Set LinphoneIPhone as user agent --- Classes/LinphoneManager.m | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 6490e6962..02ab35476 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -762,6 +762,8 @@ static LinphoneCoreVTable linphonec_vtable = { linphone_core_enable_logs_with_cb((OrtpLogFunc)linphone_iphone_log_handler); } [LinphoneLogger logc:LinphoneLoggerLog format:"Create linphonecore"]; + linphone_core_set_user_agent([@"LinphoneIPhone" UTF8String], + [[[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey] UTF8String]); theLinphoneCore = linphone_core_new (&linphonec_vtable , [confiFileName cStringUsingEncoding:[NSString defaultCStringEncoding]] , [factoryConfig cStringUsingEncoding:[NSString defaultCStringEncoding]] From 1ac1fd95ded2c1317aa9212d2dd8cf4db28b7abf Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Mon, 19 Nov 2012 10:21:32 +0100 Subject: [PATCH 11/14] Fix message not showed when comming back from sleep mode --- Classes/ChatRoomTableViewController.m | 2 -- Classes/ChatRoomViewController.m | 31 +++++++++++++++++++++------ 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/Classes/ChatRoomTableViewController.m b/Classes/ChatRoomTableViewController.m index 1555b96f2..1234b40a6 100644 --- a/Classes/ChatRoomTableViewController.m +++ b/Classes/ChatRoomTableViewController.m @@ -138,8 +138,6 @@ } self->remoteAddress = [aremoteAddress copy]; [self loadData]; - [ChatModel readConversation:remoteAddress]; - [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; } diff --git a/Classes/ChatRoomViewController.m b/Classes/ChatRoomViewController.m index 552be969f..0915a4abe 100644 --- a/Classes/ChatRoomViewController.m +++ b/Classes/ChatRoomViewController.m @@ -143,7 +143,11 @@ static UICompositeViewDescription *compositeDescription = nil; - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; - [[NSNotificationCenter defaultCenter] addObserver:self + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(applicationWillEnterForeground:) + name:UIApplicationDidBecomeActiveNotification + object:nil]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; @@ -186,6 +190,10 @@ static UICompositeViewDescription *compositeDescription = nil; linphone_chat_room_destroy(chatRoom); chatRoom = NULL; } + [[NSNotificationCenter defaultCenter] removeObserver:self + name:UIApplicationDidBecomeActiveNotification + object:nil]; + [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillShowNotification object:nil]; @@ -226,6 +234,15 @@ static UICompositeViewDescription *compositeDescription = nil; [messageField setText:@""]; [self update]; [tableController setRemoteAddress: remoteAddress]; + [ChatModel readConversation:remoteAddress]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; +} + +- (void)applicationWillEnterForeground:(NSNotification*)notif { + if(remoteAddress != nil) { + [ChatModel readConversation:remoteAddress]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; + } } - (void)update { @@ -398,16 +415,16 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta } char *fromStr = linphone_address_as_string_uri_only(from); if(fromStr != NULL) { - if (![[UIDevice currentDevice] respondsToSelector:@selector(isMultitaskingSupported)] - || [UIApplication sharedApplication].applicationState == UIApplicationStateActive) { - if([[NSString stringWithUTF8String:fromStr] - caseInsensitiveCompare:remoteAddress] == NSOrderedSame) { + if([[NSString stringWithUTF8String:fromStr] + caseInsensitiveCompare:remoteAddress] == NSOrderedSame) { + if (![[UIDevice currentDevice] respondsToSelector:@selector(isMultitaskingSupported)] + || [UIApplication sharedApplication].applicationState == UIApplicationStateActive) { [chat setRead:[NSNumber numberWithInt:1]]; [chat update]; [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; - [tableController addChatEntry:chat]; - [tableController scrollToLastUnread:TRUE]; } + [tableController addChatEntry:chat]; + [tableController scrollToLastUnread:TRUE]; } ms_free(fromStr); } From 57b2b2c289c703c89711f54f4ee0405f2743ba4f Mon Sep 17 00:00:00 2001 From: Yann Diorcet Date: Mon, 19 Nov 2012 12:42:03 +0100 Subject: [PATCH 12/14] Fix autocorrection on destination field in chat view --- Classes/en.lproj/ChatViewController.xib | 5 +++-- Classes/fr.lproj/ChatViewController.xib | 4 +++- linphone.ldb/Contents.plist | 12 ++++++------ .../{17 => 19}/ChatViewController.xib | 5 +++-- 4 files changed, 15 insertions(+), 11 deletions(-) rename linphone.ldb/Resources/Classes/ChatViewController/{17 => 19}/ChatViewController.xib (99%) diff --git a/Classes/en.lproj/ChatViewController.xib b/Classes/en.lproj/ChatViewController.xib index d524c9766..5e67b7643 100644 --- a/Classes/en.lproj/ChatViewController.xib +++ b/Classes/en.lproj/ChatViewController.xib @@ -2,7 +2,7 @@ 1536 - 11G56 + 11G63 2840 1138.51 569.00 @@ -174,7 +174,6 @@ {{0, 79}, {320, 381}} - _NS:9 3 @@ -231,6 +230,8 @@ YES 17 + 1 + 3 IBCocoaTouchFramework diff --git a/Classes/fr.lproj/ChatViewController.xib b/Classes/fr.lproj/ChatViewController.xib index 5fd2b5997..f0148c657 100644 --- a/Classes/fr.lproj/ChatViewController.xib +++ b/Classes/fr.lproj/ChatViewController.xib @@ -2,7 +2,7 @@ 1536 - 11G56 + 11G63 2840 1138.51 569.00 @@ -224,6 +224,8 @@ YES 17 + 1 + 3 IBCocoaTouchFramework diff --git a/linphone.ldb/Contents.plist b/linphone.ldb/Contents.plist index 72d19e91f..eb0b3d625 100644 --- a/linphone.ldb/Contents.plist +++ b/linphone.ldb/Contents.plist @@ -803,17 +803,17 @@ backup - 17 + 19 class BLWrapperHandle name - Classes/ChatViewController/17/ChatViewController.xib + Classes/ChatViewController/19/ChatViewController.xib change date - 2012-10-16T14:43:40Z + 2012-11-19T11:40:43Z changed values class @@ -823,7 +823,7 @@ flags 0 hash - 7e5a8ab77b42e6a8f401a59751110598 + 467bb3255f207bc3c8d25dcdfca871ee name ChatViewController.xib @@ -1038,9 +1038,9 @@ versions en - 17 + 19 fr - 17 + 19 diff --git a/linphone.ldb/Resources/Classes/ChatViewController/17/ChatViewController.xib b/linphone.ldb/Resources/Classes/ChatViewController/19/ChatViewController.xib similarity index 99% rename from linphone.ldb/Resources/Classes/ChatViewController/17/ChatViewController.xib rename to linphone.ldb/Resources/Classes/ChatViewController/19/ChatViewController.xib index d524c9766..5e67b7643 100644 --- a/linphone.ldb/Resources/Classes/ChatViewController/17/ChatViewController.xib +++ b/linphone.ldb/Resources/Classes/ChatViewController/19/ChatViewController.xib @@ -2,7 +2,7 @@ 1536 - 11G56 + 11G63 2840 1138.51 569.00 @@ -174,7 +174,6 @@ {{0, 79}, {320, 381}} - _NS:9 3 @@ -231,6 +230,8 @@ YES 17 + 1 + 3 IBCocoaTouchFramework From 0699c80889d50bff563d091521d33f1c68f7ccf7 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Tue, 20 Nov 2012 11:15:38 +0100 Subject: [PATCH 13/14] rework CT call center to use it only when required --- Classes/LinphoneManager.h | 2 +- Classes/LinphoneManager.m | 198 +++++++++++++++++++------------------- 2 files changed, 100 insertions(+), 100 deletions(-) diff --git a/Classes/LinphoneManager.h b/Classes/LinphoneManager.h index 4e7cb15c4..5a9d5491d 100644 --- a/Classes/LinphoneManager.h +++ b/Classes/LinphoneManager.h @@ -90,7 +90,7 @@ typedef struct _LinphoneManagerSounds { BOOL stopWaitingRegisters; UIBackgroundTaskIdentifier pausedCallBgTask; UIBackgroundTaskIdentifier incallBgTask; - CTCallCenter* callCenter; + CTCallCenter* mCallCenter; @public CallContext currentCallContextBeforeGoingBackground; diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 02ab35476..e3c461ac6 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -387,70 +387,73 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char } - if (state == LinphoneCallIncomingReceived - &&[[UIDevice currentDevice] respondsToSelector:@selector(isMultitaskingSupported)] - && [UIApplication sharedApplication].applicationState != UIApplicationStateActive) { + if (state == LinphoneCallIncomingReceived) { /*first step is to re-enable ctcall center*/ - [self setupGSMInteraction]; + CTCallCenter* lCTCallCenter = [[CTCallCenter alloc] init]; /*should we reject this call ?*/ - if ([callCenter currentCalls]!=nil) { + if ([lCTCallCenter 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); + [lCTCallCenter release]; return; } + [lCTCallCenter release]; - - 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; - if(addr != NULL) { - BOOL useLinphoneAddress = true; - // contact name - char* lAddress = linphone_address_as_string_uri_only(addr); - if(lAddress) { - NSString *normalizedSipAddress = [FastAddressBook normalizeSipURI:[NSString stringWithUTF8String:lAddress]]; - ABRecordRef contact = [fastAddressBook getContact:normalizedSipAddress]; - if(contact) { - address = [FastAddressBook getContactDisplayName:contact]; - useLinphoneAddress = false; - } - ms_free(lAddress); - } - if(useLinphoneAddress) { - const char* lDisplayName = linphone_address_get_display_name(addr); - const char* lUserName = linphone_address_get_username(addr); - if (lDisplayName) - address = [NSString stringWithUTF8String:lDisplayName]; - else if(lUserName) - address = [NSString stringWithUTF8String:lUserName]; - } - } - if(address == nil) { - address = @"Unknown"; - } - - if (![[LinphoneManager instance] shouldAutoAcceptCallForCallId:callId]){ - // case where a remote notification is not already received - // Create a new local notification - data->notification = [[UILocalNotification alloc] init]; - if (data->notification) { - data->notification.repeatInterval = 0; - data->notification.alertBody =[NSString stringWithFormat:NSLocalizedString(@"IC_MSG",nil), address]; - data->notification.alertAction = NSLocalizedString(@"Answer", nil); - data->notification.soundName = @"ring.caf"; - data->notification.userInfo = [NSDictionary dictionaryWithObject:callId forKey:@"callId"]; - - [[UIApplication sharedApplication] presentLocalNotificationNow:data->notification]; - - if (!incallBgTask){ - incallBgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler: ^{ - [LinphoneLogger log:LinphoneLoggerWarning format:@"Call cannot ring any more, too late"]; - }]; + if( [[UIDevice currentDevice] respondsToSelector:@selector(isMultitaskingSupported)] + && [UIApplication sharedApplication].applicationState != UIApplicationStateActive) { + + 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; + if(addr != NULL) { + BOOL useLinphoneAddress = true; + // contact name + char* lAddress = linphone_address_as_string_uri_only(addr); + if(lAddress) { + NSString *normalizedSipAddress = [FastAddressBook normalizeSipURI:[NSString stringWithUTF8String:lAddress]]; + ABRecordRef contact = [fastAddressBook getContact:normalizedSipAddress]; + if(contact) { + address = [FastAddressBook getContactDisplayName:contact]; + useLinphoneAddress = false; + } + ms_free(lAddress); + } + if(useLinphoneAddress) { + const char* lDisplayName = linphone_address_get_display_name(addr); + const char* lUserName = linphone_address_get_username(addr); + if (lDisplayName) + address = [NSString stringWithUTF8String:lDisplayName]; + else if(lUserName) + address = [NSString stringWithUTF8String:lUserName]; + } + } + if(address == nil) { + address = @"Unknown"; + } + + if (![[LinphoneManager instance] shouldAutoAcceptCallForCallId:callId]){ + // case where a remote notification is not already received + // Create a new local notification + data->notification = [[UILocalNotification alloc] init]; + if (data->notification) { + data->notification.repeatInterval = 0; + data->notification.alertBody =[NSString stringWithFormat:NSLocalizedString(@"IC_MSG",nil), address]; + data->notification.alertAction = NSLocalizedString(@"Answer", nil); + data->notification.soundName = @"ring.caf"; + data->notification.userInfo = [NSDictionary dictionaryWithObject:callId forKey:@"callId"]; + + [[UIApplication sharedApplication] presentLocalNotificationNow:data->notification]; + + if (!incallBgTask){ + incallBgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler: ^{ + [LinphoneLogger log:LinphoneLoggerWarning format:@"Call cannot ring any more, too late"]; + }]; + } + } - } } } @@ -466,8 +469,10 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char // Disable speaker when no more call if ((state == LinphoneCallEnd || state == LinphoneCallError)) { - if(linphone_core_get_calls_nb([LinphoneManager getLc]) == 0) + if(linphone_core_get_calls_nb([LinphoneManager getLc]) == 0) { [self setSpeakerEnabled:FALSE]; + [self removeCTCallCenterCb]; + } if (incallBgTask) { [[UIApplication sharedApplication] endBackgroundTask:incallBgTask]; incallBgTask=0; @@ -483,7 +488,10 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char [self setSpeakerEnabled:TRUE]; } } - + if (state == LinphoneCallConnected && !mCallCenter) { + /*only register CT call center CB for connected call*/ + [self setupGSMInteraction]; + } // Post event NSDictionary* dict = [NSDictionary dictionaryWithObjectsAndKeys: [NSValue valueWithPointer:call], @"call", @@ -754,7 +762,6 @@ static LinphoneCoreVTable linphonec_vtable = { #if HAVE_G729 libmsbcg729_init(); // load g729 plugin #endif - [self setupGSMInteraction]; /* Initialize linphone core*/ /*to make sure we don't loose debug trace*/ @@ -861,13 +868,8 @@ static LinphoneCoreVTable linphonec_vtable = { - (void)destroyLibLinphone { [mIterateTimer invalidate]; - // destroying eventHandler if app cannot go in background. - // Otherwise if a GSM call happen and Linphone is resumed, - // the handler will be called before LinphoneCore is built. - // Then handler will be restored in appDidBecomeActive cb - callCenter.callEventHandler = nil; - [callCenter release]; - callCenter = nil; + //just in case + [self removeCTCallCenterCb]; AVAudioSession *audioSession = [AVAudioSession sharedInstance]; [audioSession setDelegate:nil]; @@ -958,6 +960,13 @@ static int comp_call_state_paused (const LinphoneCall* call, const void* param) return linphone_call_get_state(call) != LinphoneCallPaused; } +- (void) startCallPausedLongRunningTask { + pausedCallBgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler: ^{ + [LinphoneLogger log:LinphoneLoggerWarning format:@"Call cannot be paused any more, too late"]; + }]; + [LinphoneLogger log:LinphoneLoggerLog format:@"Long running task started, remaining [%g s] because at least one call is paused" + ,[[UIApplication sharedApplication] backgroundTimeRemaining]]; +} - (BOOL)enterBackgroundMode { LinphoneProxyConfig* proxyCfg; linphone_core_get_default_proxy(theLinphoneCore, &proxyCfg); @@ -985,13 +994,6 @@ static int comp_call_state_paused (const LinphoneCall* call, const void* param) return; } //kick up network cnx, just in case - [LinphoneManager kickOffNetworkConnection]; - - [self setupGSMInteraction]; - //to make sure presence status is correct - if ([callCenter currentCalls]==nil) - linphone_core_set_presence_info(theLinphoneCore, 0, nil, LinphoneStatusAltService); - [self refreshRegisters]; linphone_core_iterate(theLinphoneCore); } @@ -1007,13 +1009,8 @@ static int comp_call_state_paused (const LinphoneCall* call, const void* param) if (!currentCall //no active call && callList // at least one call in a non active state && ms_list_find_custom((MSList*)callList, (MSCompareFunc) comp_call_state_paused, NULL)) { - pausedCallBgTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler: ^{ - [LinphoneLogger log:LinphoneLoggerWarning format:@"Call cannot be paused any more, too late"]; - }]; - [LinphoneLogger log:LinphoneLoggerLog format:@"Long running task started, remaining [%fs] because at least one call is paused" - ,[[UIApplication sharedApplication] backgroundTimeRemaining]]; + [self startCallPausedLongRunningTask]; } - return YES; } else { @@ -1037,14 +1034,6 @@ static int comp_call_state_paused (const LinphoneCall* call, const void* param) /*IOS specific*/ linphone_core_start_dtmf_stream(theLinphoneCore); - - //call center is unrelialable on the long run, so we change it each time the application is resumed. To avoid zombie GSM call - [self setupGSMInteraction]; - - //to make sure presence status is correct - if ([callCenter currentCalls]==nil) - linphone_core_set_presence_info(theLinphoneCore, 0, nil, LinphoneStatusAltService); - } @@ -1132,7 +1121,7 @@ static void audioRouteChangeListenerCallback ( return; } - + CTCallCenter* callCenter = [[CTCallCenter alloc] init]; if ([callCenter currentCalls]!=nil) { [LinphoneLogger logc:LinphoneLoggerError format:"GSM call in progress, cancelling outgoing SIP call request"]; UIAlertView* error = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Cannot make call",nil) @@ -1142,9 +1131,11 @@ static void audioRouteChangeListenerCallback ( otherButtonTitles:nil]; [error show]; [error release]; + [callCenter release]; return; } - + [callCenter release]; + LinphoneProxyConfig* proxyCfg; //get default proxy linphone_core_get_default_proxy([LinphoneManager getLc],&proxyCfg); @@ -1340,18 +1331,24 @@ static void audioRouteChangeListenerCallback ( } #pragma GSM management +-(void) removeCTCallCenterCb { + if (mCallCenter != nil) { + [LinphoneLogger log:LinphoneLoggerLog format:@"Removing CT call center listener [%p]",mCallCenter]; + mCallCenter.callEventHandler=NULL; + [mCallCenter release]; + } + mCallCenter=nil; +} - (void)setupGSMInteraction { - if (callCenter != nil) { - callCenter.callEventHandler=NULL; - [callCenter release]; - } - callCenter = [[CTCallCenter alloc] init]; - callCenter.callEventHandler = ^(CTCall* call) { + [self removeCTCallCenterCb]; + mCallCenter = [[CTCallCenter alloc] init]; + [LinphoneLogger log:LinphoneLoggerLog format:@"Adding CT call center listener [%p]",mCallCenter]; + mCallCenter.callEventHandler = ^(CTCall* call) { // post on main thread [self performSelectorOnMainThread:@selector(handleGSMCallInteration:) - withObject:callCenter + withObject:mCallCenter waitUntilDone:YES]; }; @@ -1362,12 +1359,15 @@ static void audioRouteChangeListenerCallback ( /* pause current call, if any */ LinphoneCall* call = linphone_core_get_current_call(theLinphoneCore); if ([ct currentCalls]!=nil) { - if (call) {[LinphoneLogger logc:LinphoneLoggerLog format:"Pausing SIP call"]; + if (call) { + [LinphoneLogger log:LinphoneLoggerLog format:@"Pausing SIP call because GSM call"]; linphone_core_pause_call(theLinphoneCore, call); + [self startCallPausedLongRunningTask]; + } else if (linphone_core_is_in_conference(theLinphoneCore)) { + [LinphoneLogger log:LinphoneLoggerLog format:@"Leaving conference call because GSM call"]; + linphone_core_leave_conference(theLinphoneCore); + [self startCallPausedLongRunningTask]; } - //set current status to busy - linphone_core_set_presence_info(theLinphoneCore, 0, nil, LinphoneStatusBusy); - } else - linphone_core_set_presence_info(theLinphoneCore, 0, nil, LinphoneStatusAltService); + } //else nop, keep call in paused state } @end From 7e89293219105a7564a8ef138d70514aaff559e8 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Tue, 20 Nov 2012 11:16:03 +0100 Subject: [PATCH 14/14] ipdate xcode project to point to org.linphone.phone application id --- linphone.xcodeproj/project.pbxproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 2a108235e..824e77e6c 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -5684,7 +5684,7 @@ isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - CODE_SIGN_IDENTITY = "iPhone Developer"; + CODE_SIGN_IDENTITY = "iPhone Developer: jehan monnier (E8MYPN2NXL)"; GCC_THUMB_SUPPORT = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -5692,7 +5692,7 @@ HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = ""; + PROVISIONING_PROFILE = "2AC0DC11-4546-47B6-8B8A-453CCA80903C"; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2";