diff --git a/Classes/BuschJaegerCallView.h b/Classes/BuschJaegerCallView.h index bb4a11e8a..0444e1448 100644 --- a/Classes/BuschJaegerCallView.h +++ b/Classes/BuschJaegerCallView.h @@ -27,7 +27,7 @@ #import "UIToggleButton.h" #import "VideoZoomHandler.h" -@interface BuschJaegerCallView : UIViewController { +@interface BuschJaegerCallView : UIViewController { @private LinphoneChatRoom *chatRoom; LinphoneCall *currentCall; @@ -44,6 +44,8 @@ @property (nonatomic, retain) IBOutlet UIDigitButton* lightsButton; @property (nonatomic, retain) IBOutlet UIDigitButton* openDoorButton; @property (nonatomic, retain) IBOutlet UIButton* snapshotButton; +@property (nonatomic, retain) IBOutlet UISwipeGestureRecognizer *cameraLeftSwipeGestureRecognizer; +@property (nonatomic, retain) IBOutlet UISwipeGestureRecognizer *cameraRightSwipeGestureRecognizer; - (IBAction)takeCall:(id)sender; - (IBAction)onSnapshotClick:(id)sender; diff --git a/Classes/BuschJaegerCallView.m b/Classes/BuschJaegerCallView.m index 42701c07c..cba0a8433 100644 --- a/Classes/BuschJaegerCallView.m +++ b/Classes/BuschJaegerCallView.m @@ -35,6 +35,8 @@ @synthesize lightsButton; @synthesize openDoorButton; @synthesize snapshotButton; +@synthesize cameraLeftSwipeGestureRecognizer; +@synthesize cameraRightSwipeGestureRecognizer; #pragma mark - View lifecycle @@ -77,6 +79,8 @@ [lightsButton release]; [openDoorButton release]; [snapshotButton release]; + [cameraLeftSwipeGestureRecognizer release]; + [cameraRightSwipeGestureRecognizer release]; // Remove all observer [[NSNotificationCenter defaultCenter] removeObserver:self]; @@ -111,7 +115,7 @@ UIColor* col1 = BUSCHJAEGER_GREEN_COLOR; UIColor* col2 = BUSCHJAEGER_GREEN_COLOR; - [BuschJaegerUtils createGradientForView:takeCallButton withTopColor:col1 bottomColor:col2]; + [BuschJaegerUtils createGradientForButton:takeCallButton withTopColor:col1 bottomColor:col2]; } linphone_core_set_native_video_window_id([LinphoneManager getLc], (unsigned long)videoView); @@ -119,6 +123,16 @@ videoZoomHandler = [[VideoZoomHandler alloc] init]; [videoZoomHandler setup:videoView]; + + cameraRightSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(doCameraSwipe:)]; + [cameraRightSwipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionLeft]; + [cameraRightSwipeGestureRecognizer setDelegate:self]; + [videoView addGestureRecognizer:cameraRightSwipeGestureRecognizer]; + + cameraLeftSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(doCameraSwipe:)]; + [cameraLeftSwipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionRight]; + [cameraLeftSwipeGestureRecognizer setDelegate:self]; + [videoView addGestureRecognizer:cameraLeftSwipeGestureRecognizer]; } - (void)viewDidUnload { @@ -354,8 +368,31 @@ } } + #pragma mark - Actions Functions +- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { + return YES; +} + +- (IBAction)doCameraSwipe:(UISwipeGestureRecognizer *)sender { + if(videoZoomHandler.zoomLevel == 1) { + char digit = 0; + if (sender.direction == UISwipeGestureRecognizerDirectionLeft) { + digit = '7'; + } else if (sender.direction == UISwipeGestureRecognizerDirectionRight) { + digit = '8'; + } + if(digit != 0) { + if(chatRoom == NULL) { + linphone_core_send_dtmf([LinphoneManager getLc], digit); + } else { + linphone_chat_room_send_message(chatRoom, [[NSString stringWithFormat:@"%c", digit] UTF8String]); + } + } + } +} + - (IBAction)takeCall:(id)sender { const MSList* calls = linphone_core_get_calls([LinphoneManager getLc]); diff --git a/Classes/BuschJaegerCallView.xib b/Classes/BuschJaegerCallView.xib index 60a2ec23f..beffad3cf 100644 --- a/Classes/BuschJaegerCallView.xib +++ b/Classes/BuschJaegerCallView.xib @@ -2,7 +2,7 @@ 1536 - 11G56 + 11G63 2840 1138.51 569.00 @@ -41,6 +41,7 @@ -2147483374 {320, 480} + _NS:196 @@ -54,6 +55,7 @@ 289 {{266, 20}, {34, 34}} + _NS:9 NO @@ -95,6 +97,7 @@ 292 {73, 58} + _NS:225 @@ -119,6 +122,7 @@ -2147483356 {73, 58} + _NS:225 @@ -140,6 +144,7 @@ 292 {{207, 0}, {73, 58}} + _NS:225 @@ -166,6 +171,8 @@ -2147483356 {{207, 0}, {73, 58}} + + _NS:225 NO @@ -187,6 +194,7 @@ 292 {{73, 0}, {67, 58}} + _NS:225 @@ -213,6 +221,7 @@ 292 {{140, 0}, {67, 58}} + _NS:225 @@ -242,6 +251,7 @@ {{20, 399}, {280, 58}} + _NS:196 @@ -256,6 +266,7 @@ 274 {320, 42} + _NS:9 NO @@ -288,6 +299,7 @@ {320, 42} + _NS:9 @@ -299,6 +311,7 @@ {{0, 20}, {320, 480}} + @@ -564,7 +577,147 @@ 91 - + + + + BuschJaegerCallView + UIViewController + + id + id + + + + onSnapshotClick: + id + + + takeCall: + id + + + + UISwipeGestureRecognizer + UISwipeGestureRecognizer + UILabel + UIHangUpButton + UIHangUpButton + UIView + UIDigitButton + UIToggleButton + UIDigitButton + UIButton + UIButton + UIView + + + + cameraLeftSwipeGestureRecognizer + UISwipeGestureRecognizer + + + cameraRightSwipeGestureRecognizer + UISwipeGestureRecognizer + + + contactLabel + UILabel + + + declineButton + UIHangUpButton + + + endOrRejectCallButton + UIHangUpButton + + + incomingView + UIView + + + lightsButton + UIDigitButton + + + microButton + UIToggleButton + + + openDoorButton + UIDigitButton + + + snapshotButton + UIButton + + + takeCallButton + UIButton + + + videoView + UIView + + + + IBProjectSource + ./Classes/BuschJaegerCallView.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 + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + 0 IBCocoaTouchFramework diff --git a/Classes/BuschJaegerConfiguration.m b/Classes/BuschJaegerConfiguration.m index 6cf238139..fb50556c0 100644 --- a/Classes/BuschJaegerConfiguration.m +++ b/Classes/BuschJaegerConfiguration.m @@ -509,6 +509,9 @@ SecTrustResultType trustResult; err = SecTrustEvaluate(newTrust, &trustResult); BOOL trusted = (err == noErr) && ((trustResult == kSecTrustResultProceed) || (trustResult == kSecTrustResultUnspecified)); +#ifdef DEBUG + trusted = TRUE; +#endif NSURLCredential* credential = nil; if (trusted) diff --git a/Classes/BuschJaegerHistoryDetailsView.h b/Classes/BuschJaegerHistoryDetailsView.h index 9acb94c43..553e97090 100644 --- a/Classes/BuschJaegerHistoryDetailsView.h +++ b/Classes/BuschJaegerHistoryDetailsView.h @@ -37,11 +37,12 @@ @property (nonatomic, retain) IBOutlet UIView *fullscreenView; @property (nonatomic, retain) IBOutlet UIButton *saveButton; @property (nonatomic, retain) IBOutlet UIRemoteImageView *imageView; +@property (nonatomic, retain) IBOutlet UISwipeGestureRecognizer *detailsLeftSwipeGestureRecognizer; +@property (nonatomic, retain) IBOutlet UISwipeGestureRecognizer *detailsRightSwipeGestureRecognizer; +@property (nonatomic, retain) IBOutlet UITapGestureRecognizer *detailsTapGestureRecognizer; - (IBAction)onBackClick:(id)sender; - (IBAction)onDeleteClick:(id)sender; -- (IBAction)nextImage:(id)sender; -- (IBAction)previousImage:(id)sender; - (IBAction)hideImage:(id)sender; - (IBAction)saveImage:(id)sender; diff --git a/Classes/BuschJaegerHistoryDetailsView.m b/Classes/BuschJaegerHistoryDetailsView.m index 959136f92..73cb2291b 100644 --- a/Classes/BuschJaegerHistoryDetailsView.m +++ b/Classes/BuschJaegerHistoryDetailsView.m @@ -33,6 +33,9 @@ @synthesize imageView; @synthesize saveButton; @synthesize fullscreenView; +@synthesize detailsLeftSwipeGestureRecognizer; +@synthesize detailsRightSwipeGestureRecognizer; +@synthesize detailsTapGestureRecognizer; #pragma mark - Lifecycle Functions @@ -77,6 +80,9 @@ [fullscreenView release]; [imageView release]; [saveButton release]; + [detailsLeftSwipeGestureRecognizer release]; + [detailsRightSwipeGestureRecognizer release]; + [detailsTapGestureRecognizer release]; [dateFormatter release]; @@ -97,6 +103,19 @@ [BuschJaegerUtils createGradientForView:backButton withTopColor:col1 bottomColor:col2 cornerRadius:BUSCHJAEGER_DEFAULT_CORNER_RADIUS]; } + + detailsRightSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(doDetailsSwipe:)]; + [detailsRightSwipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionLeft]; + [imageView addGestureRecognizer:detailsRightSwipeGestureRecognizer]; + + detailsLeftSwipeGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(doDetailsSwipe:)]; + [detailsLeftSwipeGestureRecognizer setDirection:UISwipeGestureRecognizerDirectionRight]; + [imageView addGestureRecognizer:detailsLeftSwipeGestureRecognizer]; + + detailsTapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideImage:)]; + [detailsTapGestureRecognizer setNumberOfTapsRequired:1]; + [detailsTapGestureRecognizer setNumberOfTouchesRequired:1]; + [imageView addGestureRecognizer:detailsTapGestureRecognizer]; } - (void)viewWillAppear:(BOOL)animated { @@ -144,18 +163,18 @@ [[LinphoneManager instance].configuration removeHistory:BuschJaegerConfigurationRequestType_Local history:history delegate:self]; } -- (IBAction)nextImage:(id)sender { - if([history.images count]) { - currentIndex = (currentIndex - 1); - if(currentIndex < 0) currentIndex = [history.images count] - 1; - [imageView loadImage:[[LinphoneManager instance].configuration getImageUrl:BuschJaegerConfigurationRequestType_Local image:[history.images objectAtIndex:currentIndex]]]; - } -} - -- (IBAction)previousImage:(id)sender { - if([history.images count]) { - currentIndex = (currentIndex + 1) % [history.images count]; - [imageView loadImage:[[LinphoneManager instance].configuration getImageUrl:BuschJaegerConfigurationRequestType_Local image:[history.images objectAtIndex:currentIndex]]]; +- (IBAction)doDetailsSwipe:(UISwipeGestureRecognizer *)sender { + if (sender.direction == UISwipeGestureRecognizerDirectionRight) { + if([history.images count]) { + currentIndex = (currentIndex - 1); + if(currentIndex < 0) currentIndex = [history.images count] - 1; + [imageView loadImage:[[LinphoneManager instance].configuration getImageUrl:BuschJaegerConfigurationRequestType_Local image:[history.images objectAtIndex:currentIndex]]]; + } + } else if (sender.direction == UISwipeGestureRecognizerDirectionLeft) { + if([history.images count]) { + currentIndex = (currentIndex + 1) % [history.images count]; + [imageView loadImage:[[LinphoneManager instance].configuration getImageUrl:BuschJaegerConfigurationRequestType_Local image:[history.images objectAtIndex:currentIndex]]]; + } } } diff --git a/Classes/BuschJaegerHistoryDetailsView.xib b/Classes/BuschJaegerHistoryDetailsView.xib index 8b9058df3..b969da520 100644 --- a/Classes/BuschJaegerHistoryDetailsView.xib +++ b/Classes/BuschJaegerHistoryDetailsView.xib @@ -2,23 +2,21 @@ 1536 - 12C60 - 2843 - 1187.34 - 625.00 + 11G63 + 2840 + 1138.51 + 569.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 1929 + 1926 IBProxyObject IBUIButton IBUIImageView IBUILabel - IBUISwipeGestureRecognizer IBUITableView IBUITableViewController - IBUITapGestureRecognizer IBUIView @@ -297,11 +295,6 @@ IBCocoaTouchFramework NO - - - - 2 - @@ -394,60 +387,6 @@ 16 - - - gestureRecognizers - - - NSArray - YES - - 31 - - - - gestureRecognizers - - - NSArray - YES - - 25 - - - - gestureRecognizers - - - NSArray - YES - - 30 - - - - hideImage: - - - - 33 - - - - nextImage: - - - - 34 - - - - previousImage: - - - - 35 - onDeleteClick: @@ -542,23 +481,6 @@ - - 23 - - - - - 28 - - - Right Swipe Gesture Recognizer - - - 29 - - - Left Swipe Gesture Recognizer - 36 @@ -600,9 +522,6 @@ com.apple.InterfaceBuilder.IBCocoaTouchPlugin UIRemoteImageView com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -626,10 +545,8 @@ UIViewController id - id id id - id id @@ -637,10 +554,6 @@ hideImage: id - - nextImage: - id - onBackClick: id @@ -649,10 +562,6 @@ onDeleteClick: id - - previousImage: - id - saveImage: id @@ -661,6 +570,9 @@ UIView UILabel + UISwipeGestureRecognizer + UISwipeGestureRecognizer + UITapGestureRecognizer UIView UIRemoteImageView UIButton @@ -676,6 +588,18 @@ dateLabel UILabel + + detailsLeftSwipeGestureRecognizer + UISwipeGestureRecognizer + + + detailsRightSwipeGestureRecognizer + UISwipeGestureRecognizer + + + detailsTapGestureRecognizer + UITapGestureRecognizer + fullscreenView UIView @@ -724,6 +648,6 @@ {34, 35} {26, 26} - 1929 + 1926 diff --git a/Classes/LinphoneUI/VideoZoomHandler.h b/Classes/LinphoneUI/VideoZoomHandler.h index 2b4bb3a86..ecb48cdf0 100644 --- a/Classes/LinphoneUI/VideoZoomHandler.h +++ b/Classes/LinphoneUI/VideoZoomHandler.h @@ -24,6 +24,9 @@ UIView* videoView; } +@property (readonly) float zoomLevel; +@property (readonly) float cx; +@property (readonly) float cy; - (void) setup: (UIView*) videoView; - (void) resetZoom; diff --git a/Classes/LinphoneUI/VideoZoomHandler.m b/Classes/LinphoneUI/VideoZoomHandler.m index ce529ba70..4c0e62e78 100644 --- a/Classes/LinphoneUI/VideoZoomHandler.m +++ b/Classes/LinphoneUI/VideoZoomHandler.m @@ -23,6 +23,10 @@ @implementation VideoZoomHandler +@synthesize zoomLevel; +@synthesize cx; +@synthesize cy; + - (void)zoomInOut:(UITapGestureRecognizer*) reco { if (zoomLevel != 1) zoomLevel = 1; diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index df0fa6387..d2439c4d3 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -2268,7 +2268,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; @@ -2276,7 +2276,7 @@ HEADER_SEARCH_PATHS = ""; IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ""; - PROVISIONING_PROFILE = "062BF030-2ECE-4F23-A951-AB1CB31784F9"; + PROVISIONING_PROFILE = ""; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; TARGETED_DEVICE_FAMILY = "1,2";