diff --git a/Classes/InCallViewController-ipad.xib b/Classes/InCallViewController-ipad.xib new file mode 100644 index 000000000..cdf915ea3 --- /dev/null +++ b/Classes/InCallViewController-ipad.xib @@ -0,0 +1,1568 @@ + + + + 1280 + 11C74 + 1938 + 1138.23 + 567.00 + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + 933 + + + IBUIViewController + IBUIButton + IBUIView + IBUITableView + IBProxyObject + + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + PluginDependencyRecalculationVersion + + + + + IBFilesOwner + IBIPadFramework + + + IBFirstResponder + IBIPadFramework + + + + + 274 + + + + 274 + {768, 805} + + + + _NS:408 + + 3 + MSAwAA + + 2 + + + YES + IBIPadFramework + YES + 0 + YES + 80 + 22 + 22 + + + + 292 + + + + 292 + {{0, 1}, {320, 66}} + + + + 1 + MSAwIDAuMDgyMzIwMjU5MDQgMC4xOAA + + NO + NO + IBIPadFramework + 0 + 0 + + 3 + MQA + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + 3 + MC41AA + + + NSImage + stopcall-red.png + + + NSImage + clavier-01-106px.png + + + Helvetica-Bold + Helvetica + 2 + 15 + + + Helvetica-Bold + 15 + 16 + + + + {{224, 937}, {320, 77}} + + + + _NS:196 + + 3 + MCAwAA + + IBIPadFramework + + + + 292 + + + + 292 + {{107, 70}, {106, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + conf_merge.png + + + NSImage + grouper.png + + + 2 + 17 + + + Helvetica-Bold + 17 + 16 + + + + + 292 + {{0, 4}, {107, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + mic_active.png + + + NSImage + micro_inverse.png + + + NSImage + micro.png + + + 2 + 2 + + + Helvetica-Bold + 18 + 16 + + + + + 292 + {{0, 70}, {107, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + ajouter.png + + + + + + + 292 + {{213, 70}, {107, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + 1 + MCAwIDAAA + + + NSImage + contact.png + + + + + + + -2147483356 + {{213, 70}, {107, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 1 + video + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + clavier-01-160px.png + + + + + + + 292 + {{107, 4}, {106, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + clavier.png + + + + + + + 292 + {{213, 4}, {107, 66}} + + + + + NO + NO + IBIPadFramework + NO + 0 + 0 + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + HP_inverse.png + + + NSImage + HP.png + + + + + + + 292 + {{107, 70}, {106, 66}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + + NSImage + pause_inactif.png + + + NSImage + pause.png + + + + + + {{224, 801.5}, {320, 135}} + + + + + NO + NO + IBIPadFramework + + + + -2147483356 + + + + 292 + {{119, 251}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + close + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{119, 193}, {82, 52}} + + + + + 3 + MC42NjY2NjY2NjY3AA + + NO + NO + IBIPadFramework + 0 + 0 + 0 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{31, 19}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 1 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{119, 19}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 2 + + + + + + + + + 292 + {{207, 19}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 3 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{31, 77}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 4 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{119, 77}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 5 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{207, 77}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 6 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{31, 135}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 7 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{119, 135}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 8 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{207, 135}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + 9 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{31, 193}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + * + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + 292 + {{207, 193}, {82, 52}} + + + + + NO + NO + IBIPadFramework + 0 + 0 + # + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + {{178, 146}, {320, 310}} + + + + + 3 + MC4yNAA + + NO + NO + IBIPadFramework + + + {{0, 20}, {768, 1004}} + + + + _NS:212 + + IBIPadFramework + + + 2 + + + 1 + 1 + + IBIPadFramework + NO + + + + + + + addCall + + + + 112 + + + + addVideo + + + + 113 + + + + close + + + + 115 + + + + contacts + + + + 116 + + + + controlSubView + + + + 117 + + + + eight + + + + 118 + + + + endCtrl + + + + 119 + + + + five + + + + 120 + + + + four + + + + 121 + + + + hangUpView + + + + 122 + + + + hash + + + + 123 + + + + mergeCalls + + + + 124 + + + + mute + + + + 125 + + + + nine + + + + 126 + + + + one + + + + 127 + + + + padSubView + + + + 128 + + + + pause + + + + 129 + + + + seven + + + + 130 + + + + six + + + + 131 + + + + speaker + + + + 132 + + + + star + + + + 133 + + + + three + + + + 134 + + + + two + + + + 135 + + + + view + + + + 136 + + + + zero + + + + 137 + + + + callTableView + + + + 114 + + + + dataSource + + + + 139 + + + + delegate + + + + 140 + + + + + + 0 + + + + + + -1 + + + File's Owner + + + -2 + + + + + 59 + + + + + + + + 60 + + + + + + + + + + + 89 + + + + + + + + + + + + + controls + + + 97 + + + pauseresume + + + 96 + + + speaker + + + 95 + + + dialer + + + 94 + + + contacts + + + 93 + + + addcall + + + 92 + + + mute + + + 91 + + + merge + + + 90 + + + video + + + 88 + + + + + + + + 87 + + + + + + + + + + + + + + + + + + pad + + + 111 + + + star + + + 110 + + + 1 + + + 109 + + + 8 + + + 108 + + + hash + + + 107 + + + close + + + 106 + + + 2 + + + 105 + + + 0 + + + 104 + + + 3 + + + 103 + + + 4 + + + 102 + + + 6 + + + 101 + + + 7 + + + 100 + + + 9 + + + 99 + + + 5 + + + 98 + + + end + + + 61 + + + + + + + IncallViewController + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIResponder + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + 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 + UIAddVideoButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + UIMuteButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UISpeakerButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + UIHangUpButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + + + + 140 + + + + + IncallViewController + UIViewController + + doAction: + id + + + doAction: + + doAction: + id + + + + UIButton + UIButton + UITableView + UIButton + UIViewController + UIButton + UIView + UIButton + UIButton + UIButton + UIButton + UIButton + UIView + UIButton + UIButton + UIButton + UIButton + UIButton + UIView + UIButton + UIButton + UIButton + UIButton + UIButton + UIButton + UIButton + VideoViewController + UIButton + + + + addCall + UIButton + + + addVideo + UIButton + + + callTableView + UITableView + + + close + UIButton + + + conferenceDetail + UIViewController + + + contacts + UIButton + + + controlSubView + UIView + + + dialer + UIButton + + + eight + UIButton + + + endCtrl + UIButton + + + five + UIButton + + + four + UIButton + + + hangUpView + UIView + + + hash + UIButton + + + mergeCalls + UIButton + + + mute + UIButton + + + nine + UIButton + + + one + UIButton + + + padSubView + UIView + + + pause + UIButton + + + seven + UIButton + + + six + UIButton + + + speaker + UIButton + + + star + UIButton + + + three + UIButton + + + two + UIButton + + + videoViewController + VideoViewController + + + zero + UIButton + + + + IBProjectSource + ./Classes/IncallViewController.h + + + + UIAddVideoButton + UIButton + + IBProjectSource + ./Classes/UIAddVideoButton.h + + + + UICamSwitch + UIButton + + preview + UIView + + + preview + + preview + UIView + + + + IBProjectSource + ./Classes/UICamSwitch.h + + + + UIDigitButton + UIButton + + IBProjectSource + ./Classes/UIDigitButton.h + + + + UIHangUpButton + UIButton + + IBProjectSource + ./Classes/UIHangUpButton.h + + + + UIMuteButton + UIToggleButton + + IBProjectSource + ./Classes/UIMuteButton.h + + + + UISpeakerButton + UIToggleButton + + IBProjectSource + ./Classes/UISpeakerButton.h + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + VideoViewController + UIViewController + + UICamSwitch + UICamSwitch + UIView + UIView + UIHangUpButton + UIHangUpButton + UIView + UIMuteButton + UIMuteButton + UIView + UIView + UIView + + + + mCamSwitch + UICamSwitch + + + mCamSwitchLand + UICamSwitch + + + mDisplay + UIView + + + mDisplayLand + UIView + + + mHangUp + UIHangUpButton + + + mHangUpLand + UIHangUpButton + + + mLandscape + UIView + + + mMute + UIMuteButton + + + mMuteLand + UIMuteButton + + + mPortrait + UIView + + + mPreview + UIView + + + mPreviewLand + UIView + + + + IBProjectSource + ./Classes/VideoViewController.h + + + + + 0 + IBIPadFramework + YES + 3 + + {107, 67} + {107, 67} + {107, 67} + {106, 60} + {160, 60} + {106, 67} + {16, 16} + {107, 67} + {106, 67} + {20, 20} + {107, 67} + {107, 67} + {106, 67} + {106, 67} + {62, 54} + + 933 + + diff --git a/Classes/IncallViewController.h b/Classes/IncallViewController.h index e6ea4e234..f185a0445 100644 --- a/Classes/IncallViewController.h +++ b/Classes/IncallViewController.h @@ -27,7 +27,7 @@ @interface IncallViewController : UIViewController { - UIView* controlSubView, *callControlSubView, *hangUpView; + UIView* controlSubView, *hangUpView; UIButton* endCtrl; UIButton* dialer; @@ -37,7 +37,7 @@ UIButton* contacts; UIButton* addVideo; UITableView* callTableView; - UIButton* addCall, *mergeCalls, *addToConf; + UIButton* addCall, *mergeCalls; //key pad @@ -87,7 +87,6 @@ + (void) updateCellImageView:(UIImageView*)imageView Label:(UILabel*)label DetailLabel:(UILabel*)detailLabel AndAccessoryView:(UIButton*)accessoryView withCall:(LinphoneCall*) call; @property (nonatomic, retain) IBOutlet UIView* controlSubView; -@property (nonatomic, retain) IBOutlet UIView* callControlSubView; @property (nonatomic, retain) IBOutlet UIView* padSubView; @property (nonatomic, retain) IBOutlet UIView* hangUpView; @property (nonatomic, retain) IBOutlet UIViewController* conferenceDetail; @@ -103,7 +102,6 @@ @property (nonatomic, retain) IBOutlet UITableView* callTableView; @property (nonatomic, retain) IBOutlet UIButton* addCall; @property (nonatomic, retain) IBOutlet UIButton* mergeCalls; -@property (nonatomic, retain) IBOutlet UIButton* addToConf; @property (nonatomic, retain) IBOutlet UIButton* one; @property (nonatomic, retain) IBOutlet UIButton* two; diff --git a/Classes/IncallViewController.m b/Classes/IncallViewController.m index d3b984f60..4edef94a3 100644 --- a/Classes/IncallViewController.m +++ b/Classes/IncallViewController.m @@ -28,12 +28,10 @@ @synthesize controlSubView; -@synthesize callControlSubView; @synthesize padSubView; @synthesize hangUpView; @synthesize conferenceDetail; -@synthesize addToConf; @synthesize endCtrl; @synthesize close; @synthesize mute; @@ -117,11 +115,17 @@ int callCount(LinphoneCore* lc) { [addCall addTarget:self action:@selector(addCallPressed) forControlEvents:UIControlEventTouchUpInside]; [mergeCalls addTarget:self action:@selector(mergeCallsPressed) forControlEvents:UIControlEventTouchUpInside]; //[endCtrl addTarget:self action:@selector(endCallPressed) forControlEvents:UIControlEventTouchUpInside]; - [addToConf addTarget:self action:@selector(addToConfCallPressed) forControlEvents:UIControlEventTouchUpInside]; [pause addTarget:self action:@selector(pauseCallPressed) forControlEvents:UIControlEventTouchUpInside]; [mergeCalls setHidden:YES]; - mVideoViewController = [[VideoViewController alloc] initWithNibName:@"VideoViewController" + + if ([LinphoneManager runningOnIpad]) { + ms_message("Running on iPad"); + mVideoViewController = [[VideoViewController alloc] initWithNibName:@"VideoViewController-ipad" + bundle:[NSBundle mainBundle]]; + } else { + mVideoViewController = [[VideoViewController alloc] initWithNibName:@"VideoViewController" bundle:[NSBundle mainBundle]]; + } conferenceDetail = [[ConferenceCallDetailView alloc] initWithNibName:@"ConferenceCallDetailView" bundle:[NSBundle mainBundle]]; @@ -145,13 +149,6 @@ int callCount(LinphoneCore* lc) { linphone_core_add_all_to_conference(lc); } --(void) addToConfCallPressed { - LinphoneCall* selectedCall = linphone_core_get_current_call([LinphoneManager getLc]); - if (!selectedCall) - return; - linphone_core_add_to_conference([LinphoneManager getLc], selectedCall); -} - -(void) pauseCallPressed { LinphoneCore* lc = [LinphoneManager getLc]; @@ -341,13 +338,6 @@ int callCount(LinphoneCore* lc) { return; } LinphoneCall* selectedCall = linphone_core_get_current_call([LinphoneManager getLc]); - // hide call control subview if no call selected - [callControlSubView setHidden:(selectedCall == NULL)]; - // hide add to conf if no conf exist - if (!callControlSubView.hidden) { - [addToConf setHidden:(linphone_core_get_conference_size(lc) == 0 || - isInConference(selectedCall))]; - } int callsCount = linphone_core_get_calls_nb(lc); // hide pause/resume if in conference if (selectedCall) { diff --git a/Classes/LinphoneUI/LinphoneManager.h b/Classes/LinphoneUI/LinphoneManager.h index 5da93e076..6cfec8e7d 100644 --- a/Classes/LinphoneUI/LinphoneManager.h +++ b/Classes/LinphoneUI/LinphoneManager.h @@ -48,6 +48,7 @@ typedef enum _Connectivity { } +(LinphoneManager*) instance; +(LinphoneCore*) getLc; ++(BOOL) runningOnIpad; -(void) registerLogView:(id) view; diff --git a/Classes/LinphoneUI/LinphoneManager.m b/Classes/LinphoneUI/LinphoneManager.m index fbfc39ae2..f7ba9945a 100644 --- a/Classes/LinphoneUI/LinphoneManager.m +++ b/Classes/LinphoneUI/LinphoneManager.m @@ -711,7 +711,7 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach //get default config from bundle NSBundle* myBundle = [NSBundle mainBundle]; - NSString* factoryConfig = [myBundle pathForResource:@"linphonerc"ofType:nil] ; + NSString* factoryConfig = [myBundle pathForResource:[LinphoneManager runningOnIpad]?@"linphonerc-ipad":@"linphonerc" ofType:nil] ; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *confiFileName = [[paths objectAtIndex:0] stringByAppendingString:@"/.linphonerc"]; NSString *zrtpSecretsFileName = [[paths objectAtIndex:0] stringByAppendingString:@"/zrtp_secrets"]; @@ -852,6 +852,12 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach } } ++(BOOL) runningOnIpad { +#ifdef UI_USER_INTERFACE_IDIOM + return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad); +#endif + return NO; +} @end diff --git a/Classes/MainScreenWithVideoPreview.h b/Classes/MainScreenWithVideoPreview.h new file mode 100644 index 000000000..6b443b6b2 --- /dev/null +++ b/Classes/MainScreenWithVideoPreview.h @@ -0,0 +1,30 @@ +// +// MainScreenWithVideoPreview.h +// linphone +// +// Created by Pierre-Eric Pelloux-Prayer on 07/12/11. +// Copyright (c) 2011 __MyCompanyName__. All rights reserved. +// + +#import +#import +#import "PhoneViewController.h" + +@interface MainScreenWithVideoPreview : UIViewController { + UIWindow *window; + PhoneViewController* phoneMainView; + + + AVCaptureSession* session; + AVCaptureDeviceInput* input; + + int currentCamera; +} + +-(void) showPreview:(BOOL) show; + +-(void) useCameraAtIndex:(NSInteger)camIndex startSession:(BOOL)start; + +@property (nonatomic, retain) IBOutlet PhoneViewController* phoneMainView; +@property (nonatomic, retain) IBOutlet UIWindow *window; +@end diff --git a/Classes/MainScreenWithVideoPreview.m b/Classes/MainScreenWithVideoPreview.m new file mode 100644 index 000000000..5c7d962b0 --- /dev/null +++ b/Classes/MainScreenWithVideoPreview.m @@ -0,0 +1,127 @@ +// +// MainScreenWithVideoPreview.m +// linphone +// +// Created by Pierre-Eric Pelloux-Prayer on 07/12/11. +// Copyright (c) 2011 __MyCompanyName__. All rights reserved. +// + +#import "MainScreenWithVideoPreview.h" +#import + +@implementation MainScreenWithVideoPreview +@synthesize window; +@synthesize phoneMainView; + +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil +{ + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if (self) { + // Custom initialization + } + return self; +} + +- (void)didReceiveMemoryWarning +{ + // Releases the view if it doesn't have a superview. + [super didReceiveMemoryWarning]; + + // Release any cached data, images, etc that aren't in use. +} + +#pragma mark - View lifecycle + +/* +// Implement loadView to create a view hierarchy programmatically, without using a nib. +- (void)loadView +{ +} +*/ + +// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. +- (void)viewDidLoad +{ + [super viewDidLoad]; + + session = [[AVCaptureSession alloc] init]; + + + + currentCamera = 0; + + + + AVCaptureVideoPreviewLayer* previewLayer = [AVCaptureVideoPreviewLayer layerWithSession:session]; + + previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill; + previewLayer.frame = self.view.bounds; + [self.view.layer addSublayer:previewLayer]; + + [session beginConfiguration]; + [session setSessionPreset:AVCaptureSessionPresetHigh]; + [session commitConfiguration]; + + [self useCameraAtIndex:0 startSession:NO]; +} + +-(void) switchCameraPressed { + [self useCameraAtIndex: (currentCamera + 1) startSession:YES]; +} + +-(void) useCameraAtIndex:(NSInteger)camIndex startSession:(BOOL)start { + [session stopRunning]; + + if (input != nil) + [session removeInput:input]; + + NSError* error; + + NSAutoreleasePool* pool = [[NSAutoreleasePool alloc]init]; + NSArray* array = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo]; + currentCamera = camIndex % [array count]; + AVCaptureDevice* device = (AVCaptureDevice*) [array objectAtIndex:currentCamera]; + input = [[AVCaptureDeviceInput deviceInputWithDevice:device + error:&error] retain]; + + [session addInput:input]; + + [pool drain]; + + if (start) + [session startRunning]; +} + + +-(void) showPreview:(BOOL) show { + if (show && !session.running) { + [window addSubview:self.view]; + [window sendSubviewToBack:self.view]; + [session startRunning]; + } else if (!show && session.running) { + [self.view removeFromSuperview]; + [session stopRunning]; + } +} + +-(void) viewDidAppear:(BOOL)animated { + [phoneMainView.switchCamera addTarget:self action:@selector(switchCameraPressed) forControlEvents:UIControlEventTouchUpInside]; +} + +-(void) viewDidDisappear:(BOOL)animated { + +} + +- (void)viewDidUnload +{ + [super viewDidUnload]; + // Release any retained subviews of the main view. + // e.g. self.myOutlet = nil; +} + +- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation +{ + return NO; +} + +@end diff --git a/Classes/MainScreenWithVideoPreview.xib b/Classes/MainScreenWithVideoPreview.xib new file mode 100644 index 000000000..8670a5b07 --- /dev/null +++ b/Classes/MainScreenWithVideoPreview.xib @@ -0,0 +1,393 @@ + + + + 1280 + 11C74 + 1938 + 1138.23 + 567.00 + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + 933 + + + IBProxyObject + IBUITabBarItem + IBUIViewController + IBUICustomObject + IBUITabBarController + IBUIWindow + IBUITabBar + IBUIView + + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + PluginDependencyRecalculationVersion + + + + + IBFilesOwner + IBIPadFramework + + + IBFirstResponder + IBIPadFramework + + + IBIPadFramework + + + + 292 + {768, 1024} + + + _NS:196 + + 3 + MQA + + NO + NO + + 2 + + IBIPadFramework + YES + + + + + 2 + + + 1 + 1 + + IBIPadFramework + NO + + + Dialer + + NSImage + dialer-orange.png + + IBIPadFramework + + + PhoneViewController-ipad + + + 1 + 1 + + IBIPadFramework + NO + + + + History + + History + + NSImage + history-orange.png + + IBIPadFramework + + + + + 1 + 1 + + IBIPadFramework + NO + + + + + IBIPadFramework + 5 + + + + 1 + 1 + + IBIPadFramework + NO + + + + + IBIPadFramework + 0 + + + + + 1 + 1 + + IBIPadFramework + NO + + + + + 266 + {{0, 975}, {768, 49}} + + + + 3 + MCAwAA + + NO + IBIPadFramework + + + + + + 274 + {{0, 20}, {768, 1004}} + + + _NS:212 + + 1 + MC40MzUwMTEzNDA3IDAuNjI1IDEAA + + IBIPadFramework + + + 2 + + + 1 + 1 + + IBIPadFramework + NO + + + + + + + delegate + + + + 30 + + + + window + + + + 9 + + + + phoneMainView + + + + 44 + + + + window + + + + 27 + + + + myTabBarController + + + + 28 + + + + mMainScreenWithVideoPreview + + + + 31 + + + + + + 0 + + + + + + -1 + + + File's Owner + + + -2 + + + + + 3 + + + + + + 6 + + + + + + + + 16 + + + linphoneAppDelegate + + + 17 + + + + + + + + + + + + 18 + + + + + + dialer + + + 19 + + + + + + history + + + 20 + + + + + + more + + + 21 + + + + + + Contacts + + + 22 + + + + + 23 + + + + + 24 + + + + + 25 + + + + + 26 + + + + + 7 + + + + + + + + UIApplication + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIResponder + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + linphoneAppDelegate + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + PhoneViewController + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + CallHistoryTableViewController + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + MoreViewController + 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 + MainScreenWithVideoPreview + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + + + + 44 + + + 0 + IBIPadFramework + YES + 3 + + {25, 24} + {25, 23} + + 933 + + diff --git a/Classes/PhoneViewController-ipad.xib b/Classes/PhoneViewController-ipad.xib new file mode 100644 index 000000000..ca23ef6e4 --- /dev/null +++ b/Classes/PhoneViewController-ipad.xib @@ -0,0 +1,1157 @@ + + + + 1280 + 11C74 + 1938 + 1138.23 + 567.00 + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + 933 + + + IBUILabel + IBUIViewController + IBUIButton + IBUIView + IBUITextField + IBProxyObject + + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + PluginDependencyRecalculationVersion + + + + + IBFilesOwner + IBIPadFramework + + + IBFirstResponder + IBIPadFramework + + + + + 274 + + + + 292 + + + + 292 + {{34, 20}, {699, 78}} + + + + + 3 + MQA + + NO + NO + IBIPadFramework + 0 + + sip: + + 3 + MAA + + 2 + + + YES + 15 + + 1 + 3 + IBCocoaTouchFramework + + 1 + + Helvetica + Helvetica + 0 + 36 + + + Helvetica + 36 + 16 + + + + + 292 + {{660, 25}, {66, 68}} + + + + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + 3 + MC41AA + + + NSImage + effacer.png + + + Helvetica-Bold + Helvetica + 2 + 15 + + + Helvetica-Bold + 15 + 16 + + + + + 292 + {{413, 277}, {322, 66}} + + + + _NS:241 + NO + IBIPadFramework + 0 + 0 + Switch camera + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + + NSImage + clavier-01-108px.png + + + 2 + 15 + + + + + + -2147483356 + {{573, 112.5}, {160, 231}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 1 + Back + + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + + NSImage + clavier-01-160px.png + + + 2 + 2 + + + Helvetica-Bold + 18 + 16 + + + + + -2147483356 + {{415, 112}, {160, 231}} + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + NSImage + startcall-green.png + + + + + + + + 292 + {{413, 111}, {320, 167}} + + + + NO + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + + 292 + {{415, 346}, {320, 29}} + + + + + 3 + MCAwAA + + NO + YES + NO + IBIPadFramework + status + + 1 + MCAwIDAAA + + + 1 + 10 + + 1 + 17 + + + Helvetica + 17 + 16 + + + + + 292 + {{32, 112}, {107, 66}} + + + + + 1 + MC40MDAwMDAwMSAxIDEgMAA + + NO + NO + IBIPadFramework + 0 + 0 + 1 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + NSImage + clavier-01-106px.png + + + + + + + 292 + {{139, 112}, {106, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 2 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{245, 112}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 3 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{245, 178}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 4 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{139, 178}, {106, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 5 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{32, 178}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 6 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{32, 244}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 7 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{139, 244}, {106, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 8 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{245, 244}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 9 + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{139, 309}, {106, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + 0+ + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{32, 309}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + * + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + + 292 + {{245, 309}, {107, 66}} + + + + NO + NO + IBIPadFramework + 0 + 0 + # + + + 1 + MC4xOTYwNzg0MyAwLjMwOTgwMzkzIDAuNTIxNTY4NjYAA + + + + + + + + {{0, 569}, {768, 386}} + + + + _NS:212 + + 3 + MC4zMzMzMzMzMzMzIDAuNQA + + IBIPadFramework + + + {{0, 20}, {768, 1004}} + + + + _NS:212 + + IBIPadFramework + + + 2 + + + 1 + 1 + + IBIPadFramework + NO + + + + + + + eight + + + + 45 + + + + five + + + + 47 + + + + four + + + + 48 + + + + hash + + + + 49 + + + + nine + + + + 50 + + + + one + + + + 51 + + + + seven + + + + 52 + + + + six + + + + 53 + + + + star + + + + 54 + + + + three + + + + 57 + + + + two + + + + 58 + + + + view + + + + 59 + + + + zero + + + + 60 + + + + address + + + + 39 + + + + erase + + + + 46 + + + + backToCallView + + + + 40 + + + + switchCamera + + + + 56 + + + + callShort + + + + 42 + + + + callLarge + + + + 41 + + + + status + + + + 55 + + + + + + 0 + + + + + + -1 + + + File's Owner + + + -2 + + + + + 3 + + + + + + + + 4 + + + + + + + + 24 + + + + + + + + + + + + + + + + + + + + + + + + + + 33 + + + + + 28 + + + + + 34 + + + + + 27 + + + + + 26 + + + + + 35 + + + + + 29 + + + + + 36 + + + + + 32 + + + + + 31 + + + + + 25 + + + + + 30 + + + + + 23 + + + Address + + + 22 + + + Erase + + + 18 + + + back + + + 38 + + + + + 19 + + + Call-short + + + 20 + + + Call-large + + + 21 + + + + + + + PhoneViewController + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIResponder + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UICallButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UICallButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIEraseButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIDigitButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + + + + 60 + + + + + MainScreenWithVideoPreview + UIViewController + + PhoneViewController + UIWindow + + + + phoneMainView + PhoneViewController + + + window + UIWindow + + + + IBProjectSource + ./Classes/MainScreenWithVideoPreview.h + + + + PhoneViewController + UIViewController + + doKeyPad: + id + + + doKeyPad: + + doKeyPad: + id + + + + UITextField + UIButton + UIButton + UIButton + UIView + UIButton + UIEraseButton + UIButton + UIButton + UIButton + MainScreenWithVideoPreview + UITabBarController + UIButton + UIButton + UIButton + UIButton + UIButton + UILabel + UIButton + UIButton + UIButton + UIButton + + + + address + UITextField + + + backToCallView + UIButton + + + callLarge + UIButton + + + callShort + UIButton + + + dialerView + UIView + + + eight + UIButton + + + erase + UIEraseButton + + + five + UIButton + + + four + UIButton + + + hash + UIButton + + + mMainScreenWithVideoPreview + MainScreenWithVideoPreview + + + myTabBarController + UITabBarController + + + nine + UIButton + + + one + UIButton + + + seven + UIButton + + + six + UIButton + + + star + UIButton + + + status + UILabel + + + switchCamera + UIButton + + + three + UIButton + + + two + UIButton + + + zero + UIButton + + + + IBProjectSource + ./Classes/PhoneViewController.h + + + + UICallButton + UIButton + + IBProjectSource + ./Classes/UICallButton.h + + + + UIDigitButton + UIButton + + IBProjectSource + ./Classes/UIDigitButton.h + + + + UIEraseButton + UIButton + + IBProjectSource + ./Classes/UIEraseButton.h + + + + + 0 + IBIPadFramework + YES + 3 + + {106, 60} + {108, 60} + {160, 60} + {66, 65} + {60, 52} + + 933 + + diff --git a/Classes/PhoneViewController.h b/Classes/PhoneViewController.h index b9f5f09e2..f30177d2c 100644 --- a/Classes/PhoneViewController.h +++ b/Classes/PhoneViewController.h @@ -22,7 +22,7 @@ #import "UILinphone.h" #import "CallDelegate.h" - +@class MainScreenWithVideoPreview; @class IncallViewController; @class FirstLoginViewController; @@ -54,7 +54,6 @@ UIDigitButton* zero; UIDigitButton* hash; - UIButton* back; UIButton* backToCallView; UITabBarController* myTabBarController; @@ -62,6 +61,9 @@ UIActionSheet *mIncomingCallActionSheet; FirstLoginViewController* myFirstLoginViewController; IncallViewController* mIncallViewController; + MainScreenWithVideoPreview* mMainScreenWithVideoPreview; + + UIButton* switchCamera; } @property (nonatomic, retain) IBOutlet UIView* dialerView; @@ -69,7 +71,6 @@ @property (nonatomic, retain) IBOutlet UITextField* address; @property (nonatomic, retain) IBOutlet UIButton* callShort; @property (nonatomic, retain) IBOutlet UIButton* callLarge; -@property (nonatomic, retain) IBOutlet UIButton* hangup; @property (nonatomic, retain) IBOutlet UILabel* status; @property (nonatomic, retain) IBOutlet UIEraseButton* erase; @@ -86,13 +87,15 @@ @property (nonatomic, retain) IBOutlet UIButton* zero; @property (nonatomic, retain) IBOutlet UIButton* hash; -@property (nonatomic, retain) IBOutlet UIButton* back; @property (nonatomic, retain) IBOutlet UIButton* backToCallView; +@property (nonatomic, retain) IBOutlet UIButton* switchCamera; + // method to handle keypad event - (IBAction)doKeyPad:(id)sender; @property (nonatomic, retain) IBOutlet UITabBarController* myTabBarController; +@property (nonatomic, retain) IBOutlet MainScreenWithVideoPreview* mMainScreenWithVideoPreview; @end diff --git a/Classes/PhoneViewController.m b/Classes/PhoneViewController.m index 6fd2f0fbc..97cd28226 100644 --- a/Classes/PhoneViewController.m +++ b/Classes/PhoneViewController.m @@ -23,6 +23,7 @@ #import #import "LinphoneManager.h" #include "FirstLoginViewController.h" +#include "MainScreenWithVideoPreview.h" #include "linphonecore.h" #include "private.h" @@ -31,7 +32,6 @@ @synthesize address ; @synthesize callShort; @synthesize callLarge; -@synthesize hangup; @synthesize status; @synthesize erase; @@ -48,13 +48,15 @@ @synthesize zero; @synthesize hash; -@synthesize back; @synthesize myTabBarController; +@synthesize mMainScreenWithVideoPreview; @synthesize backToCallView; +@synthesize switchCamera; + //implements keypad behavior --(IBAction) doKeyPad:(id)sender { +/*-(IBAction) doKeyPad:(id)sender { if (sender == back) { if ([address.text length] >0) { NSString* newAddress; @@ -63,7 +65,7 @@ } } -} +}*/ - (void)viewDidAppear:(BOOL)animated { [[UIApplication sharedApplication] setIdleTimerDisabled:true]; @@ -73,6 +75,13 @@ [[LinphoneManager instance] setRegistrationDelegate:myFirstLoginViewController]; [self presentModalViewController:myFirstLoginViewController animated:true]; }; + + [mMainScreenWithVideoPreview showPreview:YES]; + [self updateCallAndBackButtons]; +} + +-(void) viewWillDisappear:(BOOL)animated { + [mMainScreenWithVideoPreview showPreview:NO]; } @@ -97,7 +106,8 @@ [callLarge initWithAddress:address]; [erase initWithAddressField:address]; [backToCallView addTarget:self action:@selector(backToCallViewPressed) forControlEvents:UIControlEventTouchUpInside]; - mIncallViewController = [[IncallViewController alloc] initWithNibName:@"IncallViewController" + + mIncallViewController = [[IncallViewController alloc] initWithNibName:[LinphoneManager runningOnIpad]?@"InCallViewController-ipad":@"IncallViewController" bundle:[NSBundle mainBundle]]; } @@ -189,6 +199,8 @@ withDisplayName:displayName]; [myTabBarController setSelectedIndex:DIALER_TAB_INDEX]; + + [mMainScreenWithVideoPreview showPreview:YES]; } @@ -232,6 +244,7 @@ [mIncomingCallActionSheet release]; } + [mMainScreenWithVideoPreview showPreview:NO]; } -(void) backToCallViewPressed { @@ -248,6 +261,8 @@ [mIncallViewController displayCall:call InProgressFromUI:viewCtrl forUser:username withDisplayName:displayName]; + + [mMainScreenWithVideoPreview showPreview:NO]; } @@ -274,6 +289,8 @@ [mIncallViewController displayVideoCall:call FromUI:viewCtrl forUser:username withDisplayName:displayName]; + + [mMainScreenWithVideoPreview showPreview:NO]; } @@ -294,7 +311,6 @@ [dialerView dealloc]; [callShort dealloc]; [callLarge dealloc]; - [hangup dealloc]; [status dealloc]; [one dealloc]; [two dealloc]; @@ -308,7 +324,6 @@ [star dealloc]; [zero dealloc]; [hash dealloc]; - [back dealloc]; [myTabBarController release]; [mIncallViewController release]; [super dealloc]; diff --git a/Classes/PhoneViewController.xib b/Classes/PhoneViewController.xib index 8e5e6ac92..97777b7b0 100644 --- a/Classes/PhoneViewController.xib +++ b/Classes/PhoneViewController.xib @@ -541,8 +541,8 @@ - 1 - MC45MDE5NjA3OSAwLjkwMTk2MDc5IDAuOTAxOTYwNzkAA + 3 + MCAwAA 5 IBCocoaTouchFramework @@ -1265,7 +1265,7 @@ {106, 60} {108, 60} {160, 60} - {164, 104} + {66, 65} {60, 52} diff --git a/Classes/VideoViewController-ipad.xib b/Classes/VideoViewController-ipad.xib new file mode 100644 index 000000000..a4270d57d --- /dev/null +++ b/Classes/VideoViewController-ipad.xib @@ -0,0 +1,661 @@ + + + + 1280 + 11C74 + 1938 + 1138.23 + 567.00 + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + 933 + + + IBUIButton + IBUIImageView + IBUIView + IBProxyObject + + + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + PluginDependencyRecalculationVersion + + + + + IBFilesOwner + IBIPadFramework + + + IBFirstResponder + IBIPadFramework + + + + 274 + {768, 1004} + + + + 4 + MAA + + IBIPadFramework + + + + 274 + + + + 292 + {{-9, 0}, {777, 1004}} + + + _NS:569 + NO + IBIPadFramework + + + + 292 + {{329, 942}, {108, 62}} + + + + NO + IBIPadFramework + 0 + 0 + + 3 + MQA + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + 3 + MC41AA + + + NSImage + stopcall-red.png + + + NSImage + clavier-01-108px.png + + + Helvetica-Bold + Helvetica + 2 + 15 + + + Helvetica-Bold + 15 + 16 + + + + + 292 + {{223, 942}, {108, 62}} + + + + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + + + + + + + 292 + {{598, 779}, {170, 225}} + + + + 3 + MQA + + 2 + + + IBIPadFramework + + + + 292 + {{436, 942}, {108, 62}} + + + + NO + IBIPadFramework + 0 + 0 + 1 + switch + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + + + + + + {768, 1004} + + + + _NS:212 + + 3 + MC42NjY2NjY2NjY3AA + + IBIPadFramework + + + + 274 + + + + 292 + {1004, 768} + + + _NS:569 + NO + IBIPadFramework + + + + 292 + {{779, 598}, {225, 170}} + + + + + 3 + MQA + + + IBIPadFramework + + + + 292 + {{341, 706}, {108, 62}} + + + + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + + + + + + + 292 + {{448, 706}, {108, 62}} + + + + NO + IBIPadFramework + 0 + 0 + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + + + + + + + + 292 + {{555, 706}, {108, 62}} + + + NO + IBIPadFramework + 0 + 0 + 1 + switch + + + 1 + MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA + + + + + + + + {1004, 768} + + + + _NS:212 + + 1 + MC4xOTYwNzg0MzE0IDAuMzA5ODAzOTIxNiAwLjUyMTU2ODYyNzUAA + + + 3 + 3 + + IBIPadFramework + + + + + + + mCamSwitch + + + + 13 + + + + mCamSwitchLand + + + + 14 + + + + mHangUp + + + + 16 + + + + mHangUpLand + + + + 17 + + + + mLandscape + + + + 18 + + + + mPortrait + + + + 19 + + + + mPreview + + + + 20 + + + + mPreviewLand + + + + 21 + + + + view + + + + 22 + + + + mMute + + + + 23 + + + + mMuteLand + + + + 24 + + + + mDisplay + + + + 27 + + + + mDisplayLand + + + + 28 + + + + + + 0 + + + + + + 1 + + + + root + + + -1 + + + File's Owner + + + -2 + + + + + 3 + + + + + + + + + + portrait + + + 4 + + + + + + + + + + landscape + + + 5 + + + Hang Up Button + + + 6 + + + + + 7 + + + preview + + + 8 + + + + + 10 + + + + preview + + + 11 + + + Hang Up Button + + + 12 + + + + + 9 + + + + + 25 + + + + + 26 + + + + + + + VideoViewController + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIResponder + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIHangUpButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UICamSwitch + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIHangUpButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIMuteButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UICamSwitch + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + UIMuteButton + com.apple.InterfaceBuilder.IBCocoaTouchPlugin + + + + + + 28 + + + + + UICamSwitch + UIButton + + preview + UIView + + + preview + + preview + UIView + + + + IBProjectSource + ./Classes/UICamSwitch.h + + + + UIHangUpButton + UIButton + + IBProjectSource + ./Classes/UIHangUpButton.h + + + + UIMuteButton + UIToggleButton + + IBProjectSource + ./Classes/UIMuteButton.h + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + VideoViewController + UIViewController + + UICamSwitch + UICamSwitch + UIView + UIView + UIHangUpButton + UIHangUpButton + UIView + UIMuteButton + UIMuteButton + UIView + UIView + UIView + + + + mCamSwitch + UICamSwitch + + + mCamSwitchLand + UICamSwitch + + + mDisplay + UIView + + + mDisplayLand + UIView + + + mHangUp + UIHangUpButton + + + mHangUpLand + UIHangUpButton + + + mLandscape + UIView + + + mMute + UIMuteButton + + + mMuteLand + UIMuteButton + + + mPortrait + UIView + + + mPreview + UIView + + + mPreviewLand + UIView + + + + IBProjectSource + ./Classes/VideoViewController.h + + + + + 0 + IBIPadFramework + YES + 3 + + {108, 60} + {62, 54} + + 933 + + diff --git a/PhoneMainView.xib b/PhoneMainView.xib index f7b3253b1..3953ea8da 100644 --- a/PhoneMainView.xib +++ b/PhoneMainView.xib @@ -47,7 +47,6 @@ {320, 480} - 1 MSAxIDEAA @@ -66,17 +65,17 @@ IBCocoaTouchFramework NO - - - Dialer + + History + + History NSImage - dialer-orange.png + history-orange.png IBCocoaTouchFramework - PhoneViewController 1 @@ -87,17 +86,18 @@ YES - - History - - History + + + + Dialer NSImage - history-orange.png + dialer-orange.png IBCocoaTouchFramework + PhoneViewController 1 @@ -106,7 +106,6 @@ IBCocoaTouchFramework NO - IBCocoaTouchFramework @@ -141,7 +140,6 @@ 266 {{0, 431}, {320, 49}} - 3 MCAwAA diff --git a/linphone-Info.plist b/linphone-Info.plist index a2bb16988..1c7755433 100644 --- a/linphone-Info.plist +++ b/linphone-Info.plist @@ -26,6 +26,8 @@ 1.1.0.1 NSMainNibFile PhoneMainView + NSMainNibFile~ipad + MainScreenWithVideoPreview UIApplicationExitsOnSuspend UIBackgroundModes diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 7028f4316..26cbb301a 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -218,6 +218,12 @@ 22F254811073D99800AC9B3F /* ringback.wav in Resources */ = {isa = PBXBuildFile; fileRef = 22F254801073D99800AC9B3F /* ringback.wav */; }; 22F51EF6107FA66500F98953 /* untitled.plist in Resources */ = {isa = PBXBuildFile; fileRef = 22F51EF5107FA66500F98953 /* untitled.plist */; }; 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; + 341FCA8E149798210084BC26 /* linphonerc-ipad in Resources */ = {isa = PBXBuildFile; fileRef = 341FCA8D149798210084BC26 /* linphonerc-ipad */; }; + 341FCA8F149798210084BC26 /* linphonerc-ipad in Resources */ = {isa = PBXBuildFile; fileRef = 341FCA8D149798210084BC26 /* linphonerc-ipad */; }; + 3422AA5014975EC9000D4E8A /* InCallViewController-ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3422AA4F14975EC9000D4E8A /* InCallViewController-ipad.xib */; }; + 3422AA5114975EC9000D4E8A /* InCallViewController-ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3422AA4F14975EC9000D4E8A /* InCallViewController-ipad.xib */; }; + 3422AA5314978352000D4E8A /* PhoneViewController-ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3422AA5214978352000D4E8A /* PhoneViewController-ipad.xib */; }; + 3422AA5414978352000D4E8A /* PhoneViewController-ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3422AA5214978352000D4E8A /* PhoneViewController-ipad.xib */; }; 344ABD72147FC438007420B6 /* ConferenceCallDetailView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 344ABD71147FC438007420B6 /* ConferenceCallDetailView.xib */; }; 344ABD73147FC438007420B6 /* ConferenceCallDetailView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 344ABD71147FC438007420B6 /* ConferenceCallDetailView.xib */; }; 344ABD77147FCB68007420B6 /* ConferenceCallDetailView.m in Sources */ = {isa = PBXBuildFile; fileRef = 344ABD76147FCB68007420B6 /* ConferenceCallDetailView.m */; }; @@ -230,6 +236,12 @@ 344ABDF114850AE9007420B6 /* libc++.1.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 344ABDEF14850AE9007420B6 /* libc++.1.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 344ABDF214850AE9007420B6 /* libstdc++.6.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 344ABDF014850AE9007420B6 /* libstdc++.6.dylib */; settings = {ATTRIBUTES = (Weak, ); }; }; 34957F3F147D3FBF00DD7A09 /* secured.png in Resources */ = {isa = PBXBuildFile; fileRef = 34957F3E147D3FBF00DD7A09 /* secured.png */; }; + 34CA852F148F646700503C01 /* MainScreenWithVideoPreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34CA852E148F646700503C01 /* MainScreenWithVideoPreview.xib */; }; + 34CA8530148F646700503C01 /* MainScreenWithVideoPreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34CA852E148F646700503C01 /* MainScreenWithVideoPreview.xib */; }; + 34CA8535148F669900503C01 /* VideoViewController-ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34CA8534148F669900503C01 /* VideoViewController-ipad.xib */; }; + 34CA8536148F669900503C01 /* VideoViewController-ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34CA8534148F669900503C01 /* VideoViewController-ipad.xib */; }; + 34CA8539148F692A00503C01 /* MainScreenWithVideoPreview.m in Sources */ = {isa = PBXBuildFile; fileRef = 34CA8538148F692A00503C01 /* MainScreenWithVideoPreview.m */; }; + 34CA853A148F692A00503C01 /* MainScreenWithVideoPreview.m in Sources */ = {isa = PBXBuildFile; fileRef = 34CA8538148F692A00503C01 /* MainScreenWithVideoPreview.m */; }; 34F2F678147D2E1C00A2D5E3 /* contact_vide.png in Resources */ = {isa = PBXBuildFile; fileRef = 34F2F677147D2E1C00A2D5E3 /* contact_vide.png */; }; 70571E1A13FABCB000CDD3C2 /* rootca.pem in Resources */ = {isa = PBXBuildFile; fileRef = 70571E1913FABCB000CDD3C2 /* rootca.pem */; }; 7066FC0C13E830E400EFC6DC /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7066FC0B13E830E400EFC6DC /* libvpx.a */; }; @@ -581,6 +593,9 @@ 288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 32CA4F630368D1EE00C91783 /* linphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = linphone_Prefix.pch; sourceTree = ""; }; + 341FCA8D149798210084BC26 /* linphonerc-ipad */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "linphonerc-ipad"; sourceTree = ""; }; + 3422AA4F14975EC9000D4E8A /* InCallViewController-ipad.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = "InCallViewController-ipad.xib"; sourceTree = ""; }; + 3422AA5214978352000D4E8A /* PhoneViewController-ipad.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = "PhoneViewController-ipad.xib"; sourceTree = ""; }; 344ABD71147FC438007420B6 /* ConferenceCallDetailView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ConferenceCallDetailView.xib; sourceTree = ""; }; 344ABD75147FCB68007420B6 /* ConferenceCallDetailView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConferenceCallDetailView.h; sourceTree = ""; }; 344ABD76147FCB68007420B6 /* ConferenceCallDetailView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConferenceCallDetailView.m; sourceTree = ""; }; @@ -590,6 +605,10 @@ 344ABDEF14850AE9007420B6 /* libc++.1.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libc++.1.dylib"; path = "usr/lib/libc++.1.dylib"; sourceTree = SDKROOT; }; 344ABDF014850AE9007420B6 /* libstdc++.6.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = "libstdc++.6.dylib"; path = "usr/lib/libstdc++.6.dylib"; sourceTree = SDKROOT; }; 34957F3E147D3FBF00DD7A09 /* secured.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = secured.png; path = Resources/secured.png; sourceTree = ""; }; + 34CA852E148F646700503C01 /* MainScreenWithVideoPreview.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainScreenWithVideoPreview.xib; sourceTree = ""; }; + 34CA8534148F669900503C01 /* VideoViewController-ipad.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = "VideoViewController-ipad.xib"; sourceTree = ""; }; + 34CA8537148F692A00503C01 /* MainScreenWithVideoPreview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainScreenWithVideoPreview.h; sourceTree = ""; }; + 34CA8538148F692A00503C01 /* MainScreenWithVideoPreview.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainScreenWithVideoPreview.m; sourceTree = ""; }; 34F2F677147D2E1C00A2D5E3 /* contact_vide.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = contact_vide.png; path = Resources/contact_vide.png; sourceTree = ""; }; 70571E1913FABCB000CDD3C2 /* rootca.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = rootca.pem; path = Resources/rootca.pem; sourceTree = ""; }; 7066FC0B13E830E400EFC6DC /* libvpx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvpx.a; path = "liblinphone-sdk/apple-darwin/lib/libvpx.a"; sourceTree = ""; }; @@ -701,6 +720,7 @@ 2218A92312FBE1340088A667 /* FirstLoginViewController.m */, 2218A92412FBE1340088A667 /* FirstLoginViewController.xib */, 222A483112F7176F0075F07F /* IncallViewController.xib */, + 3422AA4F14975EC9000D4E8A /* InCallViewController-ipad.xib */, 222A483212F7176F0075F07F /* IncallViewController.m */, 222A483312F7176F0075F07F /* IncallViewController.h */, 22E0A81B111C44E100B04932 /* MoreViewController.xib */, @@ -714,6 +734,7 @@ 22F2508B107141E100AC9B3F /* PhoneViewController.h */, 22F2508C107141E100AC9B3F /* PhoneViewController.m */, 22F2508D107141E100AC9B3F /* PhoneViewController.xib */, + 3422AA5214978352000D4E8A /* PhoneViewController-ipad.xib */, 22B5EFE310CE5E5800777D97 /* ContactPickerDelegate.h */, 22B5EFE410CE5E5800777D97 /* ContactPickerDelegate.m */, 227BCDBF10D4004600FBFD76 /* CallHistoryTableViewController.h */, @@ -724,10 +745,14 @@ 22E028B413B4CCBD0068A713 /* VideoViewController.h */, 22E028B513B4CCBD0068A713 /* VideoViewController.m */, 22E028B613B4CCBD0068A713 /* VideoViewController.xib */, + 34CA8534148F669900503C01 /* VideoViewController-ipad.xib */, 344ABD71147FC438007420B6 /* ConferenceCallDetailView.xib */, 344ABD75147FCB68007420B6 /* ConferenceCallDetailView.h */, 344ABD76147FCB68007420B6 /* ConferenceCallDetailView.m */, 344ABD79147FD32B007420B6 /* ConferenceCallDetailCell.xib */, + 34CA8537148F692A00503C01 /* MainScreenWithVideoPreview.h */, + 34CA8538148F692A00503C01 /* MainScreenWithVideoPreview.m */, + 34CA852E148F646700503C01 /* MainScreenWithVideoPreview.xib */, ); path = Classes; sourceTree = ""; @@ -1164,6 +1189,7 @@ 22F254801073D99800AC9B3F /* ringback.wav */, 8D1107310486CEB800E47090 /* linphone-Info.plist */, 2274550710700509006EC466 /* linphonerc */, + 341FCA8D149798210084BC26 /* linphonerc-ipad */, 220FAE4A10767A6A0068D98F /* PhoneMainView.xib */, ); name = Resources; @@ -1301,6 +1327,11 @@ 344ABD72147FC438007420B6 /* ConferenceCallDetailView.xib in Resources */, 344ABD7A147FD32B007420B6 /* ConferenceCallDetailCell.xib in Resources */, 344ABDE51483E596007420B6 /* unverified.png in Resources */, + 34CA852F148F646700503C01 /* MainScreenWithVideoPreview.xib in Resources */, + 34CA8535148F669900503C01 /* VideoViewController-ipad.xib in Resources */, + 3422AA5014975EC9000D4E8A /* InCallViewController-ipad.xib in Resources */, + 3422AA5314978352000D4E8A /* PhoneViewController-ipad.xib in Resources */, + 341FCA8E149798210084BC26 /* linphonerc-ipad in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1358,6 +1389,11 @@ 344ABD73147FC438007420B6 /* ConferenceCallDetailView.xib in Resources */, 344ABD7B147FD32B007420B6 /* ConferenceCallDetailCell.xib in Resources */, 344ABDE61483E596007420B6 /* unverified.png in Resources */, + 34CA8530148F646700503C01 /* MainScreenWithVideoPreview.xib in Resources */, + 34CA8536148F669900503C01 /* VideoViewController-ipad.xib in Resources */, + 3422AA5114975EC9000D4E8A /* InCallViewController-ipad.xib in Resources */, + 3422AA5414978352000D4E8A /* PhoneViewController-ipad.xib in Resources */, + 341FCA8F149798210084BC26 /* linphonerc-ipad in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1394,6 +1430,7 @@ 2211DBC014769CB200DEE054 /* IncallViewController.m in Sources */, 22D817AD147A9F33001CFB9C /* UIAddVideoButton.m in Sources */, 344ABD77147FCB68007420B6 /* ConferenceCallDetailView.m in Sources */, + 34CA8539148F692A00503C01 /* MainScreenWithVideoPreview.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1427,6 +1464,7 @@ 2211DBC114769CB300DEE054 /* IncallViewController.m in Sources */, 22D817AE147A9F33001CFB9C /* UIAddVideoButton.m in Sources */, 344ABD78147FCB68007420B6 /* ConferenceCallDetailView.m in Sources */, + 34CA853A148F692A00503C01 /* MainScreenWithVideoPreview.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1477,7 +1515,7 @@ submodules/externals/speex/include, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", @@ -1489,7 +1527,7 @@ PROVISIONING_PROFILE = ""; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; - TARGETED_DEVICE_FAMILY = 1; + TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; }; @@ -1545,7 +1583,7 @@ submodules/externals/speex/include, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", @@ -1557,7 +1595,7 @@ "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; - TARGETED_DEVICE_FAMILY = 1; + TARGETED_DEVICE_FAMILY = "1,2"; }; name = DistributionAdhoc; }; @@ -1823,7 +1861,7 @@ submodules/externals/speex/include, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", @@ -1835,7 +1873,7 @@ "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; - TARGETED_DEVICE_FAMILY = 1; + TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; }; @@ -1891,7 +1929,7 @@ submodules/externals/speex/include, ); INFOPLIST_FILE = "linphone-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 3.1; + IPHONEOS_DEPLOYMENT_TARGET = 4.3; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", @@ -1903,7 +1941,7 @@ "PROVISIONING_PROFILE[sdk=iphoneos*]" = "075921BC-C7D8-42E1-B864-F05FD9BF841C"; SDKROOT = iphoneos; STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; - TARGETED_DEVICE_FAMILY = 1; + TARGETED_DEVICE_FAMILY = "1,2"; }; name = Distribution; }; diff --git a/linphonerc-ipad b/linphonerc-ipad new file mode 100644 index 000000000..59853ab38 --- /dev/null +++ b/linphonerc-ipad @@ -0,0 +1,47 @@ +[net] +download_bw=512 +upload_bw=512 +firewall_policy=0 +mtu=0 + +[sip] +sip_random_port=1 +sip_port=5060 +sip_tcp_random_port=1 +sip_tcp_port=0 +sip_tls_random_port=1 +sip_tls_port=0 +guess_hostname=1 +contact=sip:toto@unknown-host +inc_timeout=15 +use_info=0 +use_ipv6=0 +default_proxy=-1 +register_only_when_network_is_up=1 +auto_net_state_mon=0 +keepalive_period=30000 + +[rtp] +audio_rtp_port=7076 +video_rtp_port=9078 +audio_jitt_comp=60 +video_jitt_comp=60 +nortp_timeout=30 + +[sound] +playback_dev_id=AU: Audio Unit Receiver +ringer_dev_id=AQ: Audio Queue Device +capture_dev_id=AU: Audio Unit Receiver +echocancellation=0 + +[misc] +history_max_size=30 +max_calls=3 + +[video] +display=1 +capture=1 +show_local=0 +enabled=1 +size=vga + diff --git a/submodules/build/builders.d/libvpx.mk b/submodules/build/builders.d/libvpx.mk index 793c0c33d..4bd2e3be9 100644 --- a/submodules/build/builders.d/libvpx.mk +++ b/submodules/build/builders.d/libvpx.mk @@ -1,16 +1,15 @@ libvpx_configure_options=\ --enable-static --disable-shared \ - --disable-examples -# --extra-cflags="-isysroot $$SYSROOT_PATH " -# -Wl,-syslibroot,$$SYSROOT_PATH " \ - --enable-error-concealment --disable-examples + --enable-error-concealment --disable-examples \ + --enable-realtime-only --enable-spatial-resampling \ + --enable-vp8 --enable-multithread ifneq (,$(findstring armv6,$(host))) libvpx_configure_options+= --target=armv6-darwin-gcc --cpu=arm1176jzf-s else ifneq (,$(findstring armv7,$(host))) libvpx_configure_options+= --target=armv7-darwin-gcc --cpu=cortex-a8 else - libvpx_configure_options+= --force-target=x86-darwin10-gcc + libvpx_configure_options+= --target=x86-darwin10-gcc endif libvpx_dir?=externals/libvpx $(BUILDER_SRC_DIR)/$(libvpx_dir)/patched : diff --git a/submodules/externals/libvpx b/submodules/externals/libvpx index 4341e5af6..aa7335e61 160000 --- a/submodules/externals/libvpx +++ b/submodules/externals/libvpx @@ -1 +1 @@ -Subproject commit 4341e5af66c92531fcd3f3e66ac18e70b3752ca9 +Subproject commit aa7335e610b961626f77130bc99b24de1031601d