mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-17 11:08:06 +00:00
Merge branch 'master' into HEAD to incorporate changes for version 2.1 (see tag 2.1)
Conflicts: Resources/en.lproj/Localizable.strings Resources/fr.lproj/Localizable.strings Resources/linphonerc-factory linphone-Info.plist
This commit is contained in:
commit
8216215669
117 changed files with 3768 additions and 971 deletions
25
.gitmodules
vendored
25
.gitmodules
vendored
|
|
@ -1,12 +1,6 @@
|
|||
[submodule "submodules/linphone"]
|
||||
path = submodules/linphone
|
||||
url = git://git.linphone.org/linphone.git
|
||||
[submodule "submodules/externals/osip"]
|
||||
path = submodules/externals/osip
|
||||
url = git://git.linphone.org/osip.git
|
||||
[submodule "submodules/externals/exosip"]
|
||||
path = submodules/externals/exosip
|
||||
url = git://git.linphone.org/exosip.git
|
||||
url = git://git.linphone.org/linphone
|
||||
[submodule "submodules/externals/gsm"]
|
||||
path = submodules/externals/gsm
|
||||
url = git://git.linphone.org/gsm.git
|
||||
|
|
@ -21,7 +15,7 @@
|
|||
url = git://git.linphone.org/libilbc-rfc3951.git
|
||||
[submodule "submodules/externals/opencore-amr"]
|
||||
path = submodules/externals/opencore-amr
|
||||
url = git://opencore-amr.git.sourceforge.net/gitroot/opencore-amr/opencore-amr
|
||||
url = git://git.code.sf.net/p/opencore-amr/code
|
||||
[submodule "submodules/msamr"]
|
||||
path = submodules/msamr
|
||||
url = git://git.linphone.org/msamr.git
|
||||
|
|
@ -49,3 +43,18 @@
|
|||
[submodule "submodules/bcg729"]
|
||||
path = submodules/bcg729
|
||||
url = git://git.linphone.org/bcg729.git
|
||||
[submodule "submodules/belle-sip"]
|
||||
path = submodules/belle-sip
|
||||
url = git://git.linphone.org/belle-sip
|
||||
[submodule "submodules/externals/antlr3"]
|
||||
path = submodules/externals/antlr3
|
||||
url = git://git.linphone.org/antlr3.git
|
||||
[submodule "submodules/externals/polarssl"]
|
||||
path = submodules/externals/polarssl
|
||||
url = git://git.linphone.org/polarssl.git
|
||||
[submodule "submodules/externals/opus"]
|
||||
path = submodules/externals/opus
|
||||
url = git://git.opus-codec.org/opus.git
|
||||
[submodule "submodules/externals/libxml2"]
|
||||
path = submodules/externals/libxml2
|
||||
url = git://git.gnome.org/libxml2
|
||||
|
|
|
|||
|
|
@ -320,8 +320,10 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta
|
|||
[chat setState:[NSNumber numberWithInt:state]];
|
||||
[chat update];
|
||||
[thiz.tableController updateChatEntry:chat];
|
||||
linphone_chat_message_set_user_data(msg, NULL);
|
||||
[chat release]; // no longuer need to keep reference
|
||||
if (state != LinphoneChatMessageStateInProgress) {
|
||||
linphone_chat_message_set_user_data(msg, NULL);
|
||||
[chat release]; // no longuer need to keep reference
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -732,6 +734,7 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta
|
|||
CGRect headerFrame = [headerView frame];
|
||||
headerFrame.origin.y = 0;
|
||||
[headerView setFrame:headerFrame];
|
||||
[headerView setAlpha:1.0];
|
||||
}
|
||||
|
||||
// Resize & Move table view
|
||||
|
|
@ -788,6 +791,7 @@ static void message_status(LinphoneChatMessage* msg,LinphoneChatMessageState sta
|
|||
CGRect headerFrame = [headerView frame];
|
||||
headerFrame.origin.y = -headerFrame.size.height;
|
||||
[headerView setFrame:headerFrame];
|
||||
[headerView setAlpha:0.0];
|
||||
}
|
||||
|
||||
// Resize & Move table view
|
||||
|
|
|
|||
|
|
@ -122,7 +122,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
if ([[addressField text ]length] == 0) { // if no address is manually set, lauch address book
|
||||
[ContactSelection setSelectionMode:ContactSelectionModeMessage];
|
||||
[ContactSelection setAddAddress:nil];
|
||||
[ContactSelection setSipFilter:TRUE];
|
||||
[ContactSelection setSipFilter: [LinphoneManager instance].contactFilter];
|
||||
[ContactSelection setEmailFilter:FALSE];
|
||||
[[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription] push:TRUE];
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -55,15 +55,15 @@
|
|||
|
||||
@implementation ContactDetailsTableViewController
|
||||
|
||||
enum _ContactSections {
|
||||
typedef enum _ContactSections {
|
||||
ContactSections_None = 0,
|
||||
ContactSections_Number,
|
||||
ContactSections_Sip,
|
||||
ContactSections_Email,
|
||||
ContactSections_MAX
|
||||
};
|
||||
} ContactSections_e;
|
||||
|
||||
static const int contactSections[ContactSections_MAX] = {ContactSections_None, ContactSections_Number, ContactSections_Sip, ContactSections_Email};
|
||||
static const ContactSections_e contactSections[ContactSections_MAX] = {ContactSections_None, ContactSections_Number, ContactSections_Sip, ContactSections_Email};
|
||||
|
||||
@synthesize footerController;
|
||||
@synthesize headerController;
|
||||
|
|
@ -198,20 +198,32 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, i);
|
||||
BOOL add = false;
|
||||
if(CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) {
|
||||
if(CFStringCompare((CFStringRef)kContactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) {
|
||||
if(CFStringCompare((CFStringRef)[LinphoneManager instance].contactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) {
|
||||
add = true;
|
||||
}
|
||||
} else {
|
||||
add = true;
|
||||
}
|
||||
if(add) {
|
||||
Entry *entry = [[Entry alloc] initWithData:identifier];
|
||||
[subArray addObject: entry];
|
||||
[entry release];
|
||||
}
|
||||
CFRelease(lDict);
|
||||
}
|
||||
CFRelease(lMap);
|
||||
} else { //check domain
|
||||
LinphoneAddress* address = linphone_address_new([(NSString*)CFDictionaryGetValue(lDict,kABPersonInstantMessageUsernameKey) UTF8String]);
|
||||
if (address) {
|
||||
if ([[ContactSelection getSipFilter] compare:@"*" options:NSCaseInsensitiveSearch] == NSOrderedSame) {
|
||||
add = true;
|
||||
} else {
|
||||
NSString* domain = [NSString stringWithCString:linphone_address_get_domain(address)
|
||||
encoding:[NSString defaultCStringEncoding]];
|
||||
add = [domain compare:[ContactSelection getSipFilter] options:NSCaseInsensitiveSearch] == NSOrderedSame;
|
||||
}
|
||||
linphone_address_destroy(address);
|
||||
} else {
|
||||
add = false;
|
||||
}
|
||||
}
|
||||
if(add) {
|
||||
Entry *entry = [[Entry alloc] initWithData:identifier];
|
||||
[subArray addObject: entry];
|
||||
[entry release];
|
||||
}
|
||||
CFRelease(lDict);
|
||||
}
|
||||
CFRelease(lMap);
|
||||
}
|
||||
[dataCache addObject:subArray];
|
||||
}
|
||||
|
|
@ -241,6 +253,68 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
[self.tableView reloadData];
|
||||
}
|
||||
|
||||
-(Entry *) setOrCreateSipContactEntry:(Entry *)entry withValue:(NSString*)value {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty);
|
||||
ABMutableMultiValueRef lMap;
|
||||
if(lcMap != NULL) {
|
||||
lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
} else {
|
||||
lMap = ABMultiValueCreateMutable(kABStringPropertyType);
|
||||
}
|
||||
ABMultiValueIdentifier index;
|
||||
NSError* error = NULL;
|
||||
|
||||
CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey};
|
||||
CFTypeRef values[] = { [value copy], [LinphoneManager instance].contactSipField };
|
||||
CFDictionaryRef lDict = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 2, NULL, NULL);
|
||||
if (entry) {
|
||||
index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]);
|
||||
ABMultiValueReplaceValueAtIndex(lMap, lDict, index);
|
||||
} else {
|
||||
|
||||
CFStringRef label = (CFStringRef)[labelArray objectAtIndex:0];
|
||||
ABMultiValueAddValueAndLabel(lMap, lDict, label, &index);
|
||||
}
|
||||
if (!ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, (CFErrorRef*)&error)) {
|
||||
[LinphoneLogger log:LinphoneLoggerLog format:@"Can't set contact with value [%@] cause [%@]", value,[error localizedDescription]];
|
||||
} else {
|
||||
if (entry == nil) {
|
||||
entry = [[Entry alloc] initWithData:index];
|
||||
}
|
||||
CFRelease(lDict);
|
||||
/*check if message type is kept or not*/
|
||||
lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty);
|
||||
lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]);
|
||||
lDict = ABMultiValueCopyValueAtIndex(lMap,index);
|
||||
if(!CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) {
|
||||
/*too bad probably a gtalk number, storing uri*/
|
||||
NSString* username = CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey);
|
||||
LinphoneAddress* address = linphone_core_interpret_url([LinphoneManager getLc]
|
||||
,[username UTF8String]);
|
||||
char* uri = linphone_address_as_string_uri_only(address);
|
||||
CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey};
|
||||
CFTypeRef values[] = { [NSString stringWithCString:uri encoding:[NSString defaultCStringEncoding]], [LinphoneManager instance].contactSipField };
|
||||
CFDictionaryRef lDict2 = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 2, NULL, NULL);
|
||||
ABMultiValueReplaceValueAtIndex(lMap, lDict2, index);
|
||||
if (!ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, (CFErrorRef*)&error)) {
|
||||
[LinphoneLogger log:LinphoneLoggerLog format:@"Can't set contact with value [%@] cause [%@]", value,[error localizedDescription]];
|
||||
}
|
||||
CFRelease(lDict2);
|
||||
linphone_address_destroy(address);
|
||||
ms_free(uri);
|
||||
}
|
||||
CFRelease(lMap);
|
||||
}
|
||||
CFRelease(lDict);
|
||||
|
||||
return entry;
|
||||
}
|
||||
-(void) setSipContactEntry:(Entry *)entry withValue:(NSString*)value {
|
||||
[self setOrCreateSipContactEntry:entry withValue:value];
|
||||
}
|
||||
- (void)addEntry:(UITableView*)tableview section:(NSInteger)section animated:(BOOL)animated {
|
||||
[self addEntry:tableview section:section animated:animated value:@""];
|
||||
}
|
||||
|
|
@ -275,33 +349,15 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
}
|
||||
CFRelease(lMap);
|
||||
} else if(contactSections[section] == ContactSections_Sip) {
|
||||
ABMultiValueIdentifier identifier;
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty);
|
||||
ABMutableMultiValueRef lMap;
|
||||
if(lcMap != NULL) {
|
||||
lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
} else {
|
||||
lMap = ABMultiValueCreateMutable(kABDictionaryPropertyType);
|
||||
}
|
||||
CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey };
|
||||
CFTypeRef values[] = { [value copy], kContactSipField };
|
||||
CFDictionaryRef lDict = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 1, NULL, NULL);
|
||||
CFStringRef label = (CFStringRef)[labelArray objectAtIndex:0];
|
||||
if(!ABMultiValueAddValueAndLabel(lMap, lDict, label, &identifier)) {
|
||||
added = false;
|
||||
}
|
||||
CFRelease(lDict);
|
||||
|
||||
if(added && ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, (CFErrorRef*)&error)) {
|
||||
Entry *entry = [[Entry alloc] initWithData:identifier];
|
||||
[sectionArray addObject:entry];
|
||||
[entry release];
|
||||
} else {
|
||||
added = false;
|
||||
[LinphoneLogger log:LinphoneLoggerError format:@"Can't add entry: %@", [error localizedDescription]];
|
||||
}
|
||||
CFRelease(lMap);
|
||||
Entry *entry = [self setOrCreateSipContactEntry:nil withValue:value];
|
||||
if (entry) {
|
||||
[sectionArray addObject:entry];
|
||||
[entry release];
|
||||
added=true;
|
||||
} else {
|
||||
added=false;
|
||||
[LinphoneLogger log:LinphoneLoggerError format:@"Can't add entry for value: %@", value];
|
||||
}
|
||||
} else if(contactSections[section] == ContactSections_Email) {
|
||||
ABMultiValueIdentifier identifier;
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonEmailProperty);
|
||||
|
|
@ -459,6 +515,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
[cell.detailTextField setDelegate:self];
|
||||
[cell.detailTextField setAutocapitalizationType:UITextAutocapitalizationTypeNone];
|
||||
[cell.detailTextField setAutocorrectionType:UITextAutocorrectionTypeNo];
|
||||
[cell setBackgroundColor:[UIColor whiteColor]];
|
||||
|
||||
// Background View
|
||||
UACellBackgroundView *selectedBackgroundView = [[[UACellBackgroundView alloc] initWithFrame:CGRectZero] autorelease];
|
||||
|
|
@ -497,7 +554,17 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, index);
|
||||
CFStringRef valueRef = CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey);
|
||||
if(valueRef != NULL) {
|
||||
value = [NSString stringWithString:(NSString*) valueRef];
|
||||
LinphoneAddress* addr=NULL;
|
||||
if ([[LinphoneManager instance] lpConfigBoolForKey:@"contact_display_username_only"]
|
||||
&& (addr=linphone_address_new([(NSString *)valueRef UTF8String]))) {
|
||||
if (linphone_address_get_username(addr)) {
|
||||
value = [NSString stringWithCString:linphone_address_get_username(addr)
|
||||
encoding:[NSString defaultCStringEncoding]];
|
||||
} /*else value=@""*/
|
||||
} else {
|
||||
value = [NSString stringWithString:(NSString*) valueRef];
|
||||
}
|
||||
if (addr) linphone_address_destroy(addr);
|
||||
}
|
||||
CFRelease(lDict);
|
||||
CFRelease(lMap);
|
||||
|
|
@ -537,7 +604,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
NSMutableArray *sectionDict = [self getSectionData:[indexPath section]];
|
||||
Entry *entry = [sectionDict objectAtIndex:[indexPath row]];
|
||||
if (![self isEditing]) {
|
||||
NSString *dest;
|
||||
NSString *dest=NULL;;
|
||||
if(contactSections[[indexPath section]] == ContactSections_Number) {
|
||||
ABMultiValueRef lMap = ABRecordCopyValue(contact, kABPersonPhoneProperty);
|
||||
int index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]);
|
||||
|
|
@ -642,7 +709,6 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
|
||||
#pragma mark - UITableViewDelegate Functions
|
||||
|
||||
|
||||
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
|
||||
bool_t showEmails = [[LinphoneManager instance] lpConfigBoolForKey:@"show_contacts_emails_preference"];
|
||||
// Resign keyboard
|
||||
|
|
@ -657,18 +723,25 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
[self.tableView beginUpdates];
|
||||
}
|
||||
if(editing) {
|
||||
// add phony entries so that the user can add new data
|
||||
for (int section = 0; section < [self numberOfSectionsInTableView:[self tableView]]; ++section) {
|
||||
if(contactSections[section] == ContactSections_Number ||
|
||||
contactSections[section] == ContactSections_Sip ||
|
||||
(showEmails && contactSections[section] == ContactSections_Email))
|
||||
[self addEntry:self.tableView section:section animated:animated];
|
||||
(showEmails && contactSections[section] == ContactSections_Email)) {
|
||||
[self addEntry:self.tableView section:section animated:animated];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (int section = 0; section < [self numberOfSectionsInTableView:[self tableView]]; ++section) {
|
||||
// remove phony entries that were not filled by the user
|
||||
if(contactSections[section] == ContactSections_Number ||
|
||||
contactSections[section] == ContactSections_Sip ||
|
||||
(showEmails && contactSections[section] == ContactSections_Email))
|
||||
[self removeEmptyEntry:self.tableView section:section animated:animated];
|
||||
contactSections[section] == ContactSections_Sip ||
|
||||
(showEmails && contactSections[section] == ContactSections_Email)) {
|
||||
[self removeEmptyEntry:self.tableView section:section animated:animated];
|
||||
if( [[self getSectionData:section] count] == 0 ) // the section is empty -> remove titles
|
||||
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:section]
|
||||
withRowAnimation:animated?UITableViewRowAnimationFade:UITableViewRowAnimationNone];
|
||||
}
|
||||
}
|
||||
}
|
||||
if(animated) {
|
||||
|
|
@ -707,6 +780,8 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
}
|
||||
|
||||
- (NSString*)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
|
||||
if( [[self getSectionData:section] count] == 0) return nil;
|
||||
|
||||
if(contactSections[section] == ContactSections_Number) {
|
||||
return NSLocalizedString(@"Phone numbers", nil);
|
||||
} else if(contactSections[section] == ContactSections_Sip) {
|
||||
|
|
@ -718,7 +793,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
}
|
||||
|
||||
- (NSString*)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section {
|
||||
return @"";
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
|
||||
|
|
@ -753,7 +828,8 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
if(value != nil) {
|
||||
NSMutableArray *sectionDict = [self getSectionData:[editingIndexPath section]];
|
||||
Entry *entry = [sectionDict objectAtIndex:[editingIndexPath row]];
|
||||
if(contactSections[[editingIndexPath section]] == ContactSections_Number) {
|
||||
ContactSections_e thesection = contactSections[[editingIndexPath section]];
|
||||
if(thesection == ContactSections_Number) {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonPhoneProperty);
|
||||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
|
|
@ -761,7 +837,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)(value), index);
|
||||
ABRecordSetValue(contact, kABPersonPhoneProperty, lMap, nil);
|
||||
CFRelease(lMap);
|
||||
} else if(contactSections[[editingIndexPath section]] == ContactSections_Sip) {
|
||||
} else if(thesection == ContactSections_Sip) {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty);
|
||||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
|
|
@ -769,7 +845,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)(value), index);
|
||||
ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, nil);
|
||||
CFRelease(lMap);
|
||||
} else if(contactSections[[editingIndexPath section]] == ContactSections_Email) {
|
||||
} else if(thesection == ContactSections_Email) {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonEmailProperty);
|
||||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
|
|
@ -780,6 +856,7 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
}
|
||||
[self.tableView beginUpdates];
|
||||
[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject: editingIndexPath] withRowAnimation:FALSE];
|
||||
[self.tableView reloadSectionIndexTitles];
|
||||
[self.tableView endUpdates];
|
||||
}
|
||||
[editingIndexPath release];
|
||||
|
|
@ -804,14 +881,16 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
|
||||
UIView *view = [textField superview];
|
||||
// Find TableViewCell
|
||||
if(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview];
|
||||
while(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview];
|
||||
if(view != nil) {
|
||||
UIEditableTableViewCell *cell = (UIEditableTableViewCell*)view;
|
||||
NSIndexPath *path = [self.tableView indexPathForCell:cell];
|
||||
NSMutableArray *sectionDict = [self getSectionData:[path section]];
|
||||
Entry *entry = [sectionDict objectAtIndex:[path row]];
|
||||
ContactSections_e sect = contactSections[[path section]];
|
||||
|
||||
NSString *value = [textField text];
|
||||
if(contactSections[[path section]] == ContactSections_Number) {
|
||||
if(sect == ContactSections_Number) {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonPhoneProperty);
|
||||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
|
|
@ -819,19 +898,9 @@ static const int contactSections[ContactSections_MAX] = {ContactSections_None, C
|
|||
ABMultiValueReplaceValueAtIndex(lMap, (CFStringRef)value, index);
|
||||
ABRecordSetValue(contact, kABPersonPhoneProperty, lMap, nil);
|
||||
CFRelease(lMap);
|
||||
} else if(contactSections[[path section]] == ContactSections_Sip) {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonInstantMessageProperty);
|
||||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
int index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]);
|
||||
CFStringRef keys[] = { kABPersonInstantMessageUsernameKey, kABPersonInstantMessageServiceKey};
|
||||
CFTypeRef values[] = { [value copy], kContactSipField };
|
||||
CFDictionaryRef lDict = CFDictionaryCreate(NULL, (const void **)&keys, (const void **)&values, 2, NULL, NULL);
|
||||
ABMultiValueReplaceValueAtIndex(lMap, lDict, index);
|
||||
CFRelease(lDict);
|
||||
ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, nil);
|
||||
CFRelease(lMap);
|
||||
} else if(contactSections[[path section]] == ContactSections_Email) {
|
||||
} else if(sect == ContactSections_Sip) {
|
||||
[self setSipContactEntry:entry withValue:value];
|
||||
} else if(sect == ContactSections_Email) {
|
||||
ABMultiValueRef lcMap = ABRecordCopyValue(contact, kABPersonEmailProperty);
|
||||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
|
|
|
|||
|
|
@ -87,13 +87,26 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, i);
|
||||
if(CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) {
|
||||
CFStringRef serviceKey = CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey);
|
||||
if(CFStringCompare((CFStringRef)@"SIP", serviceKey, kCFCompareCaseInsensitive) == 0) {
|
||||
add = true;
|
||||
}
|
||||
} else {
|
||||
NSString* usernameKey = CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey);
|
||||
if([usernameKey hasPrefix:@"sip:"]) {
|
||||
CFStringRef username = username=CFDictionaryGetValue(lDict, kABPersonInstantMessageUsernameKey);
|
||||
if(CFStringCompare((CFStringRef)[LinphoneManager instance].contactSipField, serviceKey, kCFCompareCaseInsensitive) == 0) {
|
||||
add = true;
|
||||
} else {
|
||||
add=false;
|
||||
}
|
||||
} else {
|
||||
//check domain
|
||||
LinphoneAddress* address = linphone_address_new([(NSString*)CFDictionaryGetValue(lDict,kABPersonInstantMessageUsernameKey) UTF8String]);
|
||||
if (address) {
|
||||
if ([[ContactSelection getSipFilter] compare:@"*" options:NSCaseInsensitiveSearch] == NSOrderedSame) {
|
||||
add = true;
|
||||
} else {
|
||||
NSString* domain = [NSString stringWithCString:linphone_address_get_domain(address)
|
||||
encoding:[NSString defaultCStringEncoding]];
|
||||
add = [domain compare:[ContactSelection getSipFilter] options:NSCaseInsensitiveSearch] == NSOrderedSame;
|
||||
}
|
||||
linphone_address_destroy(address);
|
||||
} else {
|
||||
add = false;
|
||||
}
|
||||
}
|
||||
CFRelease(lDict);
|
||||
|
|
|
|||
|
|
@ -36,8 +36,9 @@ typedef enum _ContactSelectionMode {
|
|||
+ (ContactSelectionMode)getSelectionMode;
|
||||
+ (void)setAddAddress:(NSString*)address;
|
||||
+ (NSString*)getAddAddress;
|
||||
+ (void)setSipFilter:(BOOL)enable;
|
||||
+ (BOOL)getSipFilter;
|
||||
/* define sip filter, can be * or sip domain*/
|
||||
+ (void)setSipFilter:(NSString*) domain;
|
||||
+ (NSString*)getSipFilter;
|
||||
+ (void)setEmailFilter:(BOOL)enable;
|
||||
+ (BOOL)getEmailFilter;
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
|
||||
static ContactSelectionMode sSelectionMode = ContactSelectionModeNone;
|
||||
static NSString* sAddAddress = nil;
|
||||
static BOOL sSipFilter = FALSE;
|
||||
static NSString* sSipFilter = nil;
|
||||
static BOOL sEmailFilter = FALSE;
|
||||
|
||||
+ (void)setSelectionMode:(ContactSelectionMode)selectionMode {
|
||||
|
|
@ -52,11 +52,12 @@ static BOOL sEmailFilter = FALSE;
|
|||
return sAddAddress;
|
||||
}
|
||||
|
||||
+ (void)setSipFilter:(BOOL)enable {
|
||||
sSipFilter = enable;
|
||||
+ (void)setSipFilter:(NSString*)domain {
|
||||
[sSipFilter release];
|
||||
sSipFilter = [domain retain];
|
||||
}
|
||||
|
||||
+ (BOOL)getSipFilter {
|
||||
+ (NSString*)getSipFilter {
|
||||
return sSipFilter;
|
||||
}
|
||||
|
||||
|
|
@ -197,7 +198,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
|
||||
- (void)changeView:(HistoryView)view {
|
||||
if(view == History_All) {
|
||||
[ContactSelection setSipFilter:FALSE];
|
||||
[ContactSelection setSipFilter:nil];
|
||||
[ContactSelection setEmailFilter:FALSE];
|
||||
[tableController loadData];
|
||||
allButton.selected = TRUE;
|
||||
|
|
@ -206,7 +207,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
}
|
||||
|
||||
if(view == History_Linphone) {
|
||||
[ContactSelection setSipFilter:TRUE];
|
||||
[ContactSelection setSipFilter:[LinphoneManager instance].contactFilter];
|
||||
[ContactSelection setEmailFilter:FALSE];
|
||||
[tableController loadData];
|
||||
linphoneButton.selected = TRUE;
|
||||
|
|
|
|||
|
|
@ -153,6 +153,17 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
[videoCameraSwitch setHidden:TRUE];
|
||||
}
|
||||
}
|
||||
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_6_0 // attributed string only available since iOS6
|
||||
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
|
||||
// fix placeholder bar color in iOS7
|
||||
UIColor *color = [UIColor grayColor];
|
||||
addressField.attributedPlaceholder = [[NSAttributedString alloc]
|
||||
initWithString:addressField.placeholder
|
||||
attributes:@{NSForegroundColorAttributeName: color}];
|
||||
}
|
||||
#endif
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -317,7 +328,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
- (IBAction)onAddContactClick: (id) event {
|
||||
[ContactSelection setSelectionMode:ContactSelectionModeEdit];
|
||||
[ContactSelection setAddAddress:[addressField text]];
|
||||
[ContactSelection setSipFilter:FALSE];
|
||||
[ContactSelection setSipFilter:nil];
|
||||
[ContactSelection setEmailFilter:FALSE];
|
||||
ContactsViewController *controller = DYNAMIC_CAST([[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription] push:TRUE], ContactsViewController);
|
||||
if(controller != nil) {
|
||||
|
|
|
|||
|
|
@ -281,13 +281,15 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
// contact name
|
||||
[plainAddressLabel setText:@""];
|
||||
if (addr != NULL) {
|
||||
char* lAddress = linphone_address_as_string_uri_only(addr);
|
||||
if(lAddress != NULL) {
|
||||
[plainAddressLabel setText:[NSString stringWithUTF8String:lAddress]];
|
||||
ms_free(lAddress);
|
||||
} else {
|
||||
|
||||
}
|
||||
if ([[LinphoneManager instance] lpConfigBoolForKey:@"contact_display_username_only"]) {
|
||||
[plainAddressLabel setText:[NSString stringWithUTF8String:linphone_address_get_username(addr)?linphone_address_get_username(addr):""]];
|
||||
} else {
|
||||
char* lAddress = linphone_address_as_string_uri_only(addr);
|
||||
if(lAddress != NULL) {
|
||||
[plainAddressLabel setText:[NSString stringWithUTF8String:lAddress]];
|
||||
ms_free(lAddress);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (addr != NULL) {
|
||||
|
|
@ -327,7 +329,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
[ContactSelection setAddAddress:[NSString stringWithUTF8String:lAddress]];
|
||||
[ContactSelection setSelectionMode:ContactSelectionModeEdit];
|
||||
|
||||
[ContactSelection setSipFilter:FALSE];
|
||||
[ContactSelection setSipFilter:nil];
|
||||
[ContactSelection setEmailFilter:FALSE];
|
||||
ContactsViewController *controller = DYNAMIC_CAST([[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription] push:TRUE], ContactsViewController);
|
||||
if(controller != nil) {
|
||||
|
|
|
|||
|
|
@ -185,11 +185,8 @@
|
|||
}
|
||||
if(useLinphoneAddress) {
|
||||
const char* lDisplayName = linphone_address_get_display_name(addr);
|
||||
const char* lUserName = linphone_address_get_username(addr);
|
||||
if (lDisplayName)
|
||||
if (lDisplayName)
|
||||
displayName = [NSString stringWithUTF8String:lDisplayName];
|
||||
else if(lUserName)
|
||||
displayName = [NSString stringWithUTF8String:lUserName];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -144,6 +144,9 @@
|
|||
[LinphoneLogger log:LinphoneLoggerLog format:@"PushNotification from launch received."];
|
||||
[self processRemoteNotification:remoteNotif];
|
||||
}
|
||||
|
||||
[[PhoneMainView instance] updateStatusBar:nil];
|
||||
|
||||
return YES;
|
||||
}
|
||||
|
||||
|
|
@ -204,6 +207,14 @@
|
|||
[[LinphoneManager instance] enableAutoAnswerForCallId:callid];
|
||||
else
|
||||
[LinphoneLogger log:LinphoneLoggerError format:@"PushNotification: does not have call-id yet, fix it !"];
|
||||
|
||||
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
|
||||
// iOS7 fix for notification sound not stopping.
|
||||
// see http://stackoverflow.com/questions/19124882/stopping-ios-7-remote-notification-sound
|
||||
[[UIApplication sharedApplication] setApplicationIconBadgeNumber: 1];
|
||||
[[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0];
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,17 +82,17 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
if (addr){
|
||||
const char *proxy=linphone_proxy_config_get_addr(cfg);
|
||||
LinphoneAddress *proxy_addr=linphone_address_new(proxy);
|
||||
const char *port=linphone_address_get_port(proxy_addr);
|
||||
int port=linphone_address_get_port(proxy_addr);
|
||||
|
||||
[self setString: linphone_address_get_username(addr) forKey:@"username_preference"];
|
||||
[self setString: linphone_address_get_domain(addr) forKey:@"domain_preference"];
|
||||
[self setInteger: linphone_proxy_config_get_expires(cfg) forKey:@"expire_preference"];
|
||||
[self setString: linphone_proxy_config_get_dial_prefix(cfg) forKey:@"prefix_preference"];
|
||||
if (strcmp(linphone_address_get_domain(addr),linphone_address_get_domain(proxy_addr))!=0
|
||||
|| port!=NULL){
|
||||
|| port>0){
|
||||
char tmp[256]={0};
|
||||
if (port!=NULL) {
|
||||
snprintf(tmp,sizeof(tmp)-1,"%s:%s",linphone_address_get_domain(proxy_addr),port);
|
||||
if (port>0) {
|
||||
snprintf(tmp,sizeof(tmp)-1,"%s:%i",linphone_address_get_domain(proxy_addr),port);
|
||||
}else snprintf(tmp,sizeof(tmp)-1,"%s",linphone_address_get_domain(proxy_addr));
|
||||
[self setString: tmp forKey:@"proxy_preference"];
|
||||
}
|
||||
|
|
@ -182,7 +182,19 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
|
||||
{
|
||||
[self transformCodecsToKeys: linphone_core_get_audio_codecs(lc)];
|
||||
[self transformCodecsToKeys: linphone_core_get_video_codecs(lc)];
|
||||
[self transformCodecsToKeys: linphone_core_get_video_codecs(lc)];
|
||||
[self setBool:linphone_core_adaptive_rate_control_enabled(lc) forKey:@"adaptive_rate_control_preference"];
|
||||
LpConfig *config = linphone_core_get_config(lc);
|
||||
[self setInteger:lp_config_get_int(config, "audio", "codec_bitrate_limit", 32) forKey:@"audio_codec_bitrate_limit_preference"];
|
||||
|
||||
PayloadType *pt;
|
||||
const MSList *elem;
|
||||
for (elem=linphone_core_get_audio_codecs(lc);elem!=NULL;elem=elem->next){
|
||||
pt=(PayloadType*)elem->data;
|
||||
if ((strcmp(pt->mime_type, "opus") == 0) || (strcmp(pt->mime_type, "mpeg4-generic") == 0)) {
|
||||
pt->normal_bitrate = [self integerForKey:@"audio_codec_bitrate_limit_preference"] * 1000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
|
|
@ -233,6 +245,16 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
[self setBool:(pol->automatically_accept) forKey:@"accept_video_preference"];
|
||||
[self setBool:linphone_core_self_view_enabled(lc) forKey:@"self_video_preference"];
|
||||
[self setBool:linphone_core_video_preview_enabled(lc) forKey:@"preview_preference"];
|
||||
MSVideoSize vsize = linphone_core_get_preferred_video_size(lc);
|
||||
int index;
|
||||
if ((vsize.width == MS_VIDEO_SIZE_720P_W) && (vsize.height == MS_VIDEO_SIZE_720P_H)) {
|
||||
index = 0;
|
||||
} else if ((vsize.width == MS_VIDEO_SIZE_VGA_W) && (vsize.height == MS_VIDEO_SIZE_VGA_H)) {
|
||||
index = 1;
|
||||
} else {
|
||||
index = 2;
|
||||
}
|
||||
[self setInteger:index forKey:@"video_preferred_size_preference"];
|
||||
}
|
||||
{
|
||||
[self setBool:linphone_core_get_use_info_for_dtmf(lc) forKey:@"sipinfo_dtmf_preference"];
|
||||
|
|
@ -486,12 +508,19 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
pt=(PayloadType*)elem->data;
|
||||
NSString *pref=[LinphoneManager getPreferenceForCodec:pt->mime_type withRate:pt->clock_rate];
|
||||
linphone_core_enable_payload_type(lc,pt,[self boolForKey: pref]);
|
||||
if ((strcmp(pt->mime_type, "opus") == 0) || (strcmp(pt->mime_type, "mpeg4-generic") == 0)) {
|
||||
pt->normal_bitrate = [self integerForKey:@"audio_codec_bitrate_limit_preference"] * 1000;
|
||||
}
|
||||
}
|
||||
for (elem=linphone_core_get_video_codecs(lc);elem!=NULL;elem=elem->next){
|
||||
pt=(PayloadType*)elem->data;
|
||||
NSString *pref=[LinphoneManager getPreferenceForCodec:pt->mime_type withRate:pt->clock_rate];
|
||||
linphone_core_enable_payload_type(lc,pt,[self boolForKey: pref]);
|
||||
}
|
||||
|
||||
LpConfig *config = linphone_core_get_config(lc);
|
||||
lp_config_set_int(config, "audio", "codec_bitrate_limit", [self integerForKey:@"audio_codec_bitrate_limit_preference"]);
|
||||
linphone_core_enable_adaptive_rate_control(lc, [self boolForKey:@"adaptive_rate_control_preference"]);
|
||||
|
||||
linphone_core_set_use_info_for_dtmf(lc, [self boolForKey:@"sipinfo_dtmf_preference"]);
|
||||
linphone_core_set_use_rfc2833_for_dtmf(lc, [self boolForKey:@"rfc_dtmf_preference"]);
|
||||
|
|
@ -529,6 +558,26 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
linphone_core_set_video_policy(lc, &policy);
|
||||
linphone_core_enable_self_view(lc, [self boolForKey:@"self_video_preference"]);
|
||||
linphone_core_enable_video_preview(lc, [self boolForKey:@"preview_preference"]);
|
||||
MSVideoSize vsize;
|
||||
int bw;
|
||||
switch ([self integerForKey:@"video_preferred_size_preference"]) {
|
||||
case 0:
|
||||
MS_VIDEO_SIZE_ASSIGN(vsize, 720P);
|
||||
bw = 1024 * 1024;
|
||||
break;
|
||||
case 1:
|
||||
MS_VIDEO_SIZE_ASSIGN(vsize, VGA);
|
||||
bw = 512 * 1024;
|
||||
break;
|
||||
case 2:
|
||||
default:
|
||||
MS_VIDEO_SIZE_ASSIGN(vsize, QVGA);
|
||||
bw = 380 * 1024;
|
||||
break;
|
||||
}
|
||||
linphone_core_set_preferred_video_size(lc, vsize);
|
||||
[self setInteger: bw forKey:@"upload_bandwidth_preference"];
|
||||
[self setInteger: bw forKey:@"download_bandwidth_preference"];
|
||||
|
||||
// Primary contact
|
||||
NSString* displayname = [self stringForKey:@"primary_displayname_preference"];
|
||||
|
|
|
|||
|
|
@ -47,8 +47,6 @@ extern NSString *const kLinphoneLogsUpdate;
|
|||
extern NSString *const kLinphoneSettingsUpdate;
|
||||
extern NSString *const kLinphoneBluetoothAvailabilityUpdate;
|
||||
|
||||
extern NSString *const kContactSipField;
|
||||
|
||||
typedef enum _NetworkType {
|
||||
network_none = 0,
|
||||
network_2g,
|
||||
|
|
@ -117,6 +115,7 @@ typedef struct _LinphoneManagerSounds {
|
|||
+ (NSSet *)unsupportedCodecs;
|
||||
+ (NSString *)getUserAgent;
|
||||
|
||||
|
||||
- (void)startLibLinphone;
|
||||
- (void)destroyLibLinphone;
|
||||
- (BOOL)resignActive;
|
||||
|
|
@ -144,6 +143,7 @@ typedef struct _LinphoneManagerSounds {
|
|||
|
||||
- (void)lpConfigSetString:(NSString*)value forKey:(NSString*)key;
|
||||
- (NSString*)lpConfigStringForKey:(NSString*)key;
|
||||
- (NSString*)lpConfigStringForKey:(NSString*)key withDefault:(NSString*)value;
|
||||
- (void)lpConfigSetString:(NSString*)value forKey:(NSString*)key forSection:(NSString*)section;
|
||||
- (NSString*)lpConfigStringForKey:(NSString*)key forSection:(NSString*)section;
|
||||
- (void)lpConfigSetInt:(NSInteger)value forKey:(NSString*)key;
|
||||
|
|
@ -155,6 +155,7 @@ typedef struct _LinphoneManagerSounds {
|
|||
- (void)lpConfigSetBool:(BOOL)value forKey:(NSString*)key forSection:(NSString*)section;
|
||||
- (BOOL)lpConfigBoolForKey:(NSString*)key forSection:(NSString*)section;
|
||||
|
||||
|
||||
@property (readonly) FastAddressBook* fastAddressBook;
|
||||
@property Connectivity connectivity;
|
||||
@property (readonly) NetworkType network;
|
||||
|
|
@ -168,6 +169,8 @@ typedef struct _LinphoneManagerSounds {
|
|||
@property (nonatomic, assign) BOOL bluetoothAvailable;
|
||||
@property (nonatomic, assign) BOOL bluetoothEnabled;
|
||||
@property (readonly) ALAssetsLibrary *photoLibrary;
|
||||
@property (readonly) NSString* contactSipField;
|
||||
@property (readonly,copy) NSString* contactFilter;
|
||||
|
||||
@end
|
||||
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@
|
|||
#import "LinphoneCoreSettingsStore.h"
|
||||
#import "ChatModel.h"
|
||||
|
||||
#include "linphonecore_utils.h"
|
||||
#include "linphone/linphonecore_utils.h"
|
||||
#include "lpconfig.h"
|
||||
|
||||
#define LINPHONE_LOGS_MAX_ENTRY 5000
|
||||
|
|
@ -57,7 +57,7 @@ NSString *const kLinphoneMainViewChange = @"LinphoneMainViewChange";
|
|||
NSString *const kLinphoneLogsUpdate = @"LinphoneLogsUpdate";
|
||||
NSString *const kLinphoneSettingsUpdate = @"LinphoneSettingsUpdate";
|
||||
NSString *const kLinphoneBluetoothAvailabilityUpdate = @"LinphoneBluetoothAvailabilityUpdate";
|
||||
NSString *const kContactSipField = @"SIP";
|
||||
|
||||
|
||||
|
||||
extern void libmsilbc_init();
|
||||
|
|
@ -131,6 +131,9 @@ struct codec_name_pref_table codec_pref_table[]={
|
|||
{ "mp4v-es", 90000, @"mp4v-es_preference"},
|
||||
{ "h264", 90000, @"h264_preference"},
|
||||
{ "vp8", 90000, @"vp8_preference"},
|
||||
{ "mpeg4-generic", 44100, @"aaceld_44k_preference"},
|
||||
{ "mpeg4-generic", 22050, @"aaceld_22k_preference"},
|
||||
{ "opus", 48000, @"opus_preference"},
|
||||
{ NULL,0,Nil }
|
||||
};
|
||||
|
||||
|
|
@ -243,6 +246,7 @@ struct codec_name_pref_table codec_pref_table[]={
|
|||
[self copyDefaultSettings];
|
||||
pendindCallIdFromRemoteNotif = [[NSMutableArray alloc] init ];
|
||||
photoLibrary = [[ALAssetsLibrary alloc] init];
|
||||
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
|
@ -490,7 +494,7 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char
|
|||
if(log == NULL || linphone_call_log_get_status(log) == LinphoneCallMissed) {
|
||||
UILocalNotification *notification = [[UILocalNotification alloc] init];
|
||||
notification.repeatInterval = 0;
|
||||
notification.alertBody = [NSString stringWithFormat:NSLocalizedString(@"You miss %@ call", nil), address];
|
||||
notification.alertBody = [NSString stringWithFormat:NSLocalizedString(@"You missed a call from %@", nil), address];
|
||||
notification.alertAction = NSLocalizedString(@"Show", nil);
|
||||
notification.userInfo = [NSDictionary dictionaryWithObject:[NSString stringWithUTF8String:linphone_call_log_get_call_id(log)] forKey:@"callLog"];
|
||||
[[UIApplication sharedApplication] presentLocalNotificationNow:notification];
|
||||
|
|
@ -578,7 +582,7 @@ static void linphone_iphone_registration_state(LinphoneCore *lc, LinphoneProxyCo
|
|||
[chat setMessage:[NSString stringWithUTF8String:linphone_chat_message_get_text(msg)]];
|
||||
}
|
||||
[chat setDirection:[NSNumber numberWithInt:1]];
|
||||
[chat setTime:[NSDate date]];
|
||||
[chat setTime:[NSDate dateWithTimeIntervalSince1970:linphone_chat_message_get_time(msg)]];
|
||||
[chat setRead:[NSNumber numberWithInt:0]];
|
||||
[chat create];
|
||||
|
||||
|
|
@ -774,9 +778,9 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach
|
|||
|
||||
static LinphoneCoreVTable linphonec_vtable = {
|
||||
.show =NULL,
|
||||
.call_state_changed =(LinphoneCallStateCb)linphone_iphone_call_state,
|
||||
.call_state_changed =(LinphoneCoreCallStateChangedCb)linphone_iphone_call_state,
|
||||
.registration_state_changed = linphone_iphone_registration_state,
|
||||
.notify_recv = NULL,
|
||||
.notify_presence_recv=NULL,
|
||||
.new_subscription_request = NULL,
|
||||
.auth_info_requested = NULL,
|
||||
.display_status = linphone_iphone_display_status,
|
||||
|
|
@ -838,6 +842,10 @@ static LinphoneCoreVTable linphonec_vtable = {
|
|||
,self);
|
||||
linphone_core_set_user_agent(theLinphoneCore,"LinphoneIPhone",
|
||||
[[[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey] UTF8String]);
|
||||
[_contactSipField release];
|
||||
_contactSipField = [[self lpConfigStringForKey:@"contact_im_type_value" withDefault:@"SIP"] retain];
|
||||
|
||||
|
||||
fastAddressBook = [[FastAddressBook alloc] init];
|
||||
|
||||
linphone_core_set_root_ca(theLinphoneCore, lRootCa);
|
||||
|
|
@ -937,6 +945,7 @@ static LinphoneCoreVTable linphonec_vtable = {
|
|||
//go directly to bg mode
|
||||
[self resignActive];
|
||||
}
|
||||
|
||||
|
||||
// Post event
|
||||
NSDictionary *dict = [NSDictionary dictionaryWithObject:[NSValue valueWithPointer:theLinphoneCore] forKey:@"core"];
|
||||
|
|
@ -969,6 +978,10 @@ static LinphoneCoreVTable linphonec_vtable = {
|
|||
}
|
||||
|
||||
static int comp_call_id(const LinphoneCall* call , const char *callid) {
|
||||
if (linphone_call_log_get_call_id(linphone_call_get_call_log(call)) == nil) {
|
||||
ms_error ("no callid for call [%p]", call);
|
||||
return 1;
|
||||
}
|
||||
return strcmp(linphone_call_log_get_call_id(linphone_call_get_call_log(call)), callid);
|
||||
}
|
||||
|
||||
|
|
@ -1288,6 +1301,8 @@ static void audioRouteChangeListenerCallback (
|
|||
if(displayName!=nil) {
|
||||
linphone_address_set_display_name(linphoneAddress,[displayName cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
}
|
||||
if ([[LinphoneManager instance] lpConfigBoolForKey:@"override_domain_with_default_one"])
|
||||
linphone_address_set_domain(linphoneAddress, [[[LinphoneManager instance] lpConfigStringForKey:@"domain" forSection:@"wizard"] cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
if(transfer) {
|
||||
linphone_core_transfer_call(theLinphoneCore, linphone_core_get_current_call(theLinphoneCore), [address cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
} else {
|
||||
|
|
@ -1310,6 +1325,8 @@ static void audioRouteChangeListenerCallback (
|
|||
if(displayName!=nil) {
|
||||
linphone_address_set_display_name(linphoneAddress, [displayName cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
}
|
||||
if ([[LinphoneManager instance] lpConfigBoolForKey:@"override_domain_with_default_one"])
|
||||
linphone_address_set_domain(linphoneAddress, [[[LinphoneManager instance] lpConfigStringForKey:@"domain" forSection:@"wizard"] cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
if(transfer) {
|
||||
linphone_core_transfer_call(theLinphoneCore, linphone_core_get_current_call(theLinphoneCore), linphone_address_as_string_uri_only(linphoneAddress));
|
||||
} else {
|
||||
|
|
@ -1426,6 +1443,10 @@ static void audioRouteChangeListenerCallback (
|
|||
- (NSString*)lpConfigStringForKey:(NSString*)key {
|
||||
return [self lpConfigStringForKey:key forSection:[NSString stringWithUTF8String:LINPHONERC_APPLICATION_KEY]];
|
||||
}
|
||||
- (NSString*)lpConfigStringForKey:(NSString*)key withDefault:(NSString*)defaultValue {
|
||||
NSString* value = [self lpConfigStringForKey:key];
|
||||
return value?value:defaultValue;
|
||||
}
|
||||
|
||||
- (NSString*)lpConfigStringForKey:(NSString*)key forSection:(NSString *)section {
|
||||
if (!key) return nil;
|
||||
|
|
@ -1510,4 +1531,16 @@ static void audioRouteChangeListenerCallback (
|
|||
}
|
||||
} //else nop, keep call in paused state
|
||||
}
|
||||
-(NSString*) contactFilter {
|
||||
NSString* filter=@"*";
|
||||
if ( [self lpConfigBoolForKey:@"contact_filter_on_default_domain"]) {
|
||||
LinphoneProxyConfig* proxy_cfg;
|
||||
linphone_core_get_default_proxy(theLinphoneCore, &proxy_cfg);
|
||||
if (proxy_cfg && linphone_proxy_config_get_addr(proxy_cfg)) {
|
||||
return [NSString stringWithCString:linphone_proxy_config_get_domain(proxy_cfg)
|
||||
encoding:[NSString defaultCStringEncoding]];
|
||||
}
|
||||
}
|
||||
return filter;
|
||||
}
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
#include "linphonecore.h"
|
||||
#include "UIPauseButton.h"
|
||||
#import "UITransparentTVCell.h"
|
||||
|
||||
typedef enum _UICallCellOtherView {
|
||||
UICallCellOtherView_Avatar = 0,
|
||||
|
|
@ -43,7 +44,7 @@ typedef enum _UICallCellOtherView {
|
|||
|
||||
@end
|
||||
|
||||
@interface UICallCell : UITableViewCell {
|
||||
@interface UICallCell : UITransparentTVCell {
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) UICallCellData *data;
|
||||
|
|
|
|||
|
|
@ -495,7 +495,10 @@
|
|||
|
||||
- (void)selfUpdate {
|
||||
UITableView *parentTable = (UITableView *)self.superview;
|
||||
if(parentTable) {
|
||||
|
||||
while( parentTable != nil && ![parentTable isKindOfClass:[UITableView class]] ) parentTable = (UITableView *)[parentTable superview];
|
||||
|
||||
if(parentTable != nil) {
|
||||
NSIndexPath *index= [parentTable indexPathForCell:self];
|
||||
if(index != nil) {
|
||||
[parentTable reloadRowsAtIndexPaths:[[NSArray alloc] initWithObjects:index, nil] withRowAnimation:false];
|
||||
|
|
|
|||
|
|
@ -19,9 +19,11 @@
|
|||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#import "UITransparentTVCell.h"
|
||||
#import "ChatModel.h"
|
||||
|
||||
@interface UIChatCell : UITableViewCell {
|
||||
|
||||
@interface UIChatCell : UITransparentTVCell {
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) ChatModel *chat;
|
||||
|
|
|
|||
|
|
@ -116,7 +116,12 @@
|
|||
if([chat isExternalImage] || [chat isInternalImage]) {
|
||||
[chatContentLabel setText:@""];
|
||||
} else {
|
||||
[chatContentLabel setText:[chat message]];
|
||||
NSString *message = [chat message];
|
||||
// shorten long messages
|
||||
if([message length] > 50)
|
||||
message = [[message substringToIndex:50] stringByAppendingString:@"[...]"];
|
||||
|
||||
[chatContentLabel setText:message];
|
||||
}
|
||||
|
||||
int count = [ChatModel unreadMessages:[chat remoteContact]];
|
||||
|
|
@ -156,7 +161,7 @@
|
|||
if(chat != NULL) {
|
||||
UIView *view = [self superview];
|
||||
// Find TableViewCell
|
||||
if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
while( view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
if(view != nil) {
|
||||
UITableView *tableView = (UITableView*) view;
|
||||
NSIndexPath *indexPath = [tableView indexPathForCell:self];
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@
|
|||
<object class="IBUILabel" id="394118737">
|
||||
<reference key="NSNextResponder" ref="316763236"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrame">{{62, 2}, {218, 25}}</string>
|
||||
<string key="NSFrame">{{62, 2}, {218, 38}}</string>
|
||||
<reference key="NSSuperview" ref="316763236"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="641729677"/>
|
||||
|
|
@ -92,7 +92,7 @@
|
|||
<object class="IBUILabel" id="641729677">
|
||||
<reference key="NSNextResponder" ref="316763236"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrame">{{62, 27}, {218, 33}}</string>
|
||||
<string key="NSFrame">{{62, 39}, {218, 21}}</string>
|
||||
<reference key="NSSuperview" ref="316763236"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="186935856"/>
|
||||
|
|
|
|||
|
|
@ -22,9 +22,10 @@
|
|||
#import "ChatModel.h"
|
||||
#import "ChatRoomTableViewController.h"
|
||||
#import "UILoadingImageView.h"
|
||||
#import "UITransparentTVCell.h"
|
||||
|
||||
|
||||
@interface UIChatRoomCell : UITableViewCell {
|
||||
@interface UIChatRoomCell : UITransparentTVCell {
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) ChatModel *chat;
|
||||
|
|
|
|||
|
|
@ -64,6 +64,13 @@ static UIFont *CELL_FONT = nil;
|
|||
[messageImageView addGestureRecognizer:imageTapGestureRecognizer];
|
||||
[self addSubview:innerView];
|
||||
[deleteButton setAlpha:0.0f];
|
||||
|
||||
// shift message box, otherwise it will collide with the bubble
|
||||
CGRect messageCoords = [messageText frame];
|
||||
messageCoords.origin.x += 5;
|
||||
messageCoords.origin.y += 2;
|
||||
messageCoords.size.width -= 5;
|
||||
[messageText setFrame:messageCoords];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
|
@ -93,19 +100,18 @@ static UIFont *CELL_FONT = nil;
|
|||
#pragma mark -
|
||||
|
||||
- (void)setChat:(ChatModel *)achat {
|
||||
if(chat == achat) {
|
||||
return;
|
||||
}
|
||||
|
||||
if(chat != nil) {
|
||||
[chat release];
|
||||
chat = nil;
|
||||
}
|
||||
|
||||
if(achat != nil) {
|
||||
chat = [achat retain];
|
||||
[self update];
|
||||
}
|
||||
if(chat != achat) {
|
||||
if(chat != nil) {
|
||||
[chat release];
|
||||
chat = nil;
|
||||
}
|
||||
|
||||
if(achat != nil) {
|
||||
chat = [achat retain];
|
||||
}
|
||||
}
|
||||
[self update];
|
||||
|
||||
}
|
||||
|
||||
- (void)update {
|
||||
|
|
@ -205,7 +211,7 @@ static UIFont *CELL_FONT = nil;
|
|||
}
|
||||
messageSize = [[chat message] sizeWithFont: CELL_FONT
|
||||
constrainedToSize: CGSizeMake(width - CELL_MESSAGE_X_MARGIN, 10000.0f)
|
||||
lineBreakMode: UILineBreakModeTailTruncation];
|
||||
lineBreakMode: NSLineBreakByTruncatingTail];
|
||||
} else {
|
||||
messageSize = CGSizeMake(CELL_IMAGE_WIDTH, CELL_IMAGE_HEIGHT);
|
||||
}
|
||||
|
|
@ -262,7 +268,7 @@ static UIFont *CELL_FONT = nil;
|
|||
if(chat != NULL) {
|
||||
UIView *view = [self superview];
|
||||
// Find TableViewCell
|
||||
if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
while(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
if(view != nil) {
|
||||
UITableView *tableView = (UITableView*) view;
|
||||
NSIndexPath *indexPath = [tableView indexPathForCell:self];
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@
|
|||
|
||||
- (void)initUICompositeViewController {
|
||||
viewControllerCache = [[NSMutableDictionary alloc] init];
|
||||
currentOrientation = UIDeviceOrientationUnknown;
|
||||
currentOrientation = (UIInterfaceOrientation)UIDeviceOrientationUnknown;
|
||||
}
|
||||
|
||||
- (id)init{
|
||||
|
|
@ -416,18 +416,18 @@
|
|||
if(currentOrientation == UIDeviceOrientationUnknown) {
|
||||
return [UIApplication sharedApplication].statusBarOrientation;
|
||||
}
|
||||
deviceOrientation = currentOrientation;
|
||||
deviceOrientation = (UIDeviceOrientation)currentOrientation;
|
||||
}
|
||||
if (UIDeviceOrientationIsPortrait(deviceOrientation)) {
|
||||
if ([currentViewDescription portraitMode]) {
|
||||
return deviceOrientation;
|
||||
return (UIInterfaceOrientation)deviceOrientation;
|
||||
} else {
|
||||
return UIInterfaceOrientationLandscapeLeft;
|
||||
}
|
||||
}
|
||||
if (UIDeviceOrientationIsLandscape(deviceOrientation)) {
|
||||
if ([currentViewDescription landscapeMode]) {
|
||||
return deviceOrientation;
|
||||
return (UIInterfaceOrientation)deviceOrientation;
|
||||
} else {
|
||||
return UIInterfaceOrientationPortrait;
|
||||
}
|
||||
|
|
@ -435,7 +435,7 @@
|
|||
} else if([rotationPreference isEqualToString:@"portrait"]) {
|
||||
if ([currentViewDescription portraitMode]) {
|
||||
if (UIDeviceOrientationIsPortrait(deviceOrientation)) {
|
||||
return deviceOrientation;
|
||||
return (UIInterfaceOrientation)deviceOrientation;
|
||||
} else {
|
||||
if(UIInterfaceOrientationIsPortrait([UIApplication sharedApplication].statusBarOrientation)) {
|
||||
return [UIApplication sharedApplication].statusBarOrientation;
|
||||
|
|
@ -449,7 +449,7 @@
|
|||
} else if([rotationPreference isEqualToString:@"landscape"]) {
|
||||
if ([currentViewDescription landscapeMode]) {
|
||||
if (UIDeviceOrientationIsLandscape(deviceOrientation)) {
|
||||
return deviceOrientation;
|
||||
return (UIInterfaceOrientation)deviceOrientation;
|
||||
} else {
|
||||
if(UIInterfaceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation)) {
|
||||
return [UIApplication sharedApplication].statusBarOrientation;
|
||||
|
|
|
|||
|
|
@ -19,8 +19,9 @@
|
|||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import <AddressBook/AddressBook.h>
|
||||
#import "UITransparentTVCell.h"
|
||||
|
||||
@interface UIContactCell : UITableViewCell {
|
||||
@interface UIContactCell : UITransparentTVCell {
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) IBOutlet UILabel* firstNameLabel;
|
||||
|
|
|
|||
|
|
@ -140,7 +140,7 @@
|
|||
|
||||
+ (CGFloat)height:(BOOL)editing {
|
||||
if(editing) {
|
||||
return 160.0f;
|
||||
return 170.0f;
|
||||
} else {
|
||||
return 80.0f;
|
||||
}
|
||||
|
|
@ -206,15 +206,22 @@
|
|||
[cell.detailTextField setAutocapitalizationType:UITextAutocapitalizationTypeWords];
|
||||
[cell.detailTextField setAutocorrectionType:UITextAutocorrectionTypeNo];
|
||||
[cell.detailTextField setKeyboardType:UIKeyboardTypeDefault];
|
||||
[cell setBackgroundColor:[UIColor whiteColor]];
|
||||
}
|
||||
|
||||
|
||||
// setup placeholder
|
||||
ABPropertyID property = [[propertyList objectAtIndex:[indexPath row]] intValue];
|
||||
if(property == kABPersonFirstNameProperty) {
|
||||
[cell.detailTextField setPlaceholder:NSLocalizedString(@"First name", nil)];
|
||||
} else if (property == kABPersonLastNameProperty) {
|
||||
[cell.detailTextField setPlaceholder:NSLocalizedString(@"Last name", nil)];
|
||||
} else if (property == kABPersonOrganizationProperty) {
|
||||
[cell.detailTextField setPlaceholder:NSLocalizedString(@"Company name", nil)];
|
||||
}
|
||||
|
||||
[cell.detailTextField setKeyboardType:UIKeyboardTypeDefault];
|
||||
|
||||
// setup values, if they exist
|
||||
if(contact) {
|
||||
CFStringRef lValue = ABRecordCopyValue(contact, property);
|
||||
if(lValue != NULL) {
|
||||
|
|
@ -340,7 +347,8 @@
|
|||
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
|
||||
UIView *view = [textField superview];
|
||||
// Find TableViewCell
|
||||
if(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview];
|
||||
while(view != nil && ![view isKindOfClass:[UIEditableTableViewCell class]]) view = [view superview];
|
||||
|
||||
if(view != nil) {
|
||||
UIEditableTableViewCell *cell = (UIEditableTableViewCell*)view;
|
||||
NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];
|
||||
|
|
|
|||
|
|
@ -18,10 +18,12 @@
|
|||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "UITransparentTVCell.h"
|
||||
|
||||
@interface UIEditableTableViewCell : UITableViewCell {
|
||||
@interface UIEditableTableViewCell : UITransparentTVCell {
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) IBOutlet UIView *verticalSep;
|
||||
@property (nonatomic, retain) IBOutlet UITextField *detailTextField;
|
||||
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
@implementation UIEditableTableViewCell
|
||||
|
||||
@synthesize detailTextField;
|
||||
@synthesize verticalSep;
|
||||
|
||||
|
||||
#pragma mark - Lifecycle Functions
|
||||
|
|
@ -30,7 +31,6 @@
|
|||
{
|
||||
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
|
||||
if (self) {
|
||||
UIView *parent = [self.detailTextLabel superview];
|
||||
self.detailTextField = [[UITextField alloc] init];
|
||||
[self.detailTextField setHidden:TRUE];
|
||||
[self.detailTextField setClearButtonMode: UITextFieldViewModeWhileEditing];
|
||||
|
|
@ -39,7 +39,13 @@
|
|||
UIFont *font = [UIFont fontWithName:@"Helvetica-Bold" size:[UIFont systemFontSize]];
|
||||
[self.detailTextLabel setFont:font];
|
||||
[self.detailTextField setFont:font];
|
||||
[parent addSubview:detailTextField];
|
||||
[self.contentView addSubview:detailTextField];
|
||||
|
||||
// a vertical separator that will come between the text and detailed text
|
||||
self.verticalSep = [[UIView alloc] initWithFrame:CGRectMake(80, 5, 1, 34)];
|
||||
verticalSep.backgroundColor = [UIColor lightGrayColor];
|
||||
[self.verticalSep setHidden:TRUE];
|
||||
[self.contentView addSubview:verticalSep];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
|
@ -53,21 +59,32 @@
|
|||
#pragma mark - View Functions
|
||||
|
||||
- (void)layoutSubviews {
|
||||
[super layoutSubviews];
|
||||
|
||||
CGRect fieldframe;
|
||||
fieldframe.origin.x = 15;
|
||||
fieldframe.origin.y = 0;
|
||||
fieldframe.size.height = 44;
|
||||
if([[self.textLabel text] length] != 0)
|
||||
fieldframe.origin.x += [self.textLabel frame].size.width;
|
||||
CGRect superframe = [[self.detailTextField superview]frame];
|
||||
fieldframe.size.width = superframe.size.width - fieldframe.origin.x;
|
||||
[self.detailTextField setFrame:fieldframe];
|
||||
|
||||
CGRect labelFrame = [self.detailTextLabel frame];
|
||||
labelFrame.origin.x = fieldframe.origin.x;
|
||||
[self.detailTextLabel setFrame:labelFrame];
|
||||
[super layoutSubviews];
|
||||
|
||||
CGRect detailEditFrame;
|
||||
detailEditFrame.origin.x = 15;
|
||||
detailEditFrame.origin.y = 0;
|
||||
detailEditFrame.size.height = 44;
|
||||
|
||||
if([[self.textLabel text] length] != 0) {
|
||||
detailEditFrame.origin.x += [self.textLabel frame].size.width + 8;
|
||||
|
||||
// shrink left text width by 10px
|
||||
CGRect leftLabelFrame = [self.textLabel frame];
|
||||
leftLabelFrame.size.width -= 10;
|
||||
[self.textLabel setFrame:leftLabelFrame];
|
||||
|
||||
// place separator between left text and detailed text
|
||||
CGRect separatorFrame = [self.verticalSep frame];
|
||||
separatorFrame.origin.x = leftLabelFrame.size.width + leftLabelFrame.origin.x + 5;
|
||||
[self.verticalSep setFrame:separatorFrame];
|
||||
[self.verticalSep setHidden:FALSE];
|
||||
}
|
||||
|
||||
// put the detailed text edit view at the correct position
|
||||
CGRect superframe = [[self.detailTextField superview] frame];
|
||||
detailEditFrame.size.width = superframe.size.width - detailEditFrame.origin.x;
|
||||
[self.detailTextField setFrame:detailEditFrame];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -19,9 +19,10 @@
|
|||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#import "UITransparentTVCell.h"
|
||||
#include "linphonecore.h"
|
||||
|
||||
@interface UIHistoryCell : UITableViewCell {
|
||||
@interface UIHistoryCell : UITransparentTVCell {
|
||||
}
|
||||
|
||||
@property (nonatomic, assign) LinphoneCallLog *callLog;
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@
|
|||
if(callLog != NULL) {
|
||||
UIView *view = [self superview];
|
||||
// Find TableViewCell
|
||||
if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
while(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
if(view != nil) {
|
||||
UITableView *tableView = (UITableView*) view;
|
||||
NSIndexPath *indexPath = [tableView indexPathForCell:self];
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@
|
|||
|
||||
#import <UIKit/UIColor.h>
|
||||
|
||||
#define LINPHONE_MAIN_COLOR [UIColor colorWithRed:207.0f/255.0f green:76.0f/255.0f blue:41.0f/255.0f alpha:1.0f]
|
||||
#define LINPHONE_MAIN_COLOR [UIColor colorWithRed:207.0f/255.0f green:76.0f/255.0f blue:41.0f/255.0f alpha:1.0f]
|
||||
#define LINPHONE_SETTINGS_BG_IOS7 [UIColor colorWithRed:164/255. green:175/255. blue:183/255. alpha:1.0]//[UIColor colorWithWhite:0.88 alpha:1.0]
|
||||
#define LINPHONE_TABLE_CELL_BACKGROUND_COLOR [UIColor colorWithRed:207.0f/255.0f green:76.0f/255.0f blue:41.0f/255.0f alpha:1.0f]
|
||||
|
||||
@interface UIColor (LightAndDark)
|
||||
|
|
|
|||
|
|
@ -400,7 +400,7 @@ static NSString * const kDisappearAnimation = @"disappear";
|
|||
- (IBAction)onContactsClick:(id)event {
|
||||
[ContactSelection setSelectionMode:ContactSelectionModeNone];
|
||||
[ContactSelection setAddAddress:nil];
|
||||
[ContactSelection setSipFilter:FALSE];
|
||||
[ContactSelection setSipFilter:nil];
|
||||
[ContactSelection setEmailFilter:FALSE];
|
||||
[[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription]];
|
||||
}
|
||||
|
|
|
|||
24
Classes/LinphoneUI/UITransparentTVCell.h
Normal file
24
Classes/LinphoneUI/UITransparentTVCell.h
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
/* UITransparentTVCell.h
|
||||
*
|
||||
* Copyright (C) 2012 Belledonne Comunications, Grenoble, France
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@interface UITransparentTVCell : UITableViewCell
|
||||
|
||||
@end
|
||||
39
Classes/LinphoneUI/UITransparentTVCell.m
Normal file
39
Classes/LinphoneUI/UITransparentTVCell.m
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
/* UITransparentTVCell.m
|
||||
*
|
||||
* Copyright (C) 2012 Belledonne Comunications, Grenoble, France
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
#import "UITransparentTVCell.h"
|
||||
|
||||
@implementation UITransparentTVCell
|
||||
|
||||
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
|
||||
{
|
||||
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
|
||||
if (self) {
|
||||
// Set transparent background
|
||||
[self setBackgroundColor:[UIColor clearColor]];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
|
||||
{
|
||||
[super setSelected:selected animated:animated];
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
@ -194,7 +194,7 @@
|
|||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{320, 160}</string>
|
||||
<string key="NSFrameSize">{320, 170}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="452773126"/>
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@
|
|||
- (void)showStateBar:(BOOL)show;
|
||||
- (void)showTabBar:(BOOL)show;
|
||||
- (void)fullScreen:(BOOL)enabled;
|
||||
- (void)updateStatusBar:(UICompositeViewDescription*)to_view;
|
||||
- (void)startUp;
|
||||
|
||||
- (void)addInhibitedEvent:(id)event;
|
||||
|
|
|
|||
|
|
@ -211,42 +211,24 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
[self updateApplicationBadgeNumber];
|
||||
}
|
||||
|
||||
- (void)registrationUpdate:(NSNotification*)notif {
|
||||
- (void)registrationUpdate:(NSNotification*)notif {
|
||||
LinphoneRegistrationState state = [[notif.userInfo objectForKey: @"state"] intValue];
|
||||
LinphoneProxyConfig *cfg = [[notif.userInfo objectForKey: @"cfg"] pointerValue];
|
||||
// Show error
|
||||
if (state == LinphoneRegistrationFailed) {
|
||||
NSString* lErrorMessage = nil;
|
||||
LinphoneReason reason = linphone_proxy_config_get_error(cfg);
|
||||
if (reason == LinphoneReasonBadCredentials) {
|
||||
lErrorMessage = NSLocalizedString(@"Bad credentials, check your account settings", nil);
|
||||
} else if (reason == LinphoneReasonNoResponse) {
|
||||
lErrorMessage = NSLocalizedString(@"SIP server unreachable", nil);
|
||||
} else {
|
||||
lErrorMessage = NSLocalizedString(@"Unknown error", nil);
|
||||
}
|
||||
|
||||
if (lErrorMessage != nil && linphone_proxy_config_get_error(cfg) != LinphoneReasonNoResponse) {
|
||||
//do not report network connection issue on registration
|
||||
//default behavior if no registration delegates
|
||||
UIApplicationState s = [UIApplication sharedApplication].applicationState;
|
||||
|
||||
// do not stack error message when going to backgroud
|
||||
if (s != UIApplicationStateBackground) {
|
||||
UIAlertView* error = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Registration failure",nil)
|
||||
message:lErrorMessage
|
||||
delegate:nil
|
||||
cancelButtonTitle:NSLocalizedString(@"Continue",nil)
|
||||
otherButtonTitles:nil,nil];
|
||||
[error show];
|
||||
[error release];
|
||||
}
|
||||
}
|
||||
|
||||
//Only report bad credential issue
|
||||
if (state == LinphoneRegistrationFailed
|
||||
&&[UIApplication sharedApplication].applicationState != UIApplicationStateBackground
|
||||
&& linphone_proxy_config_get_error(cfg) == LinphoneReasonBadCredentials ) {
|
||||
UIAlertView* error = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"Registration failure",nil)
|
||||
message:NSLocalizedString(@"Bad credentials, check your account settings", nil)
|
||||
delegate:nil
|
||||
cancelButtonTitle:NSLocalizedString(@"Continue",nil)
|
||||
otherButtonTitles:nil,nil];
|
||||
[error show];
|
||||
[error release];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)callUpdate:(NSNotification*)notif {
|
||||
- (void)callUpdate:(NSNotification*)notif {
|
||||
LinphoneCall *call = [[notif.userInfo objectForKey: @"call"] pointerValue];
|
||||
LinphoneCallState state = [[notif.userInfo objectForKey: @"state"] intValue];
|
||||
NSString *message = [notif.userInfo objectForKey: @"message"];
|
||||
|
|
@ -390,20 +372,20 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
|
||||
if([old equal:[ChatViewController compositeViewDescription]]) {
|
||||
if([new equal:[ContactsViewController compositeViewDescription]] ||
|
||||
[new equal:[DialerViewController compositeViewDescription]] ||
|
||||
[new equal:[SettingsViewController compositeViewDescription]] ||
|
||||
[new equal:[HistoryViewController compositeViewDescription]]) {
|
||||
[new equal:[DialerViewController compositeViewDescription]] ||
|
||||
[new equal:[HistoryViewController compositeViewDescription]]) {
|
||||
left = true;
|
||||
}
|
||||
} else if([old equal:[SettingsViewController compositeViewDescription]]) {
|
||||
if([new equal:[DialerViewController compositeViewDescription]] ||
|
||||
if([new equal:[DialerViewController compositeViewDescription]] ||
|
||||
[new equal:[ContactsViewController compositeViewDescription]] ||
|
||||
[new equal:[HistoryViewController compositeViewDescription]]) {
|
||||
[new equal:[HistoryViewController compositeViewDescription]] ||
|
||||
[new equal:[ChatViewController compositeViewDescription]]) {
|
||||
left = true;
|
||||
}
|
||||
} else if([old equal:[DialerViewController compositeViewDescription]]) {
|
||||
if([new equal:[ContactsViewController compositeViewDescription]] ||
|
||||
[new equal:[HistoryViewController compositeViewDescription]]) {
|
||||
if([new equal:[ContactsViewController compositeViewDescription]] ||
|
||||
[new equal:[HistoryViewController compositeViewDescription]]) {
|
||||
left = true;
|
||||
}
|
||||
} else if([old equal:[ContactsViewController compositeViewDescription]]) {
|
||||
|
|
@ -431,6 +413,23 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
[mainViewController setStateBarHidden:!show];
|
||||
}
|
||||
|
||||
- (void)updateStatusBar:(UICompositeViewDescription*)to_view {
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
|
||||
if ([LinphoneManager runningOnIpad]) {
|
||||
// In iOS7, the ipad has a black background on dialer, so we have to adjust the
|
||||
// status bar style for each transition to/from this view
|
||||
BOOL toLightStatus = [to_view equal:[DialerViewController compositeViewDescription]];
|
||||
BOOL fromLightStatus = [currentView equal:[DialerViewController compositeViewDescription]];
|
||||
if( (!to_view && fromLightStatus) || // this case happens at app launch
|
||||
toLightStatus )
|
||||
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
|
||||
else if(fromLightStatus)
|
||||
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
- (void)fullScreen:(BOOL)enabled {
|
||||
[mainViewController setFullScreen:enabled];
|
||||
}
|
||||
|
|
@ -460,9 +459,10 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
} else {
|
||||
[mainViewController setViewTransition:nil];
|
||||
}
|
||||
[self updateStatusBar:view];
|
||||
[mainViewController changeView:view];
|
||||
currentView = view;
|
||||
}
|
||||
}
|
||||
|
||||
NSDictionary* mdict = [NSMutableDictionary dictionaryWithObject:currentView forKey:@"view"];
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMainViewChange object:self userInfo:mdict];
|
||||
|
|
|
|||
|
|
@ -340,7 +340,12 @@
|
|||
}
|
||||
|
||||
+ (void)removeBackground:(UIView*)view {
|
||||
[view setBackgroundColor:[UIColor clearColor]];
|
||||
// iOS7 transparent background is *really* transparent: with an alpha != 0
|
||||
// it messes up the transitions. Use non-transparent BG for iOS7
|
||||
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7)
|
||||
[view setBackgroundColor:LINPHONE_SETTINGS_BG_IOS7];
|
||||
else
|
||||
[view setBackgroundColor:[UIColor clearColor]];
|
||||
}
|
||||
|
||||
- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated {
|
||||
|
|
@ -614,7 +619,6 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
[hiddenKeys addObject:@"battery_alert_button"];
|
||||
#endif
|
||||
|
||||
[hiddenKeys addObject:@"audio_advanced_group"];
|
||||
[hiddenKeys addObject:@"playback_gain_preference"];
|
||||
[hiddenKeys addObject:@"microphone_gain_preference"];
|
||||
|
||||
|
|
|
|||
|
|
@ -62,6 +62,10 @@
|
|||
<bool key="IBUIHorizontal">NO</bool>
|
||||
</object>
|
||||
<object class="IBUINavigationController" id="983459891">
|
||||
<object class="IBUISimulatedNavigationBarMetrics" key="IBUISimulatedTopBarMetrics">
|
||||
<bool key="IBUITranslucent">NO</bool>
|
||||
<bool key="IBUIPrompted">NO</bool>
|
||||
</object>
|
||||
<object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics"/>
|
||||
<object class="IBUISimulatedOrientationMetrics" key="IBUISimulatedOrientationMetrics">
|
||||
<int key="IBUIInterfaceOrientation">1</int>
|
||||
|
|
@ -79,6 +83,7 @@
|
|||
<bool key="IBUIClipsSubviews">YES</bool>
|
||||
<bool key="IBUIMultipleTouchEnabled">YES</bool>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
<bool key="IBUITranslucent">NO</bool>
|
||||
</object>
|
||||
<array class="NSMutableArray" key="IBUIViewControllers"/>
|
||||
</object>
|
||||
|
|
|
|||
|
|
@ -179,7 +179,7 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
CFDictionaryRef lDict = ABMultiValueCopyValueAtIndex(lMap, i);
|
||||
BOOL add = false;
|
||||
if(CFDictionaryContainsKey(lDict, kABPersonInstantMessageServiceKey)) {
|
||||
if(CFStringCompare((CFStringRef)kContactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) {
|
||||
if(CFStringCompare((CFStringRef)[LinphoneManager instance].contactSipField, CFDictionaryGetValue(lDict, kABPersonInstantMessageServiceKey), kCFCompareCaseInsensitive) == 0) {
|
||||
add = true;
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -27,6 +27,12 @@
|
|||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED < 60000
|
||||
// UITextAlignment is deprecated in iOS 6.0+, use NSTextAlignment instead.
|
||||
// Reference: https://developer.apple.com/library/ios/documentation/uikit/reference/NSString_UIKit_Additions/Reference/Reference.html
|
||||
#define NSTextAlignment UITextAlignment
|
||||
#endif
|
||||
|
||||
@class HPGrowingTextView;
|
||||
@class HPTextViewInternal;
|
||||
|
||||
|
|
@ -60,10 +66,11 @@
|
|||
int minNumberOfLines;
|
||||
|
||||
BOOL animateHeightChange;
|
||||
NSTimeInterval animationDuration;
|
||||
|
||||
//uitextview properties
|
||||
NSObject <HPGrowingTextViewDelegate> *__unsafe_unretained delegate;
|
||||
UITextAlignment textAlignment;
|
||||
NSTextAlignment textAlignment;
|
||||
NSRange selectedRange;
|
||||
BOOL editable;
|
||||
UIDataDetectorTypes dataDetectorTypes;
|
||||
|
|
@ -75,7 +82,12 @@
|
|||
//real class properties
|
||||
@property int maxNumberOfLines;
|
||||
@property int minNumberOfLines;
|
||||
@property (nonatomic) int maxHeight;
|
||||
@property (nonatomic) int minHeight;
|
||||
@property BOOL animateHeightChange;
|
||||
@property NSTimeInterval animationDuration;
|
||||
@property (nonatomic, strong) NSString *placeholder;
|
||||
@property (nonatomic, strong) UIColor *placeholderColor;
|
||||
@property (nonatomic, strong) UITextView *internalTextView;
|
||||
|
||||
|
||||
|
|
@ -84,12 +96,13 @@
|
|||
@property(nonatomic,strong) NSString *text;
|
||||
@property(nonatomic,strong) UIFont *font;
|
||||
@property(nonatomic,strong) UIColor *textColor;
|
||||
@property(nonatomic) UITextAlignment textAlignment; // default is UITextAlignmentLeft
|
||||
@property(nonatomic) NSTextAlignment textAlignment; // default is NSTextAlignmentLeft
|
||||
@property(nonatomic) NSRange selectedRange; // only ranges of length 0 are supported
|
||||
@property(nonatomic,getter=isEditable) BOOL editable;
|
||||
@property(nonatomic) UIDataDetectorTypes dataDetectorTypes __OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_3_0);
|
||||
@property (nonatomic) UIReturnKeyType returnKeyType;
|
||||
@property (assign) UIEdgeInsets contentInset;
|
||||
@property (nonatomic) BOOL isScrollable;
|
||||
@property(nonatomic) BOOL enablesReturnKeyAutomatically;
|
||||
|
||||
//uitextview methods
|
||||
|
|
@ -101,4 +114,7 @@
|
|||
- (BOOL)hasText;
|
||||
- (void)scrollRangeToVisible:(NSRange)range;
|
||||
|
||||
// call to force a height change (e.g. after you change max/min lines)
|
||||
- (void)refreshHeight;
|
||||
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -37,15 +37,19 @@
|
|||
@implementation HPGrowingTextView
|
||||
@synthesize internalTextView;
|
||||
@synthesize delegate;
|
||||
|
||||
@synthesize maxHeight;
|
||||
@synthesize minHeight;
|
||||
@synthesize font;
|
||||
@synthesize textColor;
|
||||
@synthesize textAlignment;
|
||||
@synthesize selectedRange;
|
||||
@synthesize editable;
|
||||
@synthesize dataDetectorTypes;
|
||||
@synthesize dataDetectorTypes;
|
||||
@synthesize animateHeightChange;
|
||||
@synthesize animationDuration;
|
||||
@synthesize returnKeyType;
|
||||
@dynamic placeholder;
|
||||
@dynamic placeholderColor;
|
||||
|
||||
// having initwithcoder allows us to use HPGrowingTextView in a Nib. -- aob, 9/2011
|
||||
- (id)initWithCoder:(NSCoder *)aDecoder
|
||||
|
|
@ -82,10 +86,14 @@
|
|||
minNumberOfLines = 1;
|
||||
|
||||
animateHeightChange = YES;
|
||||
animationDuration = 0.1f;
|
||||
|
||||
internalTextView.text = @"";
|
||||
|
||||
[self setMaxNumberOfLines:3];
|
||||
|
||||
[self setPlaceholderColor:[UIColor lightGrayColor]];
|
||||
internalTextView.displayPlaceHolder = YES;
|
||||
}
|
||||
|
||||
-(CGSize)sizeThatFits:(CGSize)size
|
||||
|
|
@ -101,10 +109,9 @@
|
|||
[super layoutSubviews];
|
||||
|
||||
CGRect r = self.bounds;
|
||||
r.origin.y = contentInset.top;
|
||||
r.origin.x = contentInset.left;
|
||||
r.origin.y = 0;
|
||||
r.origin.x = contentInset.left;
|
||||
r.size.width -= contentInset.left + contentInset.right;
|
||||
r.size.height -= contentInset.top + contentInset.bottom;
|
||||
|
||||
internalTextView.frame = r;
|
||||
}
|
||||
|
|
@ -114,10 +121,9 @@
|
|||
contentInset = inset;
|
||||
|
||||
CGRect r = self.frame;
|
||||
r.origin.y = contentInset.top;
|
||||
r.origin.x = contentInset.left;
|
||||
r.size.width -= contentInset.left + contentInset.right;
|
||||
r.size.height -= contentInset.top + contentInset.bottom;
|
||||
r.origin.y = inset.top - inset.bottom;
|
||||
r.origin.x = inset.left;
|
||||
r.size.width -= inset.left + inset.right;
|
||||
|
||||
internalTextView.frame = r;
|
||||
|
||||
|
|
@ -132,6 +138,8 @@
|
|||
|
||||
-(void)setMaxNumberOfLines:(int)n
|
||||
{
|
||||
if(n == 0 && maxHeight > 0) return; // the user specified a maxHeight themselves.
|
||||
|
||||
// Use internalTextView for height calculations, thanks to Gwynne <http://blog.darkrainfall.org/>
|
||||
NSString *saveText = internalTextView.text, *newText = @"-";
|
||||
|
||||
|
|
@ -143,13 +151,13 @@
|
|||
|
||||
internalTextView.text = newText;
|
||||
|
||||
maxHeight = internalTextView.contentSize.height;
|
||||
maxHeight = [self measureHeight];
|
||||
|
||||
internalTextView.text = saveText;
|
||||
internalTextView.hidden = NO;
|
||||
internalTextView.delegate = self;
|
||||
|
||||
//[self sizeToFit];
|
||||
[self sizeToFit];
|
||||
|
||||
maxNumberOfLines = n;
|
||||
}
|
||||
|
|
@ -159,8 +167,16 @@
|
|||
return maxNumberOfLines;
|
||||
}
|
||||
|
||||
- (void)setMaxHeight:(int)height
|
||||
{
|
||||
maxHeight = height;
|
||||
maxNumberOfLines = 0;
|
||||
}
|
||||
|
||||
-(void)setMinNumberOfLines:(int)m
|
||||
{
|
||||
if(m == 0 && minHeight > 0) return; // the user specified a minHeight themselves.
|
||||
|
||||
// Use internalTextView for height calculations, thanks to Gwynne <http://blog.darkrainfall.org/>
|
||||
NSString *saveText = internalTextView.text, *newText = @"-";
|
||||
|
||||
|
|
@ -172,13 +188,13 @@
|
|||
|
||||
internalTextView.text = newText;
|
||||
|
||||
minHeight = internalTextView.contentSize.height;
|
||||
minHeight = [self measureHeight];
|
||||
|
||||
internalTextView.text = saveText;
|
||||
internalTextView.hidden = NO;
|
||||
internalTextView.delegate = self;
|
||||
|
||||
//[self sizeToFit];
|
||||
[self sizeToFit];
|
||||
|
||||
minNumberOfLines = m;
|
||||
}
|
||||
|
|
@ -188,13 +204,43 @@
|
|||
return minNumberOfLines;
|
||||
}
|
||||
|
||||
- (void)setMinHeight:(int)height
|
||||
{
|
||||
minHeight = height;
|
||||
minNumberOfLines = 0;
|
||||
}
|
||||
|
||||
- (NSString *)placeholder
|
||||
{
|
||||
return internalTextView.placeholder;
|
||||
}
|
||||
|
||||
- (void)setPlaceholder:(NSString *)placeholder
|
||||
{
|
||||
[internalTextView setPlaceholder:placeholder];
|
||||
}
|
||||
|
||||
- (UIColor *)placeholderColor
|
||||
{
|
||||
return internalTextView.placeholderColor;
|
||||
}
|
||||
|
||||
- (void)setPlaceholderColor:(UIColor *)placeholderColor
|
||||
{
|
||||
[internalTextView setPlaceholderColor:placeholderColor];
|
||||
}
|
||||
|
||||
- (void)textViewDidChange:(UITextView *)textView
|
||||
{
|
||||
{
|
||||
[self refreshHeight];
|
||||
}
|
||||
|
||||
- (void)refreshHeight
|
||||
{
|
||||
//size of content, so we can set the frame of self
|
||||
NSInteger newSizeH = internalTextView.contentSize.height;
|
||||
NSInteger newSizeH = [self measureHeight];
|
||||
if(newSizeH < minHeight || !internalTextView.hasText) newSizeH = minHeight; //not smalles than minHeight
|
||||
if(newSizeH > maxHeight) newSizeH = maxHeight; // not taller than maxHeight
|
||||
if (internalTextView.frame.size.height > maxHeight) newSizeH = maxHeight; // not taller than maxHeight
|
||||
|
||||
if (internalTextView.frame.size.height != newSizeH)
|
||||
{
|
||||
|
|
@ -212,7 +258,7 @@
|
|||
|
||||
if ([UIView resolveClassMethod:@selector(animateWithDuration:animations:)]) {
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 40000
|
||||
[UIView animateWithDuration:0.1f
|
||||
[UIView animateWithDuration:animationDuration
|
||||
delay:0
|
||||
options:(UIViewAnimationOptionAllowUserInteraction|
|
||||
UIViewAnimationOptionBeginFromCurrentState)
|
||||
|
|
@ -227,7 +273,7 @@
|
|||
#endif
|
||||
} else {
|
||||
[UIView beginAnimations:@"" context:nil];
|
||||
[UIView setAnimationDuration:0.1f];
|
||||
[UIView setAnimationDuration:animationDuration];
|
||||
[UIView setAnimationDelegate:self];
|
||||
[UIView setAnimationDidStopSelector:@selector(growDidStop)];
|
||||
[UIView setAnimationBeginsFromCurrentState:YES];
|
||||
|
|
@ -244,7 +290,6 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// if our new height is greater than the maxHeight
|
||||
// sets not set the height or move things
|
||||
|
|
@ -260,15 +305,77 @@
|
|||
internalTextView.scrollEnabled = NO;
|
||||
}
|
||||
|
||||
// scroll to caret (needed on iOS7)
|
||||
if ([self respondsToSelector:@selector(snapshotViewAfterScreenUpdates:)])
|
||||
{
|
||||
CGRect r = [internalTextView caretRectForPosition:internalTextView.selectedTextRange.end];
|
||||
CGFloat caretY = MAX(r.origin.y - internalTextView.frame.size.height + r.size.height + 8, 0);
|
||||
if(internalTextView.contentOffset.y < caretY && r.origin.y != INFINITY)
|
||||
internalTextView.contentOffset = CGPointMake(0, MIN(caretY, internalTextView.contentSize.height));
|
||||
}
|
||||
}
|
||||
// Display (or not) the placeholder string
|
||||
|
||||
BOOL wasDisplayingPlaceholder = internalTextView.displayPlaceHolder;
|
||||
internalTextView.displayPlaceHolder = self.internalTextView.text.length == 0;
|
||||
|
||||
if (wasDisplayingPlaceholder != internalTextView.displayPlaceHolder) {
|
||||
[internalTextView setNeedsDisplay];
|
||||
}
|
||||
|
||||
// Tell the delegate that the text view changed
|
||||
|
||||
if ([delegate respondsToSelector:@selector(growingTextViewDidChange:)]) {
|
||||
if ([delegate respondsToSelector:@selector(growingTextViewDidChange:)]) {
|
||||
[delegate growingTextViewDidChange:self];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Code from apple developer forum - @Steve Krulewitz, @Mark Marszal, @Eric Silverberg
|
||||
- (CGFloat)measureHeight
|
||||
{
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
|
||||
if ([self respondsToSelector:@selector(snapshotViewAfterScreenUpdates:)])
|
||||
{
|
||||
CGRect frame = internalTextView.bounds;
|
||||
CGSize fudgeFactor;
|
||||
// The padding added around the text on iOS6 and iOS7 is different.
|
||||
fudgeFactor = CGSizeMake(10.0, 16.0);
|
||||
|
||||
frame.size.height -= fudgeFactor.height;
|
||||
frame.size.width -= fudgeFactor.width;
|
||||
|
||||
NSMutableAttributedString* textToMeasure;
|
||||
if(internalTextView.attributedText && internalTextView.attributedText.length > 0){
|
||||
textToMeasure = [[NSMutableAttributedString alloc] initWithAttributedString:internalTextView.attributedText];
|
||||
}
|
||||
else{
|
||||
textToMeasure = [[NSMutableAttributedString alloc] initWithString:internalTextView.text];
|
||||
[textToMeasure addAttribute:NSFontAttributeName value:internalTextView.font range:NSMakeRange(0, textToMeasure.length)];
|
||||
}
|
||||
|
||||
if ([textToMeasure.string hasSuffix:@"\n"])
|
||||
{
|
||||
[textToMeasure appendAttributedString:[[NSAttributedString alloc] initWithString:@"-" attributes:@{NSFontAttributeName: internalTextView.font}]];
|
||||
}
|
||||
|
||||
// NSAttributedString class method: boundingRectWithSize:options:context is
|
||||
// available only on ios7.0 sdk.
|
||||
CGRect size = [textToMeasure boundingRectWithSize:CGSizeMake(CGRectGetWidth(frame), MAXFLOAT)
|
||||
options:NSStringDrawingUsesLineFragmentOrigin
|
||||
context:nil];
|
||||
|
||||
return CGRectGetHeight(size) + fudgeFactor.height;
|
||||
}
|
||||
else
|
||||
{
|
||||
return self.internalTextView.contentSize.height;
|
||||
}
|
||||
#else
|
||||
return self.internalTextView.contentSize.height;
|
||||
#endif
|
||||
}
|
||||
|
||||
-(void)resizeTextView:(NSInteger)newSizeH
|
||||
{
|
||||
if ([delegate respondsToSelector:@selector(growingTextView:willChangeHeight:)]) {
|
||||
|
|
@ -283,15 +390,14 @@
|
|||
internalTextViewFrame.origin.x = contentInset.left;
|
||||
internalTextViewFrame.size.width = internalTextView.contentSize.width;
|
||||
|
||||
internalTextView.frame = internalTextViewFrame;
|
||||
if(!CGRectEqualToRect(internalTextView.frame, internalTextViewFrame)) internalTextView.frame = internalTextViewFrame;
|
||||
}
|
||||
|
||||
-(void)growDidStop
|
||||
- (void)growDidStop
|
||||
{
|
||||
if ([delegate respondsToSelector:@selector(growingTextView:didChangeHeight:)]) {
|
||||
[delegate growingTextView:self didChangeHeight:self.frame.size.height];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
|
||||
|
|
@ -377,12 +483,12 @@
|
|||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
-(void)setTextAlignment:(UITextAlignment)aligment
|
||||
-(void)setTextAlignment:(NSTextAlignment)aligment
|
||||
{
|
||||
internalTextView.textAlignment = aligment;
|
||||
}
|
||||
|
||||
-(UITextAlignment)textAlignment
|
||||
-(NSTextAlignment)textAlignment
|
||||
{
|
||||
return internalTextView.textAlignment;
|
||||
}
|
||||
|
|
@ -401,6 +507,18 @@
|
|||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
- (void)setIsScrollable:(BOOL)isScrollable
|
||||
{
|
||||
internalTextView.scrollEnabled = isScrollable;
|
||||
}
|
||||
|
||||
- (BOOL)isScrollable
|
||||
{
|
||||
return internalTextView.scrollEnabled;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
-(void)setEditable:(BOOL)beditable
|
||||
{
|
||||
internalTextView.editable = beditable;
|
||||
|
|
|
|||
|
|
@ -28,7 +28,10 @@
|
|||
#import <UIKit/UIKit.h>
|
||||
|
||||
|
||||
@interface HPTextViewInternal : UITextView {
|
||||
}
|
||||
@interface HPTextViewInternal : UITextView
|
||||
|
||||
@property (nonatomic, strong) NSString *placeholder;
|
||||
@property (nonatomic, strong) UIColor *placeholderColor;
|
||||
@property (nonatomic) BOOL displayPlaceHolder;
|
||||
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -30,6 +30,10 @@
|
|||
|
||||
@implementation HPTextViewInternal
|
||||
|
||||
@synthesize placeholder;
|
||||
@synthesize placeholderColor;
|
||||
@synthesize displayPlaceHolder;
|
||||
|
||||
-(void)setText:(NSString *)text
|
||||
{
|
||||
BOOL originalValue = self.scrollEnabled;
|
||||
|
|
@ -41,6 +45,11 @@
|
|||
[self setScrollEnabled:originalValue];
|
||||
}
|
||||
|
||||
- (void)setScrollable:(BOOL)isScrollable
|
||||
{
|
||||
[super setScrollEnabled:isScrollable];
|
||||
}
|
||||
|
||||
-(void)setContentOffset:(CGPoint)s
|
||||
{
|
||||
if(self.tracking || self.decelerating){
|
||||
|
|
@ -89,7 +98,13 @@
|
|||
[super setContentSize:contentSize];
|
||||
}
|
||||
|
||||
|
||||
|
||||
- (void)drawRect:(CGRect)rect
|
||||
{
|
||||
[super drawRect:rect];
|
||||
if (displayPlaceHolder && placeholder && placeholderColor) {
|
||||
[placeholderColor set];
|
||||
[placeholder drawInRect:CGRectMake(8.0f, 8.0f, self.frame.size.width - 16.0f, self.frame.size.height - 16.0f) withFont:self.font];
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -155,7 +155,11 @@ CGRect IASKCGRectSwap(CGRect rect);
|
|||
- (void) viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
if ([self isPad]) {
|
||||
self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLineEtched;
|
||||
// patch for iOS7 from https://github.com/futuretap/InAppSettingsKit/commit/66d95030cfac84f17f800056140523742b49957e
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
|
||||
if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_6_1) // don't use etched style on iOS 7
|
||||
#endif
|
||||
self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLineEtched;
|
||||
}
|
||||
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapToEndEdit:)];
|
||||
tapGesture.cancelsTouchesInView = NO;
|
||||
|
|
@ -446,7 +450,7 @@ CGRect IASKCGRectSwap(CGRect rect);
|
|||
if ((title = [self tableView:tableView titleForHeaderInSection:section])) {
|
||||
CGSize size = [title sizeWithFont:[UIFont boldSystemFontOfSize:[UIFont labelFontSize]]
|
||||
constrainedToSize:CGSizeMake(tableView.frame.size.width - 2*kIASKHorizontalPaddingGroupTitles, INFINITY)
|
||||
lineBreakMode:UILineBreakModeWordWrap];
|
||||
lineBreakMode:NSLineBreakByWordWrapping];
|
||||
return size.height+kIASKVerticalPaddingGroupTitles;
|
||||
}
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -97,7 +97,13 @@
|
|||
#define kIASKMinLabelWidth 97
|
||||
#define kIASKMaxLabelWidth 240
|
||||
#define kIASKMinValueWidth 35
|
||||
#define kIASKPaddingLeft 9
|
||||
|
||||
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 70000
|
||||
#define kIASKPaddingLeft (floor(NSFoundationVersionNumber) > NSFoundationVersionNumber_iOS_6_1 ? 14 : 9)
|
||||
#else
|
||||
#define kIASKPaddingLeft 9
|
||||
#endif
|
||||
|
||||
#define kIASKPaddingRight 10
|
||||
#define kIASKHorizontalPaddingGroupTitles 19
|
||||
#define kIASKVerticalPaddingGroupTitles 15
|
||||
|
|
|
|||
|
|
@ -32,16 +32,16 @@
|
|||
CGFloat labelWidth = [self.textLabel sizeThatFits:CGSizeZero].width;
|
||||
CGFloat minValueWidth = (self.detailTextLabel.text.length) ? kIASKMinValueWidth + kIASKSpacing : 0;
|
||||
labelWidth = MIN(labelWidth, viewSize.width - minValueWidth - kIASKPaddingLeft -kIASKPaddingRight - imageOffset);
|
||||
CGRect labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, labelWidth, viewSize.height -2);
|
||||
CGRect labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, labelWidth, viewSize.height);
|
||||
if (!self.detailTextLabel.text.length) {
|
||||
labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height -2);
|
||||
labelFrame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height);
|
||||
}
|
||||
self.textLabel.frame = labelFrame;
|
||||
|
||||
// set the right value label frame
|
||||
if (!self.textLabel.text.length) {
|
||||
viewSize = [self.detailTextLabel superview].frame.size;
|
||||
self.detailTextLabel.frame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height -2);
|
||||
self.detailTextLabel.frame = CGRectMake(kIASKPaddingLeft + imageOffset, 0, viewSize.width - kIASKPaddingLeft - kIASKPaddingRight - imageOffset, viewSize.height);
|
||||
} else if (self.detailTextLabel.textAlignment == UITextAlignmentLeft) {
|
||||
CGRect valueFrame = self.detailTextLabel.frame;
|
||||
valueFrame.origin.x = labelFrame.origin.x + MAX(kIASKMinLabelWidth - imageOffset, labelWidth) + kIASKSpacing;
|
||||
|
|
|
|||
|
|
@ -83,16 +83,16 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi
|
|||
// Auto found position
|
||||
//
|
||||
|
||||
UIView *view = [self superview];
|
||||
// Find TableViewCell
|
||||
if(view != nil && ![view isKindOfClass:[UITableView class]]) view = [view superview];
|
||||
UIView *view = [self superview];
|
||||
while( view != nil && ![view isKindOfClass:[UITableView class]] ) view = [view superview];
|
||||
|
||||
UIView *cellView = [self superview];
|
||||
// Find TableViewCell
|
||||
if(cellView != nil && ![cellView isKindOfClass:[UITableViewCell class]]) cellView = [cellView superview];
|
||||
UIView *cellView = [self superview];
|
||||
while( cellView != nil && ![cellView isKindOfClass:[UITableViewCell class]] ) cellView = [cellView superview];
|
||||
|
||||
if(view != nil && cellView != nil) {
|
||||
UITableViewCell *cell = (UITableViewCell*)cellView;
|
||||
UITableViewCell *cell = (UITableViewCell*)cellView;
|
||||
UITableView *tableView = (UITableView*)view;
|
||||
|
||||
if([tableView style] == UITableViewStyleGrouped) {
|
||||
|
|
@ -122,7 +122,9 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi
|
|||
- (void)drawRect:(CGRect)aRect {
|
||||
// Drawing code
|
||||
|
||||
CGContextRef c = UIGraphicsGetCurrentContext();
|
||||
CGContextRef c = UIGraphicsGetCurrentContext();
|
||||
// don't use arcs on iOS >= 7
|
||||
BOOL use_arcs = [[[UIDevice currentDevice] systemVersion] floatValue] < 7;
|
||||
|
||||
int lineWidth = 1;
|
||||
|
||||
|
|
@ -140,8 +142,8 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi
|
|||
CGContextSetLineWidth(c, lineWidth);
|
||||
CGContextSetAllowsAntialiasing(c, YES);
|
||||
CGContextSetShouldAntialias(c, YES);
|
||||
|
||||
if (position == UACellBackgroundViewPositionTop) {
|
||||
|
||||
if (position == UACellBackgroundViewPositionTop && use_arcs) {
|
||||
|
||||
miny += 1;
|
||||
|
||||
|
|
@ -166,7 +168,7 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi
|
|||
CGContextStrokePath(c);
|
||||
CGContextRestoreGState(c);
|
||||
|
||||
} else if (position == UACellBackgroundViewPositionBottom) {
|
||||
} else if (position == UACellBackgroundViewPositionBottom && use_arcs) {
|
||||
|
||||
CGMutablePathRef path = CGPathCreateMutable();
|
||||
CGPathMoveToPoint(path, NULL, minx, miny);
|
||||
|
|
@ -190,8 +192,8 @@ static void addRoundedRectToPath(CGContextRef context, CGRect rect, float ovalWi
|
|||
CGContextRestoreGState(c);
|
||||
|
||||
|
||||
} else if (position == UACellBackgroundViewPositionMiddle) {
|
||||
|
||||
} else if (position == UACellBackgroundViewPositionMiddle || !use_arcs) {
|
||||
// in iOS7, this will be the default handling
|
||||
CGMutablePathRef path = CGPathCreateMutable();
|
||||
CGPathMoveToPoint(path, NULL, minx, miny);
|
||||
CGPathAddLineToPoint(path, NULL, maxx, miny);
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">784</int>
|
||||
<string key="IBDocument.SystemVersion">11E53</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2840</string>
|
||||
<string key="IBDocument.AppKitVersion">1138.47</string>
|
||||
<string key="IBDocument.HIToolboxVersion">569.00</string>
|
||||
<string key="IBDocument.SystemVersion">12D78</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">3084</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.37</string>
|
||||
<string key="IBDocument.HIToolboxVersion">626.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="NS.object.0">1926</string>
|
||||
<string key="NS.object.0">2083</string>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.IntegratedClassDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
|
|
@ -52,6 +52,7 @@
|
|||
<int key="NSvFlags">301</int>
|
||||
<string key="NSFrame">{{-1000, -1000}, {2000, 2000}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1017044170"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor">
|
||||
|
|
@ -65,6 +66,7 @@
|
|||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="69034748"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:196</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor" id="95762599">
|
||||
|
|
@ -76,11 +78,12 @@
|
|||
<object class="IBUIView" id="673568144">
|
||||
<reference key="NSNextResponder" ref="1009068048"/>
|
||||
<int key="NSvFlags">283</int>
|
||||
<string key="NSFrame">{{220, 360}, {100, 100}}</string>
|
||||
<string key="NSFrame">{{216, 324}, {96, 128}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="972197710"/>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
<int key="IBUIContentMode">1</int>
|
||||
<int key="IBUIContentMode">2</int>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
<object class="IBUIActivityIndicatorView" id="69034748">
|
||||
|
|
@ -88,6 +91,7 @@
|
|||
<int key="NSvFlags">301</int>
|
||||
<string key="NSFrame">{{141, 212}, {37, 37}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="673568144"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1030</string>
|
||||
<bool key="IBUIOpaque">NO</bool>
|
||||
|
|
@ -99,6 +103,7 @@
|
|||
</object>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview" ref="858247959"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="327164432"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:196</string>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
|
|
@ -109,6 +114,7 @@
|
|||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrame">{{0, -10}, {320, 480}}</string>
|
||||
<reference key="NSSuperview" ref="858247959"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1009068048"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:418</string>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
|
|
@ -139,6 +145,7 @@
|
|||
<int key="NSvFlags">-2147483356</int>
|
||||
<string key="NSFrame">{{20, 40}, {85, 33}}</string>
|
||||
<reference key="NSSuperview" ref="858247959"/>
|
||||
<reference key="NSWindow"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="IBUIOpaque">NO</bool>
|
||||
<object class="IBUIAccessibilityConfiguration" key="IBUIAccessibilityConfiguration">
|
||||
|
|
@ -174,6 +181,7 @@
|
|||
</object>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="662692377"/>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
<bool key="IBUIClearsContextBeforeDrawing">NO</bool>
|
||||
|
|
@ -440,7 +448,120 @@
|
|||
<nil key="sourceID"/>
|
||||
<int key="maxID">173</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallTableViewController</string>
|
||||
<string key="superclassName">UITableViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallTableViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallViewController</string>
|
||||
<string key="superclassName">UIViewController</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>InCallTableViewController</string>
|
||||
<string>UITableView</string>
|
||||
<string>UIView</string>
|
||||
<string>UICamSwitch</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableController</string>
|
||||
<string key="candidateClassName">InCallTableViewController</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableView</string>
|
||||
<string key="candidateClassName">UITableView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">testVideoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoCameraSwitch</string>
|
||||
<string key="candidateClassName">UICamSwitch</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoGroup</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoPreview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoWaitingForFirstImage</string>
|
||||
<string key="candidateClassName">UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UICamSwitch</string>
|
||||
<string key="superclassName">UIButton</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<string key="NS.object.0">UIView</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">preview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/UICamSwitch.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
|
|
@ -466,6 +587,6 @@
|
|||
<string>{151, 51}</string>
|
||||
</object>
|
||||
</object>
|
||||
<string key="IBCocoaTouchPluginVersion">1926</string>
|
||||
<string key="IBCocoaTouchPluginVersion">2083</string>
|
||||
</data>
|
||||
</archive>
|
||||
|
|
|
|||
|
|
@ -2,22 +2,22 @@
|
|||
<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">784</int>
|
||||
<string key="IBDocument.SystemVersion">11E53</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">1938</string>
|
||||
<string key="IBDocument.AppKitVersion">1138.47</string>
|
||||
<string key="IBDocument.HIToolboxVersion">569.00</string>
|
||||
<string key="IBDocument.SystemVersion">12D78</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">3084</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.37</string>
|
||||
<string key="IBDocument.HIToolboxVersion">626.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="NS.object.0">933</string>
|
||||
<string key="NS.object.0">2083</string>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.IntegratedClassDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>IBUITableView</string>
|
||||
<string>IBUIButton</string>
|
||||
<string>IBUIActivityIndicatorView</string>
|
||||
<string>IBUIView</string>
|
||||
<string>IBUITableViewController</string>
|
||||
<string>IBProxyObject</string>
|
||||
<string>IBUIActivityIndicatorView</string>
|
||||
<string>IBUIButton</string>
|
||||
<string>IBUITableView</string>
|
||||
<string>IBUITableViewController</string>
|
||||
<string>IBUIView</string>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.PluginDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
|
|
@ -76,11 +76,11 @@
|
|||
<object class="IBUIView" id="673568144">
|
||||
<reference key="NSNextResponder" ref="1009068048"/>
|
||||
<int key="NSvFlags">283</int>
|
||||
<string key="NSFrame">{{220, 360}, {100, 100}}</string>
|
||||
<string key="NSFrame">{{216, 324}, {96, 128}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSNextKeyView" ref="972197710"/>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
<int key="IBUIContentMode">1</int>
|
||||
<int key="IBUIContentMode">2</int>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
<object class="IBUIActivityIndicatorView" id="69034748">
|
||||
|
|
@ -405,7 +405,7 @@
|
|||
<string>173.IBPluginDependency</string>
|
||||
<string>9.IBPluginDependency</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>InCallViewController</string>
|
||||
<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
|
|
@ -439,7 +439,120 @@
|
|||
<nil key="sourceID"/>
|
||||
<int key="maxID">173</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallTableViewController</string>
|
||||
<string key="superclassName">UITableViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallTableViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallViewController</string>
|
||||
<string key="superclassName">UIViewController</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>InCallTableViewController</string>
|
||||
<string>UITableView</string>
|
||||
<string>UIView</string>
|
||||
<string>UICamSwitch</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableController</string>
|
||||
<string key="candidateClassName">InCallTableViewController</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableView</string>
|
||||
<string key="candidateClassName">UITableView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">testVideoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoCameraSwitch</string>
|
||||
<string key="candidateClassName">UICamSwitch</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoGroup</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoPreview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoWaitingForFirstImage</string>
|
||||
<string key="candidateClassName">UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UICamSwitch</string>
|
||||
<string key="superclassName">UIButton</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<string key="NS.object.0">UIView</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">preview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/UICamSwitch.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
|
|
@ -459,12 +572,12 @@
|
|||
<string>switch_camera_default.png</string>
|
||||
<string>switch_camera_over.png</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>{151, 51}</string>
|
||||
<string>{151, 51}</string>
|
||||
</object>
|
||||
</object>
|
||||
<string key="IBCocoaTouchPluginVersion">933</string>
|
||||
<string key="IBCocoaTouchPluginVersion">2083</string>
|
||||
</data>
|
||||
</archive>
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">784</int>
|
||||
<string key="IBDocument.SystemVersion">12C60</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2844</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.34</string>
|
||||
<string key="IBDocument.HIToolboxVersion">625.00</string>
|
||||
<string key="IBDocument.SystemVersion">12D78</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">3084</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.37</string>
|
||||
<string key="IBDocument.HIToolboxVersion">626.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="NS.object.0">1930</string>
|
||||
<string key="NS.object.0">2083</string>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.IntegratedClassDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
|
|
@ -76,11 +76,11 @@
|
|||
<object class="IBUIView" id="673568144">
|
||||
<reference key="NSNextResponder" ref="1009068048"/>
|
||||
<int key="NSvFlags">283</int>
|
||||
<string key="NSFrame">{{220, 360}, {100, 100}}</string>
|
||||
<string key="NSFrame">{{216, 324}, {96, 128}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSNextKeyView" ref="972197710"/>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
<int key="IBUIContentMode">1</int>
|
||||
<int key="IBUIContentMode">2</int>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
<object class="IBUIActivityIndicatorView" id="69034748">
|
||||
|
|
@ -439,7 +439,120 @@
|
|||
<nil key="sourceID"/>
|
||||
<int key="maxID">173</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallTableViewController</string>
|
||||
<string key="superclassName">UITableViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallTableViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallViewController</string>
|
||||
<string key="superclassName">UIViewController</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>InCallTableViewController</string>
|
||||
<string>UITableView</string>
|
||||
<string>UIView</string>
|
||||
<string>UICamSwitch</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableController</string>
|
||||
<string key="candidateClassName">InCallTableViewController</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableView</string>
|
||||
<string key="candidateClassName">UITableView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">testVideoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoCameraSwitch</string>
|
||||
<string key="candidateClassName">UICamSwitch</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoGroup</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoPreview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoWaitingForFirstImage</string>
|
||||
<string key="candidateClassName">UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UICamSwitch</string>
|
||||
<string key="superclassName">UIButton</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<string key="NS.object.0">UIView</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">preview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/UICamSwitch.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
|
|
@ -465,6 +578,6 @@
|
|||
<string>{151, 51}</string>
|
||||
</object>
|
||||
</object>
|
||||
<string key="IBCocoaTouchPluginVersion">1930</string>
|
||||
<string key="IBCocoaTouchPluginVersion">2083</string>
|
||||
</data>
|
||||
</archive>
|
||||
|
|
|
|||
22
README
22
README
|
|
@ -12,10 +12,10 @@ Make sure that /opt/local/bin (macport tools) arrives first in your PATH env var
|
|||
|
||||
Once xcode and macports are installed, open a terminal and install the required build-time tools with:
|
||||
|
||||
$ sudo port install coreutils automake autoconf libtool intltool wget pkgconfig cmake gmake yasm grep doxygen ImageMagick optipng
|
||||
$ sudo port install coreutils automake autoconf libtool intltool wget pkgconfig cmake gmake yasm grep doxygen ImageMagick optipng antlr3
|
||||
|
||||
|
||||
Install gas-preprosessor.pl (http://github.com/yuvi/gas-preprocessor/ ) to be copied into /opt/local/bin :
|
||||
Install gas-preprosessor.pl version above Jully 2013 (http://github.com/yuvi/gas-preprocessor/ ) to be copied into /opt/local/bin :
|
||||
|
||||
$ wget --no-check-certificate https://raw.github.com/yuvi/gas-preprocessor/master/gas-preprocessor.pl
|
||||
$ sudo mv gas-preprocessor.pl /opt/local/bin/.
|
||||
|
|
@ -45,8 +45,8 @@ BUILDING THE SDK
|
|||
$ cd submodules/build
|
||||
$ make all
|
||||
|
||||
ALTERNATIVELY, you can force liblinphone to use only non GPL code except for liblinphone, mediastremer2, ortp, exosip, osip.
|
||||
If you choose this flavor, your final application is still subject to GPL except if you have a commercial license for liblinphone, mediastremer2, ortp, exosip, osip.
|
||||
ALTERNATIVELY, you can force liblinphone to use only non GPL code except for liblinphone, mediastremer2, ortp, belle-sip.
|
||||
If you choose this flavor, your final application is still subject to GPL except if you have a commercial license for liblinphone, mediastremer2, ortp, belle-sip.
|
||||
|
||||
To generate the liblinphone multi arch sdkin non GPL mode, do:
|
||||
$ cd submodules/build
|
||||
|
|
@ -89,7 +89,19 @@ LIMITATIONS, KNOWN BUGS
|
|||
***********************
|
||||
|
||||
* Video capture does not work in simulator (not implemented by simulator ?).
|
||||
* Sound does not work well (or at all) in simulator
|
||||
|
||||
|
||||
DEBUGING THE SDK
|
||||
****************
|
||||
|
||||
Sometime it can be usefull to step into liblinphone SDK funtions. To allow xcode to enable breakpoint whithin liblinphone, SDK must be built with debug symbols.
|
||||
To add debug symbol to liblinphone SDK, add make option "enable_debug=yes".
|
||||
$ make make all enable_gpl_third_parties=no enable_debug=yes
|
||||
|
||||
|
||||
DEBUGING MEDIASTREMMER2
|
||||
***********************
|
||||
For IOS specicific media development like audio video capture/playback it may be interresting to use mediastream test tool.
|
||||
The project submodule/liblinphone.xcodeproj can be used for this purpose.
|
||||
|
||||
****************
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
BIN
Resources/linphone_icon_120.png
Normal file
BIN
Resources/linphone_icon_120.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.9 KiB |
BIN
Resources/linphone_icon_152.png
Normal file
BIN
Resources/linphone_icon_152.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 9 KiB |
BIN
Resources/linphone_icon_76.png
Normal file
BIN
Resources/linphone_icon_76.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.3 KiB |
|
|
@ -19,6 +19,8 @@ automatically_accept=0
|
|||
|
||||
[net]
|
||||
firewall_policy=0
|
||||
download_bw=380
|
||||
upload_bw=380
|
||||
|
||||
[app]
|
||||
rotation_preference=auto
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
[net]
|
||||
download_bw=380
|
||||
upload_bw=380
|
||||
mtu=1300
|
||||
activate_edge_workarounds=0
|
||||
edge_ping_time=10
|
||||
|
|
@ -35,15 +33,19 @@ max_calls=3
|
|||
[wizard]
|
||||
service_url=https://www.linphone.org/wizard.php
|
||||
domain=sip.linphone.org
|
||||
proxy=sip.linphone.org:5228
|
||||
proxy=sip.linphone.org:5223
|
||||
password_length=6
|
||||
username_length=4
|
||||
expires=604800
|
||||
push_notification=1
|
||||
transport=tcp
|
||||
transport=tls
|
||||
sharing_server=https://www.linphone.org:444/upload.php
|
||||
ice=1
|
||||
stun=stun.linphone.org
|
||||
|
||||
[video]
|
||||
display_filter_auto_rotate=0
|
||||
|
||||
[app]
|
||||
#contact_display_username_only=1
|
||||
#contact_filter_on_default_domain=1
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
[net]
|
||||
download_bw=512
|
||||
upload_bw=512
|
||||
mtu=1300
|
||||
activate_edge_workarounds=0
|
||||
edge_ping_time=200
|
||||
|
|
|
|||
|
|
@ -19,6 +19,8 @@ automatically_accept=0
|
|||
|
||||
[net]
|
||||
firewall_policy=0
|
||||
download_bw=512
|
||||
upload_bw=512
|
||||
|
||||
[app]
|
||||
rotation_preference=auto
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -30,6 +30,16 @@
|
|||
<key>Type</key>
|
||||
<string>PSToggleSwitchSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<true/>
|
||||
<key>Key</key>
|
||||
<string>opus_preference</string>
|
||||
<key>Title</key>
|
||||
<string>Opus 48kHz</string>
|
||||
<key>Type</key>
|
||||
<string>PSToggleSwitchSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<false/>
|
||||
|
|
@ -50,6 +60,28 @@
|
|||
<key>Type</key>
|
||||
<string>PSToggleSwitchSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<true/>
|
||||
<key>Key</key>
|
||||
<string>aaceld_22k_preference</string>
|
||||
<key>Title</key>
|
||||
<string>AAC-ELD 22kHz</string>
|
||||
<key>Type</key>
|
||||
<string>PSToggleSwitchSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>New item</key>
|
||||
<string></string>
|
||||
<key>DefaultValue</key>
|
||||
<false/>
|
||||
<key>Key</key>
|
||||
<string>aaceld_44k_preference</string>
|
||||
<key>Title</key>
|
||||
<string>AAC-ELD 44kHz</string>
|
||||
<key>Type</key>
|
||||
<string>PSToggleSwitchSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<true/>
|
||||
|
|
@ -156,6 +188,44 @@
|
|||
<key>IASKTextAlignment</key>
|
||||
<string>IASKUITextAlignmentRight</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<true/>
|
||||
<key>Key</key>
|
||||
<string>adaptive_rate_control_preference</string>
|
||||
<key>Title</key>
|
||||
<string>Adaptive rate control</string>
|
||||
<key>Type</key>
|
||||
<string>PSToggleSwitchSpecifier</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<integer>32</integer>
|
||||
<key>Key</key>
|
||||
<string>audio_codec_bitrate_limit_preference</string>
|
||||
<key>Title</key>
|
||||
<string>Codec bitrate limit</string>
|
||||
<key>Titles</key>
|
||||
<array>
|
||||
<string>10 kbits/s</string>
|
||||
<string>15 kbits/s</string>
|
||||
<string>20 kbits/s</string>
|
||||
<string>32 kbits/s</string>
|
||||
<string>64 kbits/s</string>
|
||||
<string>128 kbits/s</string>
|
||||
</array>
|
||||
<key>Type</key>
|
||||
<string>PSMultiValueSpecifier</string>
|
||||
<key>Values</key>
|
||||
<array>
|
||||
<integer>10</integer>
|
||||
<integer>15</integer>
|
||||
<integer>20</integer>
|
||||
<integer>32</integer>
|
||||
<integer>64</integer>
|
||||
<integer>128</integer>
|
||||
</array>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
|||
|
|
@ -40,6 +40,28 @@
|
|||
<key>Key</key>
|
||||
<string>preview_preference</string>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>DefaultValue</key>
|
||||
<integer>1</integer>
|
||||
<key>Key</key>
|
||||
<string>video_preferred_size_preference</string>
|
||||
<key>Title</key>
|
||||
<string>Preferred video size</string>
|
||||
<key>Titles</key>
|
||||
<array>
|
||||
<string>HD (960x720)</string>
|
||||
<string>VGA (640x480)</string>
|
||||
<string>QVGA (320x240)</string>
|
||||
</array>
|
||||
<key>Type</key>
|
||||
<string>PSMultiValueSpecifier</string>
|
||||
<key>Values</key>
|
||||
<array>
|
||||
<integer>0</integer>
|
||||
<integer>1</integer>
|
||||
<integer>2</integer>
|
||||
</array>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>Title</key>
|
||||
<string>Codecs</string>
|
||||
|
|
|
|||
|
|
@ -41,4 +41,10 @@
|
|||
"Playback gain" = "Playback gain";
|
||||
|
||||
/* Microphone gain */
|
||||
"Microphone gain" = "Microphone gain";
|
||||
"Microphone gain" = "Microphone gain";
|
||||
|
||||
/* Adaptive rate control */
|
||||
"Adaptive rate control" = "Adaptive rate control";
|
||||
|
||||
/* Codec bitrate limit */
|
||||
"Codec bitrate limit" = "Codec bitrate limit";
|
||||
|
|
|
|||
|
|
@ -10,6 +10,9 @@
|
|||
/* Show preview */
|
||||
"Show preview" = "Show preview";
|
||||
|
||||
/* Preferred video size */
|
||||
"Preferred video size" = "Preferred video size";
|
||||
|
||||
/* Codecs */
|
||||
"Codecs" = "Codecs";
|
||||
|
||||
|
|
|
|||
|
|
@ -41,4 +41,10 @@
|
|||
"Playback gain" = "Gain sortie";
|
||||
|
||||
/* Microphone gain */
|
||||
"Microphone gain" = "Gain microphone";
|
||||
"Microphone gain" = "Gain microphone";
|
||||
|
||||
/* Adaptive rate control */
|
||||
"Adaptive rate control" = "Contrôle de débit";
|
||||
|
||||
/* Codec bitrate limit */
|
||||
"Codec bitrate limit" = "Limite de débit du codec";
|
||||
|
|
|
|||
|
|
@ -10,6 +10,9 @@
|
|||
/* Show preview */
|
||||
"Show preview" = "Activer la prévisualisation";
|
||||
|
||||
/* Preferred video size */
|
||||
"Preferred video size" = "Taille de vidéo préférée";
|
||||
|
||||
/* Codecs */
|
||||
"Codecs" = "Codecs";
|
||||
|
||||
|
|
|
|||
|
|
@ -41,4 +41,10 @@
|
|||
"Playback gain" = "Усиление воспроизведения";
|
||||
|
||||
/* Microphone gain */
|
||||
"Microphone gain" = "Усиление микрофона";
|
||||
"Microphone gain" = "Усиление микрофона";
|
||||
|
||||
/* Adaptive rate control */
|
||||
"Adaptive rate control" = "Adaptive rate control";
|
||||
|
||||
/* Codec bitrate limit */
|
||||
"Codec bitrate limit" = "Codec bitrate limit";
|
||||
|
|
|
|||
|
|
@ -10,6 +10,9 @@
|
|||
/* Show preview */
|
||||
"Show preview" = "Предварительный просмотр";
|
||||
|
||||
/* Preferred video size */
|
||||
"Preferred video size" = "Preferred video size";
|
||||
|
||||
/* Codecs */
|
||||
"Codecs" = "Кодеки";
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,39 @@
|
|||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
154E1A941715638900A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; };
|
||||
154E1A961715639A00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; };
|
||||
154E1A981715642E00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; };
|
||||
154E1A9A1715644400A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; };
|
||||
154E1A9C1715645F00A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; };
|
||||
154E1A9D171564B500A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; };
|
||||
154E1A9E171564B500A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; };
|
||||
154E1A9F171564B600A0D168 /* libavcodec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A991715644400A0D168 /* libavcodec.a */; };
|
||||
154E1AA0171564BA00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; };
|
||||
154E1AA1171564BA00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; };
|
||||
154E1AA2171564BA00A0D168 /* libavutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A971715642E00A0D168 /* libavutil.a */; };
|
||||
154E1AA3171564C100A0D168 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; };
|
||||
154E1AA4171564C100A0D168 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; };
|
||||
154E1AA5171564C200A0D168 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; };
|
||||
154E1AA6171564C600A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; };
|
||||
154E1AA7171564C600A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; };
|
||||
154E1AA8171564C700A0D168 /* libmediastreamer_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A931715638900A0D168 /* libmediastreamer_base.a */; };
|
||||
154E1AA9171564C900A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; };
|
||||
154E1AAA171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; };
|
||||
154E1AAB171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; };
|
||||
154E1AAC171564EA00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; };
|
||||
154E1AAD171564EA00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; };
|
||||
154E1AAE171564EB00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; };
|
||||
154E1AAF171564ED00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; };
|
||||
154E1AB0171564EE00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; };
|
||||
154E1AB1171564EE00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; };
|
||||
154E1AB21715661100A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; };
|
||||
154E1AB31715661100A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; };
|
||||
154E1AB41715661200A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; };
|
||||
15FC168517157478003FDB31 /* buddy_status.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC167E17157478003FDB31 /* buddy_status.c */; };
|
||||
15FC168817157478003FDB31 /* chatroom.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC167F17157478003FDB31 /* chatroom.c */; };
|
||||
15FC168A17157478003FDB31 /* helloworld.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC168017157478003FDB31 /* helloworld.c */; };
|
||||
15FC168F17157478003FDB31 /* registration.c in Sources */ = {isa = PBXBuildFile; fileRef = 15FC168117157478003FDB31 /* registration.c */; };
|
||||
1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
|
||||
2220D5D81278461C008F2C2E /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2220D5D71278461C008F2C2E /* CFNetwork.framework */; };
|
||||
|
|
@ -34,29 +67,18 @@
|
|||
229499FA12A5433F00D6CF48 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2220D5E912784672008F2C2E /* AudioToolbox.framework */; };
|
||||
229499FB12A5433F00D6CF48 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B6A012A3E159001AE361 /* libresolv.dylib */; };
|
||||
22D1B6A112A3E159001AE361 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B6A012A3E159001AE361 /* libresolv.dylib */; };
|
||||
22E5AFC5133A2E260044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC3133A2E260044EA25 /* libssl.a */; };
|
||||
22E5AFC6133A2E260044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC4133A2E260044EA25 /* libcrypto.a */; };
|
||||
22E5AFC9133A2E3F0044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC7133A2E3F0044EA25 /* libssl.a */; };
|
||||
22E5AFCA133A2E3F0044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFC8133A2E3F0044EA25 /* libcrypto.a */; };
|
||||
22E5AFCD133A2E5C0044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCB133A2E5C0044EA25 /* libssl.a */; };
|
||||
22E5AFCE133A2E5C0044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCC133A2E5C0044EA25 /* libcrypto.a */; };
|
||||
22E5AFD1133A2E760044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; };
|
||||
22E5AFD2133A2E760044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; };
|
||||
288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; };
|
||||
34F9DFE914C418B600E1BC69 /* helloworld.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE514C418B600E1BC69 /* helloworld.c */; };
|
||||
34F9DFF514C41EBA00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; };
|
||||
34F9DFF614C41EBA00E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; };
|
||||
34F9DFF714C41EBA00E1BC69 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; };
|
||||
34F9DFF814C41EBA00E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; };
|
||||
34F9DFF914C41EBA00E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; };
|
||||
34F9DFFA14C41EBA00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; };
|
||||
34F9DFFB14C41EBA00E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; };
|
||||
34F9DFFC14C41EBA00E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; };
|
||||
34F9DFFD14C41EBA00E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; };
|
||||
34F9DFFE14C41EBA00E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; };
|
||||
34F9DFFF14C41F4900E1BC69 /* buddy_status.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE314C418B600E1BC69 /* buddy_status.c */; };
|
||||
34F9E00014C41F4E00E1BC69 /* chatroom.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE414C418B600E1BC69 /* chatroom.c */; };
|
||||
34F9E00114C41F5300E1BC69 /* registration.c in Sources */ = {isa = PBXBuildFile; fileRef = 34F9DFE614C418B600E1BC69 /* registration.c */; };
|
||||
34F9E00314C41FB400E1BC69 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */; };
|
||||
34F9E00614C41FCF00E1BC69 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00414C41FCF00E1BC69 /* libsrtp.a */; };
|
||||
34F9E00714C41FCF00E1BC69 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00514C41FCF00E1BC69 /* libvpx.a */; };
|
||||
|
|
@ -67,7 +89,6 @@
|
|||
34F9E00F14C4204600E1BC69 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00514C41FCF00E1BC69 /* libvpx.a */; };
|
||||
34F9E01014C4207700E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; };
|
||||
34F9E01114C4208C00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; };
|
||||
34F9E01214C4208C00E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; };
|
||||
34F9E01314C4208C00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; };
|
||||
34F9E01414C420A200E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; };
|
||||
34F9E01514C420A200E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; };
|
||||
|
|
@ -82,7 +103,6 @@
|
|||
34F9E01E14C420DD00E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; };
|
||||
34F9E01F14C420DD00E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; };
|
||||
34F9E02014C420DD00E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; };
|
||||
34F9E02114C420F000E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; };
|
||||
34F9E02214C420FA00E1BC69 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */; };
|
||||
34F9E02314C4210100E1BC69 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */; };
|
||||
34F9E02414C4211000E1BC69 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00414C41FCF00E1BC69 /* libsrtp.a */; };
|
||||
|
|
@ -92,7 +112,6 @@
|
|||
34F9E02814C4214500E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; };
|
||||
34F9E02914C4214500E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; };
|
||||
34F9E02A14C4214500E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; };
|
||||
34F9E02B14C4214500E1BC69 /* libmediastreamer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */; };
|
||||
34F9E02C14C4214500E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; };
|
||||
34F9E02D14C4214500E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; };
|
||||
34F9E02E14C4214500E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; };
|
||||
|
|
@ -115,6 +134,15 @@
|
|||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
154E1A931715638900A0D168 /* libmediastreamer_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_base.a; path = "../../liblinphone-sdk/apple-darwin/lib/libmediastreamer_base.a"; sourceTree = "<group>"; };
|
||||
154E1A951715639A00A0D168 /* libmediastreamer_voip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_voip.a; path = "../../liblinphone-sdk/apple-darwin/lib/libmediastreamer_voip.a"; sourceTree = "<group>"; };
|
||||
154E1A971715642E00A0D168 /* libavutil.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavutil.a; path = "../../liblinphone-sdk/apple-darwin/lib/libavutil.a"; sourceTree = "<group>"; };
|
||||
154E1A991715644400A0D168 /* libavcodec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libavcodec.a; path = "../../liblinphone-sdk/apple-darwin/lib/libavcodec.a"; sourceTree = "<group>"; };
|
||||
154E1A9B1715645F00A0D168 /* libswscale.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libswscale.a; path = "../../liblinphone-sdk/apple-darwin/lib/libswscale.a"; sourceTree = "<group>"; };
|
||||
15FC167E17157478003FDB31 /* buddy_status.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = buddy_status.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/buddy_status.c"; sourceTree = "<group>"; };
|
||||
15FC167F17157478003FDB31 /* chatroom.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chatroom.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/chatroom.c"; sourceTree = "<group>"; };
|
||||
15FC168017157478003FDB31 /* helloworld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = helloworld.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/helloworld.c"; sourceTree = "<group>"; };
|
||||
15FC168117157478003FDB31 /* registration.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = registration.c; path = "../../liblinphone-sdk/apple-darwin/share/linphone/tutorials/registration.c"; sourceTree = "<group>"; };
|
||||
1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
|
||||
1D6058910D05DD3D006BFB54 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
|
||||
|
|
@ -126,25 +154,14 @@
|
|||
229499BA12A5417D00D6CF48 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
229499FF12A5433F00D6CF48 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
22D1B6A012A3E159001AE361 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = usr/lib/libresolv.dylib; sourceTree = SDKROOT; };
|
||||
22E5AFC3133A2E260044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = "<group>"; };
|
||||
22E5AFC4133A2E260044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = "<group>"; };
|
||||
22E5AFC7133A2E3F0044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = "<group>"; };
|
||||
22E5AFC8133A2E3F0044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = "<group>"; };
|
||||
22E5AFCB133A2E5C0044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = "<group>"; };
|
||||
22E5AFCC133A2E5C0044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = "<group>"; };
|
||||
22E5AFCF133A2E760044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = "<group>"; };
|
||||
22E5AFD0133A2E760044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = "<group>"; };
|
||||
288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
|
||||
32CA4F630368D1EE00C91783 /* hello_world_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hello_world_Prefix.pch; sourceTree = "<group>"; };
|
||||
34F9DFE314C418B600E1BC69 /* buddy_status.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = buddy_status.c; path = ../../submodules/linphone/coreapi/help/buddy_status.c; sourceTree = "<group>"; };
|
||||
34F9DFE414C418B600E1BC69 /* chatroom.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = chatroom.c; path = ../../submodules/linphone/coreapi/help/chatroom.c; sourceTree = "<group>"; };
|
||||
34F9DFE514C418B600E1BC69 /* helloworld.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = helloworld.c; path = ../../submodules/linphone/coreapi/help/helloworld.c; sourceTree = "<group>"; };
|
||||
34F9DFE614C418B600E1BC69 /* registration.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = registration.c; path = ../../submodules/linphone/coreapi/help/registration.c; sourceTree = "<group>"; };
|
||||
34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libeXosip2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libeXosip2.a"; sourceTree = "<group>"; };
|
||||
34F9DFEC14C41EBA00E1BC69 /* libgsm.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libgsm.a; path = "../../liblinphone-sdk/apple-darwin/lib/libgsm.a"; sourceTree = "<group>"; };
|
||||
34F9DFED14C41EBA00E1BC69 /* libilbc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbc.a; path = "../../liblinphone-sdk/apple-darwin/lib/libilbc.a"; sourceTree = "<group>"; };
|
||||
34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = liblinphone.a; path = "../../liblinphone-sdk/apple-darwin/lib/liblinphone.a"; sourceTree = "<group>"; };
|
||||
34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer.a; path = "../../liblinphone-sdk/apple-darwin/lib/libmediastreamer.a"; sourceTree = "<group>"; };
|
||||
34F9DFF014C41EBA00E1BC69 /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "../../liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = "<group>"; };
|
||||
34F9DFF114C41EBA00E1BC69 /* libosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosip2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libosip2.a"; sourceTree = "<group>"; };
|
||||
34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosipparser2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libosipparser2.a"; sourceTree = "<group>"; };
|
||||
|
|
@ -165,6 +182,9 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
154E1A9C1715645F00A0D168 /* libswscale.a in Frameworks */,
|
||||
154E1A9A1715644400A0D168 /* libavcodec.a in Frameworks */,
|
||||
154E1A981715642E00A0D168 /* libavutil.a in Frameworks */,
|
||||
34F9E03714C424AF00E1BC69 /* CoreMedia.framework in Frameworks */,
|
||||
34F9E03514C4249600E1BC69 /* CoreVideo.framework in Frameworks */,
|
||||
34F9E03414C4247A00E1BC69 /* AVFoundation.framework in Frameworks */,
|
||||
|
|
@ -176,14 +196,13 @@
|
|||
34F9DFF614C41EBA00E1BC69 /* libgsm.a in Frameworks */,
|
||||
34F9DFF714C41EBA00E1BC69 /* libilbc.a in Frameworks */,
|
||||
34F9DFF814C41EBA00E1BC69 /* liblinphone.a in Frameworks */,
|
||||
34F9DFF914C41EBA00E1BC69 /* libmediastreamer.a in Frameworks */,
|
||||
154E1A941715638900A0D168 /* libmediastreamer_base.a in Frameworks */,
|
||||
154E1A961715639A00A0D168 /* libmediastreamer_voip.a in Frameworks */,
|
||||
34F9DFFA14C41EBA00E1BC69 /* libortp.a in Frameworks */,
|
||||
34F9DFFB14C41EBA00E1BC69 /* libosip2.a in Frameworks */,
|
||||
34F9DFFC14C41EBA00E1BC69 /* libosipparser2.a in Frameworks */,
|
||||
34F9DFFD14C41EBA00E1BC69 /* libspeex.a in Frameworks */,
|
||||
34F9DFFE14C41EBA00E1BC69 /* libspeexdsp.a in Frameworks */,
|
||||
22E5AFC5133A2E260044EA25 /* libssl.a in Frameworks */,
|
||||
22E5AFC6133A2E260044EA25 /* libcrypto.a in Frameworks */,
|
||||
1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */,
|
||||
1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */,
|
||||
288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */,
|
||||
|
|
@ -191,6 +210,8 @@
|
|||
2220D5DA1278461C008F2C2E /* CoreAudio.framework in Frameworks */,
|
||||
2220D5EA12784672008F2C2E /* AudioToolbox.framework in Frameworks */,
|
||||
22D1B6A112A3E159001AE361 /* libresolv.dylib in Frameworks */,
|
||||
154E1AAE171564EB00A0D168 /* libssl.a in Frameworks */,
|
||||
154E1AAF171564ED00A0D168 /* libcrypto.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -207,15 +228,12 @@
|
|||
34F9E01414C420A200E1BC69 /* libosip2.a in Frameworks */,
|
||||
34F9E01514C420A200E1BC69 /* libosipparser2.a in Frameworks */,
|
||||
34F9E01114C4208C00E1BC69 /* libeXosip2.a in Frameworks */,
|
||||
34F9E01214C4208C00E1BC69 /* libmediastreamer.a in Frameworks */,
|
||||
34F9E01314C4208C00E1BC69 /* libortp.a in Frameworks */,
|
||||
34F9E01014C4207700E1BC69 /* liblinphone.a in Frameworks */,
|
||||
34F9E00E14C4204600E1BC69 /* libsrtp.a in Frameworks */,
|
||||
34F9E00F14C4204600E1BC69 /* libvpx.a in Frameworks */,
|
||||
34F9E00C14C4203900E1BC69 /* OpenGLES.framework in Frameworks */,
|
||||
34F9E00D14C4203900E1BC69 /* QuartzCore.framework in Frameworks */,
|
||||
22E5AFC9133A2E3F0044EA25 /* libssl.a in Frameworks */,
|
||||
22E5AFCA133A2E3F0044EA25 /* libcrypto.a in Frameworks */,
|
||||
2294996912A53FEE00D6CF48 /* Foundation.framework in Frameworks */,
|
||||
2294996A12A53FEE00D6CF48 /* UIKit.framework in Frameworks */,
|
||||
2294996B12A53FEE00D6CF48 /* CoreGraphics.framework in Frameworks */,
|
||||
|
|
@ -223,6 +241,14 @@
|
|||
2294997712A53FEE00D6CF48 /* CoreAudio.framework in Frameworks */,
|
||||
2294997812A53FEE00D6CF48 /* AudioToolbox.framework in Frameworks */,
|
||||
2294997912A53FEE00D6CF48 /* libresolv.dylib in Frameworks */,
|
||||
154E1A9D171564B500A0D168 /* libavcodec.a in Frameworks */,
|
||||
154E1AA0171564BA00A0D168 /* libavutil.a in Frameworks */,
|
||||
154E1AA3171564C100A0D168 /* libilbc.a in Frameworks */,
|
||||
154E1AA6171564C600A0D168 /* libmediastreamer_base.a in Frameworks */,
|
||||
154E1AA9171564C900A0D168 /* libmediastreamer_voip.a in Frameworks */,
|
||||
154E1AAD171564EA00A0D168 /* libssl.a in Frameworks */,
|
||||
154E1AB0171564EE00A0D168 /* libcrypto.a in Frameworks */,
|
||||
154E1AB21715661100A0D168 /* libswscale.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -237,7 +263,6 @@
|
|||
34F9E02514C4211000E1BC69 /* libvpx.a in Frameworks */,
|
||||
34F9E02314C4210100E1BC69 /* OpenGLES.framework in Frameworks */,
|
||||
34F9E02214C420FA00E1BC69 /* QuartzCore.framework in Frameworks */,
|
||||
34F9E02114C420F000E1BC69 /* libmediastreamer.a in Frameworks */,
|
||||
34F9E01914C420DD00E1BC69 /* libeXosip2.a in Frameworks */,
|
||||
34F9E01A14C420DD00E1BC69 /* libgsm.a in Frameworks */,
|
||||
34F9E01B14C420DD00E1BC69 /* liblinphone.a in Frameworks */,
|
||||
|
|
@ -246,8 +271,6 @@
|
|||
34F9E01E14C420DD00E1BC69 /* libosipparser2.a in Frameworks */,
|
||||
34F9E01F14C420DD00E1BC69 /* libspeex.a in Frameworks */,
|
||||
34F9E02014C420DD00E1BC69 /* libspeexdsp.a in Frameworks */,
|
||||
22E5AFCD133A2E5C0044EA25 /* libssl.a in Frameworks */,
|
||||
22E5AFCE133A2E5C0044EA25 /* libcrypto.a in Frameworks */,
|
||||
229499A612A5417D00D6CF48 /* Foundation.framework in Frameworks */,
|
||||
229499A712A5417D00D6CF48 /* UIKit.framework in Frameworks */,
|
||||
229499A812A5417D00D6CF48 /* CoreGraphics.framework in Frameworks */,
|
||||
|
|
@ -255,6 +278,14 @@
|
|||
229499B412A5417D00D6CF48 /* CoreAudio.framework in Frameworks */,
|
||||
229499B512A5417D00D6CF48 /* AudioToolbox.framework in Frameworks */,
|
||||
229499B612A5417D00D6CF48 /* libresolv.dylib in Frameworks */,
|
||||
154E1A9E171564B500A0D168 /* libavcodec.a in Frameworks */,
|
||||
154E1AA1171564BA00A0D168 /* libavutil.a in Frameworks */,
|
||||
154E1AA4171564C100A0D168 /* libilbc.a in Frameworks */,
|
||||
154E1AA7171564C600A0D168 /* libmediastreamer_base.a in Frameworks */,
|
||||
154E1AAA171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */,
|
||||
154E1AAC171564EA00A0D168 /* libssl.a in Frameworks */,
|
||||
154E1AB1171564EE00A0D168 /* libcrypto.a in Frameworks */,
|
||||
154E1AB31715661100A0D168 /* libswscale.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -268,7 +299,6 @@
|
|||
34F9E02814C4214500E1BC69 /* libeXosip2.a in Frameworks */,
|
||||
34F9E02914C4214500E1BC69 /* libgsm.a in Frameworks */,
|
||||
34F9E02A14C4214500E1BC69 /* liblinphone.a in Frameworks */,
|
||||
34F9E02B14C4214500E1BC69 /* libmediastreamer.a in Frameworks */,
|
||||
34F9E02C14C4214500E1BC69 /* libortp.a in Frameworks */,
|
||||
34F9E02D14C4214500E1BC69 /* libosip2.a in Frameworks */,
|
||||
34F9E02E14C4214500E1BC69 /* libosipparser2.a in Frameworks */,
|
||||
|
|
@ -287,6 +317,12 @@
|
|||
229499F912A5433F00D6CF48 /* CoreAudio.framework in Frameworks */,
|
||||
229499FA12A5433F00D6CF48 /* AudioToolbox.framework in Frameworks */,
|
||||
229499FB12A5433F00D6CF48 /* libresolv.dylib in Frameworks */,
|
||||
154E1A9F171564B600A0D168 /* libavcodec.a in Frameworks */,
|
||||
154E1AA2171564BA00A0D168 /* libavutil.a in Frameworks */,
|
||||
154E1AA5171564C200A0D168 /* libilbc.a in Frameworks */,
|
||||
154E1AA8171564C700A0D168 /* libmediastreamer_base.a in Frameworks */,
|
||||
154E1AAB171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */,
|
||||
154E1AB41715661200A0D168 /* libswscale.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -318,27 +354,25 @@
|
|||
34F9E03314C4247A00E1BC69 /* AVFoundation.framework */,
|
||||
34F9E00A14C4202100E1BC69 /* QuartzCore.framework */,
|
||||
34F9E00814C41FE900E1BC69 /* CoreVideo.framework */,
|
||||
34F9E00414C41FCF00E1BC69 /* libsrtp.a */,
|
||||
34F9E00514C41FCF00E1BC69 /* libvpx.a */,
|
||||
34F9E00214C41FB400E1BC69 /* OpenGLES.framework */,
|
||||
154E1A991715644400A0D168 /* libavcodec.a */,
|
||||
154E1A971715642E00A0D168 /* libavutil.a */,
|
||||
22E5AFD0133A2E760044EA25 /* libcrypto.a */,
|
||||
34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */,
|
||||
34F9DFEC14C41EBA00E1BC69 /* libgsm.a */,
|
||||
34F9DFED14C41EBA00E1BC69 /* libilbc.a */,
|
||||
34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */,
|
||||
34F9DFEF14C41EBA00E1BC69 /* libmediastreamer.a */,
|
||||
154E1A931715638900A0D168 /* libmediastreamer_base.a */,
|
||||
154E1A951715639A00A0D168 /* libmediastreamer_voip.a */,
|
||||
34F9DFF014C41EBA00E1BC69 /* libortp.a */,
|
||||
34F9DFF114C41EBA00E1BC69 /* libosip2.a */,
|
||||
34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */,
|
||||
34F9DFF314C41EBA00E1BC69 /* libspeex.a */,
|
||||
34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */,
|
||||
34F9E00414C41FCF00E1BC69 /* libsrtp.a */,
|
||||
22E5AFCF133A2E760044EA25 /* libssl.a */,
|
||||
22E5AFD0133A2E760044EA25 /* libcrypto.a */,
|
||||
22E5AFCB133A2E5C0044EA25 /* libssl.a */,
|
||||
22E5AFCC133A2E5C0044EA25 /* libcrypto.a */,
|
||||
22E5AFC7133A2E3F0044EA25 /* libssl.a */,
|
||||
22E5AFC8133A2E3F0044EA25 /* libcrypto.a */,
|
||||
22E5AFC3133A2E260044EA25 /* libssl.a */,
|
||||
22E5AFC4133A2E260044EA25 /* libcrypto.a */,
|
||||
154E1A9B1715645F00A0D168 /* libswscale.a */,
|
||||
34F9E00514C41FCF00E1BC69 /* libvpx.a */,
|
||||
080E96DDFE201D6D7F000001 /* Classes */,
|
||||
29B97315FDCFA39411CA2CEA /* Other Sources */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
|
|
@ -356,10 +390,10 @@
|
|||
29B97315FDCFA39411CA2CEA /* Other Sources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
34F9DFE314C418B600E1BC69 /* buddy_status.c */,
|
||||
34F9DFE414C418B600E1BC69 /* chatroom.c */,
|
||||
34F9DFE514C418B600E1BC69 /* helloworld.c */,
|
||||
34F9DFE614C418B600E1BC69 /* registration.c */,
|
||||
15FC167E17157478003FDB31 /* buddy_status.c */,
|
||||
15FC167F17157478003FDB31 /* chatroom.c */,
|
||||
15FC168017157478003FDB31 /* helloworld.c */,
|
||||
15FC168117157478003FDB31 /* registration.c */,
|
||||
32CA4F630368D1EE00C91783 /* hello_world_Prefix.pch */,
|
||||
);
|
||||
name = "Other Sources";
|
||||
|
|
@ -517,7 +551,7 @@
|
|||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
34F9DFE914C418B600E1BC69 /* helloworld.c in Sources */,
|
||||
15FC168A17157478003FDB31 /* helloworld.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -525,7 +559,7 @@
|
|||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
34F9E00114C41F5300E1BC69 /* registration.c in Sources */,
|
||||
15FC168F17157478003FDB31 /* registration.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -533,7 +567,7 @@
|
|||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
34F9E00014C41F4E00E1BC69 /* chatroom.c in Sources */,
|
||||
15FC168817157478003FDB31 /* chatroom.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -541,7 +575,7 @@
|
|||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
34F9DFFF14C41F4900E1BC69 /* buddy_status.c in Sources */,
|
||||
15FC168517157478003FDB31 /* buddy_status.c in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -21,6 +21,23 @@
|
|||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>linphone_icon_120</string>
|
||||
<string>linphone_icon_57.png</string>
|
||||
<string>linphone_icon_72.png</string>
|
||||
<string>linphone_icon_57@2x.png</string>
|
||||
<string>linphone_icon_72@2x.png</string>
|
||||
</array>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>CFBundleIcons~ipad</key>
|
||||
<dict>
|
||||
<key>CFBundlePrimaryIcon</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>linphone_icon_152</string>
|
||||
<string>linphone_icon_76</string>
|
||||
<string>linphone_icon_120</string>
|
||||
<string>linphone_icon_57.png</string>
|
||||
<string>linphone_icon_72.png</string>
|
||||
<string>linphone_icon_57@2x.png</string>
|
||||
|
|
@ -59,7 +76,7 @@
|
|||
</dict>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>2.0.4</string>
|
||||
<string>2.1</string>
|
||||
<key>NSMainNibFile</key>
|
||||
<string>LinphoneApp</string>
|
||||
<key>NSMainNibFile~ipad</key>
|
||||
|
|
@ -68,8 +85,9 @@
|
|||
<false/>
|
||||
<key>UIBackgroundModes</key>
|
||||
<array>
|
||||
<string>voip</string>
|
||||
<string>audio</string>
|
||||
<string>remote-notification</string>
|
||||
<string>voip</string>
|
||||
</array>
|
||||
<key>UILaunchImageFile~ipad</key>
|
||||
<string>linphone_splashscreen</string>
|
||||
|
|
@ -98,5 +116,7 @@
|
|||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
</array>
|
||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
|||
|
|
@ -3741,17 +3741,17 @@
|
|||
<dict>
|
||||
<key>backup</key>
|
||||
<dict>
|
||||
<key>5</key>
|
||||
<key>6</key>
|
||||
<dict>
|
||||
<key>class</key>
|
||||
<string>BLWrapperHandle</string>
|
||||
<key>name</key>
|
||||
<string>Classes/InCallViewController/5/InCallViewController.xib</string>
|
||||
<string>Classes/InCallViewController/6/InCallViewController.xib</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>change date</key>
|
||||
<date>2012-09-25T09:16:20Z</date>
|
||||
<date>2013-07-22T11:10:50Z</date>
|
||||
<key>changed values</key>
|
||||
<array/>
|
||||
<key>class</key>
|
||||
|
|
@ -3761,7 +3761,7 @@
|
|||
<key>flags</key>
|
||||
<integer>0</integer>
|
||||
<key>hash</key>
|
||||
<string>7f214a2ef7edff45568215c89af0ece4
|
||||
<string>8c081a9b0433d4932659d8da7064bcbe
|
||||
</string>
|
||||
<key>name</key>
|
||||
<string>InCallViewController.xib</string>
|
||||
|
|
@ -3802,11 +3802,11 @@
|
|||
<key>versions</key>
|
||||
<dict>
|
||||
<key>en</key>
|
||||
<string>5</string>
|
||||
<string>6</string>
|
||||
<key>fr</key>
|
||||
<string>5</string>
|
||||
<string>6</string>
|
||||
<key>ru</key>
|
||||
<string>5</string>
|
||||
<string>6</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<dict>
|
||||
|
|
@ -17902,7 +17902,7 @@ Raison: %2$s</string>
|
|||
</dict>
|
||||
</dict>
|
||||
<key>change date</key>
|
||||
<date>2012-11-06T09:45:46Z</date>
|
||||
<date>2013-06-28T12:59:59Z</date>
|
||||
<key>changed values</key>
|
||||
<array/>
|
||||
<key>class</key>
|
||||
|
|
@ -17912,7 +17912,7 @@ Raison: %2$s</string>
|
|||
<key>flags</key>
|
||||
<integer>0</integer>
|
||||
<key>hash</key>
|
||||
<string>d8b4f45bf8fca397a7f791bd55a61e1c
|
||||
<string>a03adeb7710ae8986354684bdcd69764
|
||||
</string>
|
||||
<key>name</key>
|
||||
<string>Audio.strings</string>
|
||||
|
|
@ -18279,6 +18279,56 @@ Raison: %2$s</string>
|
|||
<key>snapshots</key>
|
||||
<dict/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>change date</key>
|
||||
<date>2001-01-01T00:00:00Z</date>
|
||||
<key>changed values</key>
|
||||
<array/>
|
||||
<key>class</key>
|
||||
<string>BLStringKeyObject</string>
|
||||
<key>comment</key>
|
||||
<string>Adaptive rate control</string>
|
||||
<key>errors</key>
|
||||
<array/>
|
||||
<key>flags</key>
|
||||
<integer>0</integer>
|
||||
<key>key</key>
|
||||
<string>Adaptive rate control</string>
|
||||
<key>localizations</key>
|
||||
<dict>
|
||||
<key>en</key>
|
||||
<string>Adaptive rate control</string>
|
||||
<key>fr</key>
|
||||
<string>Contrôle de débit</string>
|
||||
</dict>
|
||||
<key>snapshots</key>
|
||||
<dict/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>change date</key>
|
||||
<date>2001-01-01T00:00:00Z</date>
|
||||
<key>changed values</key>
|
||||
<array/>
|
||||
<key>class</key>
|
||||
<string>BLStringKeyObject</string>
|
||||
<key>comment</key>
|
||||
<string>Codec bitrate limit</string>
|
||||
<key>errors</key>
|
||||
<array/>
|
||||
<key>flags</key>
|
||||
<integer>0</integer>
|
||||
<key>key</key>
|
||||
<string>Codec bitrate limit</string>
|
||||
<key>localizations</key>
|
||||
<dict>
|
||||
<key>en</key>
|
||||
<string>Codec bitrate limit</string>
|
||||
<key>fr</key>
|
||||
<string>Limite de débit du codec</string>
|
||||
</dict>
|
||||
<key>snapshots</key>
|
||||
<dict/>
|
||||
</dict>
|
||||
</array>
|
||||
<key>old objects</key>
|
||||
<array/>
|
||||
|
|
@ -18561,7 +18611,7 @@ Raison: %2$s</string>
|
|||
</dict>
|
||||
</dict>
|
||||
<key>change date</key>
|
||||
<date>2012-09-17T13:29:57Z</date>
|
||||
<date>2013-07-22T11:22:00Z</date>
|
||||
<key>changed values</key>
|
||||
<array/>
|
||||
<key>class</key>
|
||||
|
|
@ -18571,7 +18621,7 @@ Raison: %2$s</string>
|
|||
<key>flags</key>
|
||||
<integer>0</integer>
|
||||
<key>hash</key>
|
||||
<string>b7297749603f255583f59fcea3174690
|
||||
<string>9da839864b9c883ec66e9863c5d94ced
|
||||
</string>
|
||||
<key>name</key>
|
||||
<string>Video.strings</string>
|
||||
|
|
@ -18685,6 +18735,31 @@ Raison: %2$s</string>
|
|||
<key>snapshots</key>
|
||||
<dict/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>change date</key>
|
||||
<date>2001-01-01T00:00:00Z</date>
|
||||
<key>changed values</key>
|
||||
<array/>
|
||||
<key>class</key>
|
||||
<string>BLStringKeyObject</string>
|
||||
<key>comment</key>
|
||||
<string>Preferred video size</string>
|
||||
<key>errors</key>
|
||||
<array/>
|
||||
<key>flags</key>
|
||||
<integer>0</integer>
|
||||
<key>key</key>
|
||||
<string>Preferred video size</string>
|
||||
<key>localizations</key>
|
||||
<dict>
|
||||
<key>en</key>
|
||||
<string>Preferred video size</string>
|
||||
<key>fr</key>
|
||||
<string>Taille de vidéo préférée</string>
|
||||
</dict>
|
||||
<key>snapshots</key>
|
||||
<dict/>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>change date</key>
|
||||
<date>2001-01-01T00:00:00Z</date>
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">784</int>
|
||||
<string key="IBDocument.SystemVersion">11E53</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2840</string>
|
||||
<string key="IBDocument.AppKitVersion">1138.47</string>
|
||||
<string key="IBDocument.HIToolboxVersion">569.00</string>
|
||||
<string key="IBDocument.SystemVersion">12D78</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">3084</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.37</string>
|
||||
<string key="IBDocument.HIToolboxVersion">626.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="NS.object.0">1926</string>
|
||||
<string key="NS.object.0">2083</string>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.IntegratedClassDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
|
|
@ -52,6 +52,7 @@
|
|||
<int key="NSvFlags">301</int>
|
||||
<string key="NSFrame">{{-1000, -1000}, {2000, 2000}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1017044170"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor">
|
||||
|
|
@ -65,6 +66,7 @@
|
|||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="69034748"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:196</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor" id="95762599">
|
||||
|
|
@ -76,11 +78,12 @@
|
|||
<object class="IBUIView" id="673568144">
|
||||
<reference key="NSNextResponder" ref="1009068048"/>
|
||||
<int key="NSvFlags">283</int>
|
||||
<string key="NSFrame">{{220, 360}, {100, 100}}</string>
|
||||
<string key="NSFrame">{{216, 324}, {96, 128}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="972197710"/>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
<int key="IBUIContentMode">1</int>
|
||||
<int key="IBUIContentMode">2</int>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
<object class="IBUIActivityIndicatorView" id="69034748">
|
||||
|
|
@ -88,6 +91,7 @@
|
|||
<int key="NSvFlags">301</int>
|
||||
<string key="NSFrame">{{141, 212}, {37, 37}}</string>
|
||||
<reference key="NSSuperview" ref="1009068048"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="673568144"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:1030</string>
|
||||
<bool key="IBUIOpaque">NO</bool>
|
||||
|
|
@ -99,6 +103,7 @@
|
|||
</object>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview" ref="858247959"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="327164432"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:196</string>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
|
|
@ -109,6 +114,7 @@
|
|||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrame">{{0, -10}, {320, 480}}</string>
|
||||
<reference key="NSSuperview" ref="858247959"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1009068048"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:418</string>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
|
|
@ -139,6 +145,7 @@
|
|||
<int key="NSvFlags">-2147483356</int>
|
||||
<string key="NSFrame">{{20, 40}, {85, 33}}</string>
|
||||
<reference key="NSSuperview" ref="858247959"/>
|
||||
<reference key="NSWindow"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="IBUIOpaque">NO</bool>
|
||||
<object class="IBUIAccessibilityConfiguration" key="IBUIAccessibilityConfiguration">
|
||||
|
|
@ -174,6 +181,7 @@
|
|||
</object>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="662692377"/>
|
||||
<reference key="IBUIBackgroundColor" ref="95762599"/>
|
||||
<bool key="IBUIClearsContextBeforeDrawing">NO</bool>
|
||||
|
|
@ -440,7 +448,120 @@
|
|||
<nil key="sourceID"/>
|
||||
<int key="maxID">173</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallTableViewController</string>
|
||||
<string key="superclassName">UITableViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallTableViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">InCallViewController</string>
|
||||
<string key="superclassName">UIViewController</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>InCallTableViewController</string>
|
||||
<string>UITableView</string>
|
||||
<string>UIView</string>
|
||||
<string>UICamSwitch</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIView</string>
|
||||
<string>UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>callTableController</string>
|
||||
<string>callTableView</string>
|
||||
<string>testVideoView</string>
|
||||
<string>videoCameraSwitch</string>
|
||||
<string>videoGroup</string>
|
||||
<string>videoPreview</string>
|
||||
<string>videoView</string>
|
||||
<string>videoWaitingForFirstImage</string>
|
||||
</object>
|
||||
<object class="NSArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableController</string>
|
||||
<string key="candidateClassName">InCallTableViewController</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">callTableView</string>
|
||||
<string key="candidateClassName">UITableView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">testVideoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoCameraSwitch</string>
|
||||
<string key="candidateClassName">UICamSwitch</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoGroup</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoPreview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoView</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo">
|
||||
<string key="name">videoWaitingForFirstImage</string>
|
||||
<string key="candidateClassName">UIActivityIndicatorView</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/InCallViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UICamSwitch</string>
|
||||
<string key="superclassName">UIButton</string>
|
||||
<object class="NSMutableDictionary" key="outlets">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<string key="NS.object.0">UIView</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<string key="NS.key.0">preview</string>
|
||||
<object class="IBToOneOutletInfo" key="NS.object.0">
|
||||
<string key="name">preview</string>
|
||||
<string key="candidateClassName">UIView</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/UICamSwitch.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
|
|
@ -466,6 +587,6 @@
|
|||
<string>{151, 51}</string>
|
||||
</object>
|
||||
</object>
|
||||
<string key="IBCocoaTouchPluginVersion">1926</string>
|
||||
<string key="IBCocoaTouchPluginVersion">2083</string>
|
||||
</data>
|
||||
</archive>
|
||||
|
|
@ -41,4 +41,10 @@
|
|||
"Playback gain" = "Playback gain";
|
||||
|
||||
/* Microphone gain */
|
||||
"Microphone gain" = "Microphone gain";
|
||||
"Microphone gain" = "Microphone gain";
|
||||
|
||||
/* Adaptive rate control */
|
||||
"Adaptive rate control" = "Adaptive rate control";
|
||||
|
||||
/* Codec bitrate limit */
|
||||
"Codec bitrate limit" = "Codec bitrate limit";
|
||||
|
|
|
|||
|
|
@ -10,6 +10,9 @@
|
|||
/* Show preview */
|
||||
"Show preview" = "Show preview";
|
||||
|
||||
/* Preferred video size */
|
||||
"Preferred video size" = "Preferred video size";
|
||||
|
||||
/* Codecs */
|
||||
"Codecs" = "Codecs";
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,9 @@
|
|||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
15017E701773578400784ACB /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15017E6F1773578400784ACB /* libxml2.a */; };
|
||||
15017E71177357C500784ACB /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15017E6F1773578400784ACB /* libxml2.a */; };
|
||||
154227D117BA81CE005E686A /* libzrtpcppcore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154227D017BA81CE005E686A /* libzrtpcppcore.a */; };
|
||||
1599105316F746B2007BF52B /* route_bluetooth_off_default_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */; };
|
||||
1599105416F746B2007BF52B /* route_bluetooth_off_default_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */; };
|
||||
1599105516F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104416F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png */; };
|
||||
|
|
@ -75,11 +78,10 @@
|
|||
1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
|
||||
1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22405EED1600B4E400B92522 /* AssetsLibrary.framework */; };
|
||||
2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 226EF06B15FA256B005865C7 /* MobileCoreServices.framework */; };
|
||||
22058C71116E305000B08DDD /* linphone_icon_57.png in Resources */ = {isa = PBXBuildFile; fileRef = 22058C70116E305000B08DDD /* linphone_icon_57.png */; };
|
||||
220FAD3110765B400068D98F /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2810765B400068D98F /* libeXosip2.a */; };
|
||||
220FAD3210765B400068D98F /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; };
|
||||
220FAD3610765B400068D98F /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2D10765B400068D98F /* libosip2.a */; };
|
||||
220FAD3710765B400068D98F /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2E10765B400068D98F /* libosipparser2.a */; };
|
||||
220FAD3810765B400068D98F /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; };
|
||||
220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; };
|
||||
2214783D1386A2030020F8B8 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 2214783B1386A2030020F8B8 /* Localizable.strings */; };
|
||||
|
|
@ -101,6 +103,10 @@
|
|||
2234C8EE15EE744200E18E83 /* chat_message_inprogress.png in Resources */ = {isa = PBXBuildFile; fileRef = 2234C8ED15EE744200E18E83 /* chat_message_inprogress.png */; };
|
||||
2234C8EF15EE744200E18E83 /* chat_message_inprogress.png in Resources */ = {isa = PBXBuildFile; fileRef = 2234C8ED15EE744200E18E83 /* chat_message_inprogress.png */; };
|
||||
2237D4091084D7A9001383EE /* ring.wav in Resources */ = {isa = PBXBuildFile; fileRef = 2237D4081084D7A9001383EE /* ring.wav */; };
|
||||
223CA7E616D9255800EF1BEC /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E416D9255800EF1BEC /* libantlr3c.a */; };
|
||||
223CA7E716D9255800EF1BEC /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E516D9255800EF1BEC /* libbellesip.a */; };
|
||||
223CA7E816D9256E00EF1BEC /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E416D9255800EF1BEC /* libantlr3c.a */; };
|
||||
223CA7E916D9257200EF1BEC /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E516D9255800EF1BEC /* libbellesip.a */; };
|
||||
22405EEE1600B4E400B92522 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22405EED1600B4E400B92522 /* AssetsLibrary.framework */; };
|
||||
22405F001601C19200B92522 /* ImageViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22405EFE1601C19100B92522 /* ImageViewController.m */; };
|
||||
22405F011601C19200B92522 /* ImageViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22405EFE1601C19100B92522 /* ImageViewController.m */; };
|
||||
|
|
@ -127,6 +133,8 @@
|
|||
22AA8AFD13D7125600B30535 /* libx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFB13D7125500B30535 /* libx264.a */; };
|
||||
22AA8AFE13D7125600B30535 /* libmsx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFC13D7125500B30535 /* libmsx264.a */; };
|
||||
22AA8B0113D83F6300B30535 /* UICamSwitch.m in Sources */ = {isa = PBXBuildFile; fileRef = 22AA8B0013D83F6300B30535 /* UICamSwitch.m */; };
|
||||
22AF73C21754C0D100BE8398 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73C11754C0D000BE8398 /* libopus.a */; };
|
||||
22AF73C31754C0D800BE8398 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73C11754C0D000BE8398 /* libopus.a */; };
|
||||
22B5EFA310CE50BD00777D97 /* AddressBookUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */; };
|
||||
22B5F03510CE6B2F00777D97 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5F03410CE6B2F00777D97 /* AddressBook.framework */; };
|
||||
22BB1A69132FF16A005CD7AA /* UIEraseButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22BB1A68132FF16A005CD7AA /* UIEraseButton.m */; };
|
||||
|
|
@ -151,17 +159,12 @@
|
|||
22D8F15D147548E2008C97DB /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F213E147E3002BA2C0 /* OpenGLES.framework */; };
|
||||
22D8F15E147548E2008C97DB /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8813C73DC000210156 /* CoreMedia.framework */; };
|
||||
22D8F15F147548E2008C97DB /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8613C73D8A00210156 /* CoreVideo.framework */; };
|
||||
22D8F163147548E2008C97DB /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AD133B5EA20044EA25 /* libssl.a */; };
|
||||
22D8F164147548E2008C97DB /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AE133B5EA20044EA25 /* libcrypto.a */; };
|
||||
22D8F165147548E2008C97DB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
22D8F166147548E2008C97DB /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
22D8F167147548E2008C97DB /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; };
|
||||
22D8F168147548E2008C97DB /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22744019106F31BD006EC466 /* CoreAudio.framework */; };
|
||||
22D8F169147548E2008C97DB /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2274402E106F335E006EC466 /* AudioToolbox.framework */; };
|
||||
22D8F16A147548E2008C97DB /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2810765B400068D98F /* libeXosip2.a */; };
|
||||
22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; };
|
||||
22D8F16C147548E2008C97DB /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2D10765B400068D98F /* libosip2.a */; };
|
||||
22D8F16D147548E2008C97DB /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2E10765B400068D98F /* libosipparser2.a */; };
|
||||
22D8F16E147548E2008C97DB /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; };
|
||||
22D8F16F147548E2008C97DB /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; };
|
||||
22D8F170147548E2008C97DB /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 224567C1107B968500F10948 /* AVFoundation.framework */; };
|
||||
|
|
@ -181,8 +184,6 @@
|
|||
22E0A822111C44E100B04932 /* AboutViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81C111C44E100B04932 /* AboutViewController.m */; };
|
||||
22E0A823111C44E100B04932 /* ConsoleViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22E0A81E111C44E100B04932 /* ConsoleViewController.xib */; };
|
||||
22E0A824111C44E100B04932 /* ConsoleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81F111C44E100B04932 /* ConsoleViewController.m */; };
|
||||
22E5B0AF133B5EA20044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AD133B5EA20044EA25 /* libssl.a */; };
|
||||
22E5B0B0133B5EA20044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AE133B5EA20044EA25 /* libcrypto.a */; };
|
||||
22F2508E107141E100AC9B3F /* DialerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22F2508C107141E100AC9B3F /* DialerViewController.m */; };
|
||||
22F254811073D99800AC9B3F /* ringback.wav in Resources */ = {isa = PBXBuildFile; fileRef = 22F254801073D99800AC9B3F /* ringback.wav */; };
|
||||
288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; };
|
||||
|
|
@ -192,10 +193,10 @@
|
|||
340751E8150F38FD00B89C47 /* UIVideoButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 340751E6150F38FD00B89C47 /* UIVideoButton.m */; };
|
||||
34216F401547EBCD00EA9777 /* VideoZoomHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 34216F3F1547EBCD00EA9777 /* VideoZoomHandler.m */; };
|
||||
34216F411547EBCD00EA9777 /* VideoZoomHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 34216F3F1547EBCD00EA9777 /* VideoZoomHandler.m */; };
|
||||
344ABDE81484E723007420B6 /* libzrtpcpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 344ABDE71484E723007420B6 /* libzrtpcpp.a */; };
|
||||
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, ); }; };
|
||||
34A6ECEB14CF13CB00460C04 /* linphone_icon_72.png in Resources */ = {isa = PBXBuildFile; fileRef = 34A6ECEA14CF13CB00460C04 /* linphone_icon_72.png */; };
|
||||
57B0E360173C010400A476B8 /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57B0E35F173C010400A476B8 /* libpolarssl.a */; };
|
||||
57F005C415EE2CCF00914747 /* linphonerc in Resources */ = {isa = PBXBuildFile; fileRef = 57F005C315EE2CCF00914747 /* linphonerc */; };
|
||||
57F005C515EE2CCF00914747 /* linphonerc in Resources */ = {isa = PBXBuildFile; fileRef = 57F005C315EE2CCF00914747 /* linphonerc */; };
|
||||
57F005C815EE2D9200914747 /* linphonerc-factory in Resources */ = {isa = PBXBuildFile; fileRef = 57F005C615EE2D9200914747 /* linphonerc-factory */; };
|
||||
|
|
@ -1339,6 +1340,13 @@
|
|||
D3F9A9DB15AEEB940045320F /* history_notification.png in Resources */ = {isa = PBXBuildFile; fileRef = D3F9A9DA15AEEB940045320F /* history_notification.png */; };
|
||||
D3F9A9EE15AF277E0045320F /* UACellBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F9A9ED15AF277D0045320F /* UACellBackgroundView.m */; };
|
||||
D3F9A9EF15AF277E0045320F /* UACellBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F9A9ED15AF277D0045320F /* UACellBackgroundView.m */; };
|
||||
F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57B0E35F173C010400A476B8 /* libpolarssl.a */; };
|
||||
F066515517F9A02E0064280C /* UITransparentTVCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F066515417F9A02E0064280C /* UITransparentTVCell.m */; };
|
||||
F066515617F9A02E0064280C /* UITransparentTVCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F066515417F9A02E0064280C /* UITransparentTVCell.m */; };
|
||||
F0818E7E17FC51D8005A3330 /* linphone_icon_76.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */; };
|
||||
F0818E7F17FC51D8005A3330 /* linphone_icon_76.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */; };
|
||||
F0818E8017FC51D8005A3330 /* linphone_icon_152.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */; };
|
||||
F0818E8117FC51D8005A3330 /* linphone_icon_152.png in Resources */ = {isa = PBXBuildFile; fileRef = F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */; };
|
||||
F476004B147AAF2800FFF19B /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2211DB911475562600DEE054 /* liblinphone.a */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
|
|
@ -1409,6 +1417,8 @@
|
|||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
15017E6F1773578400784ACB /* libxml2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libxml2.a; path = "liblinphone-sdk/apple-darwin/lib/libxml2.a"; sourceTree = "<group>"; };
|
||||
154227D017BA81CE005E686A /* libzrtpcppcore.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libzrtpcppcore.a; path = "liblinphone-sdk/apple-darwin/lib/libzrtpcppcore.a"; sourceTree = "<group>"; };
|
||||
1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_default_landscape.png; path = Resources/route_bluetooth_off_default_landscape.png; sourceTree = "<group>"; };
|
||||
1599104416F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_disabled_landscape.png; path = Resources/route_bluetooth_off_disabled_landscape.png; sourceTree = "<group>"; };
|
||||
1599104516F746B2007BF52B /* route_bluetooth_off_over_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_over_landscape.png; path = Resources/route_bluetooth_off_over_landscape.png; sourceTree = "<group>"; };
|
||||
|
|
@ -1554,11 +1564,8 @@
|
|||
220FACE9107654FC0068D98F /* speex_resampler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speex_resampler.h; sourceTree = "<group>"; };
|
||||
220FACEA107654FC0068D98F /* speex_stereo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speex_stereo.h; sourceTree = "<group>"; };
|
||||
220FACEB107654FC0068D98F /* speex_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = speex_types.h; sourceTree = "<group>"; };
|
||||
220FAD2810765B400068D98F /* libeXosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libeXosip2.a; path = "liblinphone-sdk/apple-darwin/lib/libeXosip2.a"; sourceTree = "<group>"; };
|
||||
220FAD2910765B400068D98F /* libgsm.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libgsm.a; path = "liblinphone-sdk/apple-darwin/lib/libgsm.a"; sourceTree = "<group>"; };
|
||||
220FAD2C10765B400068D98F /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = "<group>"; };
|
||||
220FAD2D10765B400068D98F /* libosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosip2.a; path = "liblinphone-sdk/apple-darwin/lib/libosip2.a"; sourceTree = "<group>"; };
|
||||
220FAD2E10765B400068D98F /* libosipparser2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosipparser2.a; path = "liblinphone-sdk/apple-darwin/lib/libosipparser2.a"; sourceTree = "<group>"; };
|
||||
220FAD2F10765B400068D98F /* libspeex.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeex.a; path = "liblinphone-sdk/apple-darwin/lib/libspeex.a"; sourceTree = "<group>"; };
|
||||
220FAD3010765B400068D98F /* libspeexdsp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeexdsp.a; path = "liblinphone-sdk/apple-darwin/lib/libspeexdsp.a"; sourceTree = "<group>"; };
|
||||
2211DB911475562600DEE054 /* liblinphone.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = liblinphone.a; path = "liblinphone-sdk/apple-darwin/lib/liblinphone.a"; sourceTree = "<group>"; };
|
||||
|
|
@ -1582,6 +1589,8 @@
|
|||
2234C8E815EE2F7F00E18E83 /* chat_message_not_delivered.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = chat_message_not_delivered.png; path = Resources/chat_message_not_delivered.png; sourceTree = "<group>"; };
|
||||
2234C8ED15EE744200E18E83 /* chat_message_inprogress.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = chat_message_inprogress.png; path = Resources/chat_message_inprogress.png; sourceTree = "<group>"; };
|
||||
2237D4081084D7A9001383EE /* ring.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = ring.wav; path = Resources/ring.wav; sourceTree = "<group>"; };
|
||||
223CA7E416D9255800EF1BEC /* libantlr3c.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libantlr3c.a; path = "liblinphone-sdk/apple-darwin/lib/libantlr3c.a"; sourceTree = "<group>"; };
|
||||
223CA7E516D9255800EF1BEC /* libbellesip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbellesip.a; path = "liblinphone-sdk/apple-darwin/lib/libbellesip.a"; sourceTree = "<group>"; };
|
||||
22405EE916006F0700B92522 /* libmediastreamer_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_base.a; path = "liblinphone-sdk/apple-darwin/lib/libmediastreamer_base.a"; sourceTree = "<group>"; };
|
||||
22405EEA16006F0700B92522 /* libmediastreamer_voip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmediastreamer_voip.a; path = "liblinphone-sdk/apple-darwin/lib/libmediastreamer_voip.a"; sourceTree = "<group>"; };
|
||||
22405EED1600B4E400B92522 /* AssetsLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AssetsLibrary.framework; path = System/Library/Frameworks/AssetsLibrary.framework; sourceTree = SDKROOT; };
|
||||
|
|
@ -1614,6 +1623,7 @@
|
|||
22AA8AFC13D7125500B30535 /* libmsx264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmsx264.a; path = "liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmsx264.a"; sourceTree = "<group>"; };
|
||||
22AA8AFF13D83F6300B30535 /* UICamSwitch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UICamSwitch.h; sourceTree = "<group>"; };
|
||||
22AA8B0013D83F6300B30535 /* UICamSwitch.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UICamSwitch.m; sourceTree = "<group>"; };
|
||||
22AF73C11754C0D000BE8398 /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = "liblinphone-sdk/apple-darwin/lib/libopus.a"; sourceTree = "<group>"; };
|
||||
22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBookUI.framework; path = System/Library/Frameworks/AddressBookUI.framework; sourceTree = SDKROOT; };
|
||||
22B5F03410CE6B2F00777D97 /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; };
|
||||
22BB1A67132FF16A005CD7AA /* UIEraseButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIEraseButton.h; sourceTree = "<group>"; };
|
||||
|
|
@ -1699,11 +1709,104 @@
|
|||
22E0A81E111C44E100B04932 /* ConsoleViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ConsoleViewController.xib; sourceTree = "<group>"; };
|
||||
22E0A81F111C44E100B04932 /* ConsoleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConsoleViewController.m; sourceTree = "<group>"; };
|
||||
22E0A820111C44E100B04932 /* ConsoleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConsoleViewController.h; sourceTree = "<group>"; };
|
||||
22E5B0AD133B5EA20044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = "<group>"; };
|
||||
22E5B0AE133B5EA20044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = "<group>"; };
|
||||
22F2508B107141E100AC9B3F /* DialerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DialerViewController.h; sourceTree = "<group>"; };
|
||||
22F2508C107141E100AC9B3F /* DialerViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = DialerViewController.m; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
|
||||
22F254801073D99800AC9B3F /* ringback.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = ringback.wav; path = Resources/ringback.wav; sourceTree = "<group>"; };
|
||||
22F9B0891784711500E0212F /* .gitignore */ = {isa = PBXFileReference; lastKnownFileType = text; path = .gitignore; sourceTree = "<group>"; };
|
||||
22F9B08A1784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = "<group>"; };
|
||||
22F9B08B1784711500E0212F /* Makefile.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.in; sourceTree = "<group>"; };
|
||||
22F9B08C1784711500E0212F /* TunnelManager.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = TunnelManager.cc; sourceTree = "<group>"; };
|
||||
22F9B08D1784711500E0212F /* TunnelManager.hh */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = TunnelManager.hh; sourceTree = "<group>"; };
|
||||
22F9B08E1784711500E0212F /* address.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = address.c; sourceTree = "<group>"; };
|
||||
22F9B08F1784711500E0212F /* authentication.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = authentication.c; sourceTree = "<group>"; };
|
||||
22F9B0911784711500E0212F /* sal_address_impl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_address_impl.c; sourceTree = "<group>"; };
|
||||
22F9B0921784711500E0212F /* sal_impl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_impl.c; sourceTree = "<group>"; };
|
||||
22F9B0931784711500E0212F /* sal_impl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = sal_impl.h; sourceTree = "<group>"; };
|
||||
22F9B0941784711500E0212F /* sal_op_call.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_call.c; sourceTree = "<group>"; };
|
||||
22F9B0951784711500E0212F /* sal_op_call_transfer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_call_transfer.c; sourceTree = "<group>"; };
|
||||
22F9B0961784711500E0212F /* sal_op_events.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_events.c; sourceTree = "<group>"; };
|
||||
22F9B0971784711500E0212F /* sal_op_impl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_impl.c; sourceTree = "<group>"; };
|
||||
22F9B0981784711500E0212F /* sal_op_info.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_info.c; sourceTree = "<group>"; };
|
||||
22F9B0991784711500E0212F /* sal_op_message.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_message.c; sourceTree = "<group>"; };
|
||||
22F9B09A1784711500E0212F /* sal_op_presence.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_presence.c; sourceTree = "<group>"; };
|
||||
22F9B09B1784711500E0212F /* sal_op_publish.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_publish.c; sourceTree = "<group>"; };
|
||||
22F9B09C1784711500E0212F /* sal_op_registration.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_op_registration.c; sourceTree = "<group>"; };
|
||||
22F9B09D1784711500E0212F /* sal_sdp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_sdp.c; sourceTree = "<group>"; };
|
||||
22F9B09E1784711500E0212F /* callbacks.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = callbacks.c; sourceTree = "<group>"; };
|
||||
22F9B09F1784711500E0212F /* callbacks.c.orig */ = {isa = PBXFileReference; lastKnownFileType = text; path = callbacks.c.orig; sourceTree = "<group>"; };
|
||||
22F9B0A01784711500E0212F /* chat.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = chat.c; sourceTree = "<group>"; };
|
||||
22F9B0A11784711500E0212F /* conference.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = conference.c; sourceTree = "<group>"; };
|
||||
22F9B0A21784711500E0212F /* eXosip_transport_hook.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = eXosip_transport_hook.h; sourceTree = "<group>"; };
|
||||
22F9B0A31784711500E0212F /* ec-calibrator.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = "ec-calibrator.c"; sourceTree = "<group>"; };
|
||||
22F9B0A41784711500E0212F /* enum.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = enum.c; sourceTree = "<group>"; };
|
||||
22F9B0A51784711500E0212F /* enum.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = enum.h; sourceTree = "<group>"; };
|
||||
22F9B0A61784711500E0212F /* event.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = event.c; sourceTree = "<group>"; };
|
||||
22F9B0A71784711500E0212F /* event.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = event.h; sourceTree = "<group>"; };
|
||||
22F9B0A81784711500E0212F /* fonis.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = fonis.c; sourceTree = "<group>"; };
|
||||
22F9B0A91784711500E0212F /* friend.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = friend.c; sourceTree = "<group>"; };
|
||||
22F9B0AB1784711500E0212F /* Doxyfile.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = Doxyfile.in; sourceTree = "<group>"; };
|
||||
22F9B0AC1784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = "<group>"; };
|
||||
22F9B0AD1784711500E0212F /* Makefile.in */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.in; sourceTree = "<group>"; };
|
||||
22F9B0AE1784711500E0212F /* buddy_status.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = buddy_status.c; sourceTree = "<group>"; };
|
||||
22F9B0AF1784711500E0212F /* chatroom.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = chatroom.c; sourceTree = "<group>"; };
|
||||
22F9B0B01784711500E0212F /* doxygen.dox */ = {isa = PBXFileReference; lastKnownFileType = text; path = doxygen.dox; sourceTree = "<group>"; };
|
||||
22F9B0B11784711500E0212F /* helloworld.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = helloworld.c; sourceTree = "<group>"; };
|
||||
22F9B0B71784711500E0212F /* TutorialBuddyStatus.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialBuddyStatus.java; sourceTree = "<group>"; };
|
||||
22F9B0B81784711500E0212F /* TutorialChatRoom.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialChatRoom.java; sourceTree = "<group>"; };
|
||||
22F9B0B91784711500E0212F /* TutorialHelloWorld.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialHelloWorld.java; sourceTree = "<group>"; };
|
||||
22F9B0BA1784711500E0212F /* TutorialNotifier.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialNotifier.java; sourceTree = "<group>"; };
|
||||
22F9B0BB1784711500E0212F /* TutorialRegistration.java */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.java; path = TutorialRegistration.java; sourceTree = "<group>"; };
|
||||
22F9B0BC1784711500E0212F /* notify.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = notify.c; sourceTree = "<group>"; };
|
||||
22F9B0BD1784711500E0212F /* registration.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = registration.c; sourceTree = "<group>"; };
|
||||
22F9B0BE1784711500E0212F /* info.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = info.c; sourceTree = "<group>"; };
|
||||
22F9B0BF1784711500E0212F /* liblinphone_gitversion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = liblinphone_gitversion.h; sourceTree = "<group>"; };
|
||||
22F9B0C01784711500E0212F /* linphone_tunnel.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = linphone_tunnel.cc; sourceTree = "<group>"; };
|
||||
22F9B0C11784711500E0212F /* linphone_tunnel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphone_tunnel.h; sourceTree = "<group>"; };
|
||||
22F9B0C21784711500E0212F /* linphone_tunnel_config.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphone_tunnel_config.c; sourceTree = "<group>"; };
|
||||
22F9B0C31784711500E0212F /* linphone_tunnel_stubs.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphone_tunnel_stubs.c; sourceTree = "<group>"; };
|
||||
22F9B0C41784711500E0212F /* linphonecall.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphonecall.c; sourceTree = "<group>"; };
|
||||
22F9B0C51784711500E0212F /* linphonecore.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linphonecore.c; sourceTree = "<group>"; };
|
||||
22F9B0C61784711500E0212F /* linphonecore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonecore.h; sourceTree = "<group>"; };
|
||||
22F9B0C71784711500E0212F /* linphonecore_jni.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = linphonecore_jni.cc; sourceTree = "<group>"; };
|
||||
22F9B0C81784711500E0212F /* linphonecore_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonecore_utils.h; sourceTree = "<group>"; };
|
||||
22F9B0C91784711500E0212F /* linphonefriend.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonefriend.h; sourceTree = "<group>"; };
|
||||
22F9B0CA1784711500E0212F /* linphonepresence.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = linphonepresence.h; sourceTree = "<group>"; };
|
||||
22F9B0CB1784711500E0212F /* lpconfig.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lpconfig.c; sourceTree = "<group>"; };
|
||||
22F9B0CC1784711500E0212F /* lpconfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = lpconfig.h; sourceTree = "<group>"; };
|
||||
22F9B0CD1784711500E0212F /* lsd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lsd.c; sourceTree = "<group>"; };
|
||||
22F9B0CE1784711500E0212F /* message_storage.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = message_storage.c; sourceTree = "<group>"; };
|
||||
22F9B0CF1784711500E0212F /* misc.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = misc.c; sourceTree = "<group>"; };
|
||||
22F9B0D01784711500E0212F /* offeranswer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = offeranswer.c; sourceTree = "<group>"; };
|
||||
22F9B0D11784711500E0212F /* offeranswer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = offeranswer.h; sourceTree = "<group>"; };
|
||||
22F9B0D41784711500E0212F /* AUTHORS */ = {isa = PBXFileReference; lastKnownFileType = text; path = AUTHORS; sourceTree = "<group>"; };
|
||||
22F9B0D51784711500E0212F /* COPYING */ = {isa = PBXFileReference; lastKnownFileType = text; path = COPYING; sourceTree = "<group>"; };
|
||||
22F9B0D61784711500E0212F /* ChangeLog */ = {isa = PBXFileReference; lastKnownFileType = text; path = ChangeLog; sourceTree = "<group>"; };
|
||||
22F9B0D71784711500E0212F /* INSTALL */ = {isa = PBXFileReference; lastKnownFileType = text; path = INSTALL; sourceTree = "<group>"; };
|
||||
22F9B0D81784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = "<group>"; };
|
||||
22F9B0D91784711500E0212F /* NEWS */ = {isa = PBXFileReference; lastKnownFileType = text; path = NEWS; sourceTree = "<group>"; };
|
||||
22F9B0DA1784711500E0212F /* README */ = {isa = PBXFileReference; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
|
||||
22F9B0DB1784711500E0212F /* autogen.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = autogen.sh; sourceTree = "<group>"; };
|
||||
22F9B0DC1784711500E0212F /* configure.ac */ = {isa = PBXFileReference; lastKnownFileType = text; path = configure.ac; sourceTree = "<group>"; };
|
||||
22F9B0DE1784711500E0212F /* Makefile.am */ = {isa = PBXFileReference; lastKnownFileType = text; path = Makefile.am; sourceTree = "<group>"; };
|
||||
22F9B0DF1784711500E0212F /* lookup.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = lookup.c; sourceTree = "<group>"; };
|
||||
22F9B0E01784711500E0212F /* presence.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = presence.c; sourceTree = "<group>"; };
|
||||
22F9B0E11784711500E0212F /* private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = private.h; sourceTree = "<group>"; };
|
||||
22F9B0E21784711500E0212F /* proxy.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = proxy.c; sourceTree = "<group>"; };
|
||||
22F9B0E31784711500E0212F /* sal.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal.c; sourceTree = "<group>"; };
|
||||
22F9B0E41784711500E0212F /* sal.h.orig */ = {isa = PBXFileReference; lastKnownFileType = text; path = sal.h.orig; sourceTree = "<group>"; };
|
||||
22F9B0E51784711500E0212F /* sal_eXosip2.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_eXosip2.c; sourceTree = "<group>"; };
|
||||
22F9B0E61784711500E0212F /* sal_eXosip2.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = sal_eXosip2.h; sourceTree = "<group>"; };
|
||||
22F9B0E71784711500E0212F /* sal_eXosip2_presence.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_eXosip2_presence.c; sourceTree = "<group>"; };
|
||||
22F9B0E81784711500E0212F /* sal_eXosip2_sdp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sal_eXosip2_sdp.c; sourceTree = "<group>"; };
|
||||
22F9B0E91784711500E0212F /* siplogin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = siplogin.c; sourceTree = "<group>"; };
|
||||
22F9B0EA1784711500E0212F /* sipsetup.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sipsetup.c; sourceTree = "<group>"; };
|
||||
22F9B0EB1784711500E0212F /* sipsetup.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = sipsetup.h; sourceTree = "<group>"; };
|
||||
22F9B0EC1784711500E0212F /* sipwizard.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = sipwizard.c; sourceTree = "<group>"; };
|
||||
22F9B0ED1784711500E0212F /* test_ecc.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = test_ecc.c; sourceTree = "<group>"; };
|
||||
22F9B0EE1784711500E0212F /* test_lsd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = test_lsd.c; sourceTree = "<group>"; };
|
||||
22F9B0EF1784711500E0212F /* test_numbers.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = test_numbers.c; sourceTree = "<group>"; };
|
||||
22F9B0F01784711500E0212F /* upnp.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = upnp.c; sourceTree = "<group>"; };
|
||||
22F9B0F11784711500E0212F /* upnp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = upnp.h; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
32CA4F630368D1EE00C91783 /* linphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = linphone_Prefix.pch; sourceTree = "<group>"; };
|
||||
|
|
@ -1712,10 +1815,10 @@
|
|||
340751E6150F38FD00B89C47 /* UIVideoButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIVideoButton.m; sourceTree = "<group>"; };
|
||||
34216F3E1547EBCD00EA9777 /* VideoZoomHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VideoZoomHandler.h; path = LinphoneUI/VideoZoomHandler.h; sourceTree = "<group>"; };
|
||||
34216F3F1547EBCD00EA9777 /* VideoZoomHandler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = VideoZoomHandler.m; path = LinphoneUI/VideoZoomHandler.m; sourceTree = "<group>"; };
|
||||
344ABDE71484E723007420B6 /* libzrtpcpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libzrtpcpp.a; path = "liblinphone-sdk/apple-darwin/lib/libzrtpcpp.a"; sourceTree = "<group>"; };
|
||||
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; };
|
||||
34A6ECEA14CF13CB00460C04 /* linphone_icon_72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_72.png; path = Resources/linphone_icon_72.png; sourceTree = "<group>"; };
|
||||
57B0E35F173C010400A476B8 /* libpolarssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpolarssl.a; path = "liblinphone-sdk/apple-darwin/lib/libpolarssl.a"; sourceTree = "<group>"; };
|
||||
57F005C315EE2CCF00914747 /* linphonerc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = linphonerc; path = Resources/linphonerc; sourceTree = "<group>"; };
|
||||
57F005C615EE2D9200914747 /* linphonerc-factory */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = "linphonerc-factory"; path = "Resources/linphonerc-factory"; sourceTree = "<group>"; };
|
||||
57F005C715EE2D9200914747 /* linphonerc-factory~ipad */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = "linphonerc-factory~ipad"; path = "Resources/linphonerc-factory~ipad"; sourceTree = "<group>"; };
|
||||
|
|
@ -2388,6 +2491,11 @@
|
|||
D3F9A9DA15AEEB940045320F /* history_notification.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = history_notification.png; path = Resources/history_notification.png; sourceTree = "<group>"; };
|
||||
D3F9A9EC15AF277D0045320F /* UACellBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UACellBackgroundView.h; path = Utils/UACellBackgroundView/UACellBackgroundView.h; sourceTree = "<group>"; };
|
||||
D3F9A9ED15AF277D0045320F /* UACellBackgroundView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = UACellBackgroundView.m; path = Utils/UACellBackgroundView/UACellBackgroundView.m; sourceTree = "<group>"; };
|
||||
F066515317F9A02E0064280C /* UITransparentTVCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UITransparentTVCell.h; sourceTree = "<group>"; };
|
||||
F066515417F9A02E0064280C /* UITransparentTVCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UITransparentTVCell.m; sourceTree = "<group>"; };
|
||||
F0818E7B17FC5160005A3330 /* linphone_icon_120.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_120.png; path = Resources/linphone_icon_120.png; sourceTree = "<group>"; };
|
||||
F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_76.png; path = Resources/linphone_icon_76.png; sourceTree = "<group>"; };
|
||||
F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_icon_152.png; path = Resources/linphone_icon_152.png; sourceTree = "<group>"; };
|
||||
FD61C851169EAC63001AA2D6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/ChatRoomViewController.xib; sourceTree = "<group>"; };
|
||||
FD61C853169FBBB6001AA2D6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/ChatViewController.xib; sourceTree = "<group>"; };
|
||||
FD61C855169FBD1C001AA2D6 /* ru */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ru; path = ru.lproj/ContactDetailsLabelViewController.xib; sourceTree = "<group>"; };
|
||||
|
|
@ -2421,6 +2529,12 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
154227D117BA81CE005E686A /* libzrtpcppcore.a in Frameworks */,
|
||||
15017E701773578400784ACB /* libxml2.a in Frameworks */,
|
||||
22AF73C21754C0D100BE8398 /* libopus.a in Frameworks */,
|
||||
57B0E360173C010400A476B8 /* libpolarssl.a in Frameworks */,
|
||||
223CA7E616D9255800EF1BEC /* libantlr3c.a in Frameworks */,
|
||||
223CA7E716D9255800EF1BEC /* libbellesip.a in Frameworks */,
|
||||
D30562151671DC4900C97967 /* libNinePatch.a in Frameworks */,
|
||||
D30562161671DC4900C97967 /* libXMLRPC.a in Frameworks */,
|
||||
22B5F03510CE6B2F00777D97 /* AddressBook.framework in Frameworks */,
|
||||
|
|
@ -2447,9 +2561,7 @@
|
|||
22D1B68112A3E0BE001AE361 /* libresolv.dylib in Frameworks */,
|
||||
22276E8313C73D3100210156 /* libavcodec.a in Frameworks */,
|
||||
22276E8413C73D3100210156 /* libavutil.a in Frameworks */,
|
||||
22E5B0B0133B5EA20044EA25 /* libcrypto.a in Frameworks */,
|
||||
226CDADF14E2D0B800513B67 /* libbcg729.a in Frameworks */,
|
||||
220FAD3110765B400068D98F /* libeXosip2.a in Frameworks */,
|
||||
220FAD3210765B400068D98F /* libgsm.a in Frameworks */,
|
||||
223148E41178A08200637D6A /* libilbc.a in Frameworks */,
|
||||
F476004B147AAF2800FFF19B /* liblinphone.a in Frameworks */,
|
||||
|
|
@ -2460,20 +2572,16 @@
|
|||
226183B0147259670037138E /* libmssilk.a in Frameworks */,
|
||||
22AA8AFE13D7125600B30535 /* libmsx264.a in Frameworks */,
|
||||
22A10F3B11F8960300373793 /* libortp.a in Frameworks */,
|
||||
220FAD3610765B400068D98F /* libosip2.a in Frameworks */,
|
||||
220FAD3710765B400068D98F /* libosipparser2.a in Frameworks */,
|
||||
226F2ED71344B0EF00F6EF27 /* libopencore-amrnb.a in Frameworks */,
|
||||
226F2ED61344B0EF00F6EF27 /* libopencore-amrwb.a in Frameworks */,
|
||||
226CDAE014E2D0B800513B67 /* libmsbcg729.a in Frameworks */,
|
||||
220FAD3810765B400068D98F /* libspeex.a in Frameworks */,
|
||||
220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */,
|
||||
226183AE1472527D0037138E /* libsrtp.a in Frameworks */,
|
||||
22E5B0AF133B5EA20044EA25 /* libssl.a in Frameworks */,
|
||||
226183AD1472527D0037138E /* libSKP_SILK_SDK.a in Frameworks */,
|
||||
22276E8513C73D3100210156 /* libswscale.a in Frameworks */,
|
||||
7066FC0C13E830E400EFC6DC /* libvpx.a in Frameworks */,
|
||||
22AA8AFD13D7125600B30535 /* libx264.a in Frameworks */,
|
||||
344ABDE81484E723007420B6 /* libzrtpcpp.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -2481,6 +2589,10 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */,
|
||||
15017E71177357C500784ACB /* libxml2.a in Frameworks */,
|
||||
2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */,
|
||||
2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */,
|
||||
D30562131671DC3E00C97967 /* libNinePatch.a in Frameworks */,
|
||||
D30562141671DC3E00C97967 /* libXMLRPC.a in Frameworks */,
|
||||
22D8F170147548E2008C97DB /* AVFoundation.framework in Frameworks */,
|
||||
|
|
@ -2501,8 +2613,6 @@
|
|||
22D8F166147548E2008C97DB /* UIKit.framework in Frameworks */,
|
||||
22D8F178147548E2008C97DB /* libresolv.dylib in Frameworks */,
|
||||
D34BD61515C13B7B0070C209 /* libsqlite3.dylib in Frameworks */,
|
||||
22D8F164147548E2008C97DB /* libcrypto.a in Frameworks */,
|
||||
22D8F16A147548E2008C97DB /* libeXosip2.a in Frameworks */,
|
||||
22D8F174147548E2008C97DB /* libilbc.a in Frameworks */,
|
||||
22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */,
|
||||
D34BD61815C13D0B0070C209 /* liblinphone.a in Frameworks */,
|
||||
|
|
@ -2513,14 +2623,14 @@
|
|||
22D8F179147548E2008C97DB /* libopencore-amrwb.a in Frameworks */,
|
||||
22D8F17A147548E2008C97DB /* libopencore-amrnb.a in Frameworks */,
|
||||
22D8F177147548E2008C97DB /* libortp.a in Frameworks */,
|
||||
22D8F16C147548E2008C97DB /* libosip2.a in Frameworks */,
|
||||
22D8F16D147548E2008C97DB /* libosipparser2.a in Frameworks */,
|
||||
22D8F17E147548E2008C97DB /* libSKP_SILK_SDK.a in Frameworks */,
|
||||
22D8F17F147548E2008C97DB /* libsrtp.a in Frameworks */,
|
||||
22D8F16E147548E2008C97DB /* libspeex.a in Frameworks */,
|
||||
22D8F16F147548E2008C97DB /* libspeexdsp.a in Frameworks */,
|
||||
22D8F163147548E2008C97DB /* libssl.a in Frameworks */,
|
||||
22D8F15B147548E2008C97DB /* libvpx.a in Frameworks */,
|
||||
223CA7E816D9256E00EF1BEC /* libantlr3c.a in Frameworks */,
|
||||
223CA7E916D9257200EF1BEC /* libbellesip.a in Frameworks */,
|
||||
22AF73C31754C0D800BE8398 /* libopus.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -2896,6 +3006,8 @@
|
|||
D32460E5159D9AAD00BA7F3A /* UITransparentView.m */,
|
||||
340751E5150F38FC00B89C47 /* UIVideoButton.h */,
|
||||
340751E6150F38FD00B89C47 /* UIVideoButton.m */,
|
||||
F066515317F9A02E0064280C /* UITransparentTVCell.h */,
|
||||
F066515417F9A02E0064280C /* UITransparentTVCell.m */,
|
||||
);
|
||||
path = LinphoneUI;
|
||||
sourceTree = "<group>";
|
||||
|
|
@ -2978,15 +3090,210 @@
|
|||
path = openssl;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B087178470F400E0212F /* liblinphone */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0881784711500E0212F /* coreapi */,
|
||||
);
|
||||
name = liblinphone;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0881784711500E0212F /* coreapi */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0891784711500E0212F /* .gitignore */,
|
||||
22F9B08A1784711500E0212F /* Makefile.am */,
|
||||
22F9B08B1784711500E0212F /* Makefile.in */,
|
||||
22F9B08C1784711500E0212F /* TunnelManager.cc */,
|
||||
22F9B08D1784711500E0212F /* TunnelManager.hh */,
|
||||
22F9B08E1784711500E0212F /* address.c */,
|
||||
22F9B08F1784711500E0212F /* authentication.c */,
|
||||
22F9B0901784711500E0212F /* bellesip_sal */,
|
||||
22F9B09E1784711500E0212F /* callbacks.c */,
|
||||
22F9B09F1784711500E0212F /* callbacks.c.orig */,
|
||||
22F9B0A01784711500E0212F /* chat.c */,
|
||||
22F9B0A11784711500E0212F /* conference.c */,
|
||||
22F9B0A21784711500E0212F /* eXosip_transport_hook.h */,
|
||||
22F9B0A31784711500E0212F /* ec-calibrator.c */,
|
||||
22F9B0A41784711500E0212F /* enum.c */,
|
||||
22F9B0A51784711500E0212F /* enum.h */,
|
||||
22F9B0A61784711500E0212F /* event.c */,
|
||||
22F9B0A71784711500E0212F /* event.h */,
|
||||
22F9B0A81784711500E0212F /* fonis.c */,
|
||||
22F9B0A91784711500E0212F /* friend.c */,
|
||||
22F9B0AA1784711500E0212F /* help */,
|
||||
22F9B0BE1784711500E0212F /* info.c */,
|
||||
22F9B0BF1784711500E0212F /* liblinphone_gitversion.h */,
|
||||
22F9B0C01784711500E0212F /* linphone_tunnel.cc */,
|
||||
22F9B0C11784711500E0212F /* linphone_tunnel.h */,
|
||||
22F9B0C21784711500E0212F /* linphone_tunnel_config.c */,
|
||||
22F9B0C31784711500E0212F /* linphone_tunnel_stubs.c */,
|
||||
22F9B0C41784711500E0212F /* linphonecall.c */,
|
||||
22F9B0C51784711500E0212F /* linphonecore.c */,
|
||||
22F9B0C61784711500E0212F /* linphonecore.h */,
|
||||
22F9B0C71784711500E0212F /* linphonecore_jni.cc */,
|
||||
22F9B0C81784711500E0212F /* linphonecore_utils.h */,
|
||||
22F9B0C91784711500E0212F /* linphonefriend.h */,
|
||||
22F9B0CA1784711500E0212F /* linphonepresence.h */,
|
||||
22F9B0CB1784711500E0212F /* lpconfig.c */,
|
||||
22F9B0CC1784711500E0212F /* lpconfig.h */,
|
||||
22F9B0CD1784711500E0212F /* lsd.c */,
|
||||
22F9B0CE1784711500E0212F /* message_storage.c */,
|
||||
22F9B0CF1784711500E0212F /* misc.c */,
|
||||
22F9B0D01784711500E0212F /* offeranswer.c */,
|
||||
22F9B0D11784711500E0212F /* offeranswer.h */,
|
||||
22F9B0D21784711500E0212F /* plugins */,
|
||||
22F9B0E01784711500E0212F /* presence.c */,
|
||||
22F9B0E11784711500E0212F /* private.h */,
|
||||
22F9B0E21784711500E0212F /* proxy.c */,
|
||||
22F9B0E31784711500E0212F /* sal.c */,
|
||||
22F9B0E41784711500E0212F /* sal.h.orig */,
|
||||
22F9B0E51784711500E0212F /* sal_eXosip2.c */,
|
||||
22F9B0E61784711500E0212F /* sal_eXosip2.h */,
|
||||
22F9B0E71784711500E0212F /* sal_eXosip2_presence.c */,
|
||||
22F9B0E81784711500E0212F /* sal_eXosip2_sdp.c */,
|
||||
22F9B0E91784711500E0212F /* siplogin.c */,
|
||||
22F9B0EA1784711500E0212F /* sipsetup.c */,
|
||||
22F9B0EB1784711500E0212F /* sipsetup.h */,
|
||||
22F9B0EC1784711500E0212F /* sipwizard.c */,
|
||||
22F9B0ED1784711500E0212F /* test_ecc.c */,
|
||||
22F9B0EE1784711500E0212F /* test_lsd.c */,
|
||||
22F9B0EF1784711500E0212F /* test_numbers.c */,
|
||||
22F9B0F01784711500E0212F /* upnp.c */,
|
||||
22F9B0F11784711500E0212F /* upnp.h */,
|
||||
);
|
||||
name = coreapi;
|
||||
path = submodules/linphone/coreapi;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0901784711500E0212F /* bellesip_sal */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0911784711500E0212F /* sal_address_impl.c */,
|
||||
22F9B0921784711500E0212F /* sal_impl.c */,
|
||||
22F9B0931784711500E0212F /* sal_impl.h */,
|
||||
22F9B0941784711500E0212F /* sal_op_call.c */,
|
||||
22F9B0951784711500E0212F /* sal_op_call_transfer.c */,
|
||||
22F9B0961784711500E0212F /* sal_op_events.c */,
|
||||
22F9B0971784711500E0212F /* sal_op_impl.c */,
|
||||
22F9B0981784711500E0212F /* sal_op_info.c */,
|
||||
22F9B0991784711500E0212F /* sal_op_message.c */,
|
||||
22F9B09A1784711500E0212F /* sal_op_presence.c */,
|
||||
22F9B09B1784711500E0212F /* sal_op_publish.c */,
|
||||
22F9B09C1784711500E0212F /* sal_op_registration.c */,
|
||||
22F9B09D1784711500E0212F /* sal_sdp.c */,
|
||||
);
|
||||
path = bellesip_sal;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0AA1784711500E0212F /* help */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0AB1784711500E0212F /* Doxyfile.in */,
|
||||
22F9B0AC1784711500E0212F /* Makefile.am */,
|
||||
22F9B0AD1784711500E0212F /* Makefile.in */,
|
||||
22F9B0AE1784711500E0212F /* buddy_status.c */,
|
||||
22F9B0AF1784711500E0212F /* chatroom.c */,
|
||||
22F9B0B01784711500E0212F /* doxygen.dox */,
|
||||
22F9B0B11784711500E0212F /* helloworld.c */,
|
||||
22F9B0B21784711500E0212F /* java */,
|
||||
22F9B0BC1784711500E0212F /* notify.c */,
|
||||
22F9B0BD1784711500E0212F /* registration.c */,
|
||||
);
|
||||
path = help;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0B21784711500E0212F /* java */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0B31784711500E0212F /* org */,
|
||||
);
|
||||
path = java;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0B31784711500E0212F /* org */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0B41784711500E0212F /* linphone */,
|
||||
);
|
||||
path = org;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0B41784711500E0212F /* linphone */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0B51784711500E0212F /* core */,
|
||||
);
|
||||
path = linphone;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0B51784711500E0212F /* core */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0B61784711500E0212F /* tutorials */,
|
||||
);
|
||||
path = core;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0B61784711500E0212F /* tutorials */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0B71784711500E0212F /* TutorialBuddyStatus.java */,
|
||||
22F9B0B81784711500E0212F /* TutorialChatRoom.java */,
|
||||
22F9B0B91784711500E0212F /* TutorialHelloWorld.java */,
|
||||
22F9B0BA1784711500E0212F /* TutorialNotifier.java */,
|
||||
22F9B0BB1784711500E0212F /* TutorialRegistration.java */,
|
||||
);
|
||||
path = tutorials;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0D21784711500E0212F /* plugins */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0D31784711500E0212F /* buddylookup */,
|
||||
);
|
||||
path = plugins;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0D31784711500E0212F /* buddylookup */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0D41784711500E0212F /* AUTHORS */,
|
||||
22F9B0D51784711500E0212F /* COPYING */,
|
||||
22F9B0D61784711500E0212F /* ChangeLog */,
|
||||
22F9B0D71784711500E0212F /* INSTALL */,
|
||||
22F9B0D81784711500E0212F /* Makefile.am */,
|
||||
22F9B0D91784711500E0212F /* NEWS */,
|
||||
22F9B0DA1784711500E0212F /* README */,
|
||||
22F9B0DB1784711500E0212F /* autogen.sh */,
|
||||
22F9B0DC1784711500E0212F /* configure.ac */,
|
||||
22F9B0DD1784711500E0212F /* src */,
|
||||
);
|
||||
path = buddylookup;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
22F9B0DD1784711500E0212F /* src */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
22F9B0DE1784711500E0212F /* Makefile.am */,
|
||||
22F9B0DF1784711500E0212F /* lookup.c */,
|
||||
);
|
||||
path = src;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
154227D017BA81CE005E686A /* libzrtpcppcore.a */,
|
||||
15017E6F1773578400784ACB /* libxml2.a */,
|
||||
57B0E35F173C010400A476B8 /* libpolarssl.a */,
|
||||
223CA7E416D9255800EF1BEC /* libantlr3c.a */,
|
||||
223CA7E516D9255800EF1BEC /* libbellesip.a */,
|
||||
22AF73C11754C0D000BE8398 /* libopus.a */,
|
||||
2258633C11410BAC00C5A737 /* README */,
|
||||
22276E8013C73D3100210156 /* libavcodec.a */,
|
||||
22276E8113C73D3100210156 /* libavutil.a */,
|
||||
226CDADD14E2D0B800513B67 /* libbcg729.a */,
|
||||
22E5B0AE133B5EA20044EA25 /* libcrypto.a */,
|
||||
220FAD2810765B400068D98F /* libeXosip2.a */,
|
||||
220FAD2910765B400068D98F /* libgsm.a */,
|
||||
223148E31178A08200637D6A /* libilbc.a */,
|
||||
2211DB911475562600DEE054 /* liblinphone.a */,
|
||||
|
|
@ -3000,21 +3307,18 @@
|
|||
226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */,
|
||||
226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */,
|
||||
220FAD2C10765B400068D98F /* libortp.a */,
|
||||
220FAD2D10765B400068D98F /* libosip2.a */,
|
||||
220FAD2E10765B400068D98F /* libosipparser2.a */,
|
||||
226183AA1472527D0037138E /* libSKP_SILK_SDK.a */,
|
||||
220FAD2F10765B400068D98F /* libspeex.a */,
|
||||
220FAD3010765B400068D98F /* libspeexdsp.a */,
|
||||
226183AB1472527D0037138E /* libsrtp.a */,
|
||||
22E5B0AD133B5EA20044EA25 /* libssl.a */,
|
||||
22276E8213C73D3100210156 /* libswscale.a */,
|
||||
7066FC0B13E830E400EFC6DC /* libvpx.a */,
|
||||
22AA8AFB13D7125500B30535 /* libx264.a */,
|
||||
344ABDE71484E723007420B6 /* libzrtpcpp.a */,
|
||||
344ABDEF14850AE9007420B6 /* libc++.1.dylib */,
|
||||
22D1B68012A3E0BE001AE361 /* libresolv.dylib */,
|
||||
D32B6E2E15A5C0AC0033019F /* libsqlite3.dylib */,
|
||||
344ABDF014850AE9007420B6 /* libstdc++.6.dylib */,
|
||||
22F9B087178470F400E0212F /* liblinphone */,
|
||||
22B5F03410CE6B2F00777D97 /* AddressBook.framework */,
|
||||
22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */,
|
||||
22405EED1600B4E400B92522 /* AssetsLibrary.framework */,
|
||||
|
|
@ -3285,10 +3589,13 @@
|
|||
D37E3ECF1619DCC50087659A /* licenses.html */,
|
||||
225CB2F911ABB76400628906 /* linphone-banner.png */,
|
||||
8D1107310486CEB800E47090 /* linphone-Info.plist */,
|
||||
F0818E7B17FC5160005A3330 /* linphone_icon_120.png */,
|
||||
F0818E7D17FC51D8005A3330 /* linphone_icon_152.png */,
|
||||
22058C70116E305000B08DDD /* linphone_icon_57.png */,
|
||||
D33CF34815D3A03400CD4B85 /* linphone_icon_57@2x.png */,
|
||||
34A6ECEA14CF13CB00460C04 /* linphone_icon_72.png */,
|
||||
D33CF34915D3A03400CD4B85 /* linphone_icon_72@2x.png */,
|
||||
F0818E7C17FC51D8005A3330 /* linphone_icon_76.png */,
|
||||
D3012CC31610467D007CD926 /* linphone_logo.png */,
|
||||
D38F46F1160C5CC8002D4C4A /* linphone_splashscreen-568h@2x.png */,
|
||||
D3103920162C3C5100C00C18 /* linphone_splashscreen-Landscape.png */,
|
||||
|
|
@ -3800,7 +4107,7 @@
|
|||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0450;
|
||||
LastUpgradeCheck = 0460;
|
||||
};
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "linphone" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
|
|
@ -4025,6 +4332,7 @@
|
|||
D377BBFA15A19DA6002B696B /* video_on_disabled.png in Resources */,
|
||||
D37B96B715A1A6F20005CCD2 /* call_state_delete_default.png in Resources */,
|
||||
D37B96B915A1A6F20005CCD2 /* call_state_delete_over.png in Resources */,
|
||||
F0818E8017FC51D8005A3330 /* linphone_icon_152.png in Resources */,
|
||||
D3C2814B15A2D38D0098AA42 /* dialer_selected.png in Resources */,
|
||||
D3C2815215A2D64A0098AA42 /* numpad_star_over.png in Resources */,
|
||||
D365AA7B15A2DE7500CAFE3F /* speaker_off_disabled.png in Resources */,
|
||||
|
|
@ -4167,6 +4475,7 @@
|
|||
D3A74EDC15C69392001500B9 /* chat_selected~ipad.png in Resources */,
|
||||
D3A74EDE15C69392001500B9 /* conference_default~ipad.png in Resources */,
|
||||
D3A74EE015C69392001500B9 /* conference_over~ipad.png in Resources */,
|
||||
F0818E7E17FC51D8005A3330 /* linphone_icon_76.png in Resources */,
|
||||
D3A74EE215C69392001500B9 /* contacts_default_landscape~ipad.png in Resources */,
|
||||
D3A74EE415C69392001500B9 /* contacts_default~ipad.png in Resources */,
|
||||
D3A74EE615C69392001500B9 /* contacts_over_landscape~ipad.png in Resources */,
|
||||
|
|
@ -4561,6 +4870,7 @@
|
|||
D34BD6AB15C13DB70070C209 /* list_details_over.png in Resources */,
|
||||
D34BD6AC15C13DB70070C209 /* micro_off_default.png in Resources */,
|
||||
D34BD6AD15C13DB70070C209 /* micro_off_default_landscape.png in Resources */,
|
||||
F0818E8117FC51D8005A3330 /* linphone_icon_152.png in Resources */,
|
||||
D34BD6AE15C13DB70070C209 /* micro_off_disabled.png in Resources */,
|
||||
D34BD6AF15C13DB70070C209 /* micro_off_disabled_landscape.png in Resources */,
|
||||
D34BD6B015C13DB70070C209 /* micro_off_over.png in Resources */,
|
||||
|
|
@ -4703,6 +5013,7 @@
|
|||
D3A74EDD15C69392001500B9 /* chat_selected~ipad.png in Resources */,
|
||||
D3A74EDF15C69392001500B9 /* conference_default~ipad.png in Resources */,
|
||||
D3A74EE115C69392001500B9 /* conference_over~ipad.png in Resources */,
|
||||
F0818E7F17FC51D8005A3330 /* linphone_icon_76.png in Resources */,
|
||||
D3A74EE315C69392001500B9 /* contacts_default_landscape~ipad.png in Resources */,
|
||||
D3A74EE515C69392001500B9 /* contacts_default~ipad.png in Resources */,
|
||||
D3A74EE715C69392001500B9 /* contacts_over_landscape~ipad.png in Resources */,
|
||||
|
|
@ -5019,6 +5330,7 @@
|
|||
D378906515AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */,
|
||||
D3E8F68615ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */,
|
||||
C90FAA7915AF54E6002091CB /* HistoryDetailsViewController.m in Sources */,
|
||||
F066515517F9A02E0064280C /* UITransparentTVCell.m in Sources */,
|
||||
D3F9A9EE15AF277E0045320F /* UACellBackgroundView.m in Sources */,
|
||||
D35860D615B549B500513429 /* Utils.m in Sources */,
|
||||
D3F7998115BD32370018C273 /* TPMultiLayoutViewController.m in Sources */,
|
||||
|
|
@ -5117,6 +5429,7 @@
|
|||
D378906615AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */,
|
||||
D3E8F68715ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */,
|
||||
C90FAA7A15AF54E6002091CB /* HistoryDetailsViewController.m in Sources */,
|
||||
F066515617F9A02E0064280C /* UITransparentTVCell.m in Sources */,
|
||||
D3F9A9EF15AF277E0045320F /* UACellBackgroundView.m in Sources */,
|
||||
D35860D715B549B500513429 /* Utils.m in Sources */,
|
||||
D3F7998215BD32370018C273 /* TPMultiLayoutViewController.m in Sources */,
|
||||
|
|
@ -5446,6 +5759,7 @@
|
|||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = armv7;
|
||||
COMPRESS_PNG_FILES = NO;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
|
|
@ -5455,7 +5769,6 @@
|
|||
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||
GCC_PREFIX_HEADER = linphone_Prefix.pch;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
IN_LINPHONE,
|
||||
VIDEO_ENABLED,
|
||||
HAVE_X264,
|
||||
HAVE_SILK,
|
||||
|
|
@ -5463,14 +5776,7 @@
|
|||
);
|
||||
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
"liblinphone-sdk/apple-darwin/include",
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5493,15 +5799,20 @@
|
|||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Distribution: jehan monnier";
|
||||
GCC_THUMB_SUPPORT = NO;
|
||||
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 4.3;
|
||||
LIBRARY_SEARCH_PATHS = "";
|
||||
PROVISIONING_PROFILE = "7763350E-083E-4ADA-8535-05883F19F947";
|
||||
PROVISIONING_PROFILE = "0636A6EA-90EB-4D92-B707-19FC32F9A7CF";
|
||||
SDKROOT = iphoneos;
|
||||
STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
|
|
@ -5529,14 +5840,7 @@
|
|||
);
|
||||
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
"liblinphone-sdk/apple-darwin/include",
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5573,14 +5877,7 @@
|
|||
DEBUG,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
liblinphone-sdk/apple-darwin/include,
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5615,14 +5912,7 @@
|
|||
VIDEO_ENABLED,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
liblinphone-sdk/apple-darwin/include,
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5658,14 +5948,7 @@
|
|||
VIDEO_ENABLED,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
liblinphone-sdk/apple-darwin/include,
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5701,14 +5984,7 @@
|
|||
VIDEO_ENABLED,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
liblinphone-sdk/apple-darwin/include,
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5730,10 +6006,15 @@
|
|||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
GCC_THUMB_SUPPORT = NO;
|
||||
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 4.3;
|
||||
|
|
@ -5760,19 +6041,11 @@
|
|||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
IN_LINPHONE,
|
||||
VIDEO_ENABLED,
|
||||
HAVE_X264,
|
||||
HAVE_SILK,
|
||||
);
|
||||
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
"liblinphone-sdk/apple-darwin/include",
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5795,10 +6068,15 @@
|
|||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGN_IDENTITY = "iPhone Distribution: jehan monnier";
|
||||
GCC_THUMB_SUPPORT = NO;
|
||||
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = "";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 4.3;
|
||||
|
|
@ -5826,19 +6104,11 @@
|
|||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
IN_LINPHONE,
|
||||
VIDEO_ENABLED,
|
||||
HAVE_X264,
|
||||
HAVE_SILK,
|
||||
);
|
||||
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
submodules/linphone/coreapi,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/mediastreamer2/include,
|
||||
submodules/linphone/oRTP/include,
|
||||
submodules/externals/gsm/,
|
||||
submodules/externals/osip/include,
|
||||
submodules/externals/exosip/include,
|
||||
submodules/externals/speex/include,
|
||||
"liblinphone-sdk/apple-darwin/include",
|
||||
Classes/Utils/NinePatch/,
|
||||
Classes/Utils/XMLRPC/,
|
||||
);
|
||||
|
|
@ -5861,15 +6131,20 @@
|
|||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_BIT)";
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
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;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
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";
|
||||
|
|
|
|||
BIN
submodules/Default-568h@2x.png
Normal file
BIN
submodules/Default-568h@2x.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
|
|
@ -1 +1 @@
|
|||
Subproject commit 715309618f3c5e20311d4c113d401f1c43f87511
|
||||
Subproject commit 136c165a611a2552a3f52b0669b47a1bce0ab989
|
||||
1
submodules/belle-sip
Submodule
1
submodules/belle-sip
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 461029db78ecec56e81363d0b3d3786e349257f8
|
||||
|
|
@ -21,37 +21,61 @@
|
|||
############################################################################
|
||||
enable_gpl_third_parties=yes
|
||||
enable_zrtp=no
|
||||
enable_ffmpeg=yes
|
||||
enable_opus=yes
|
||||
enable_debug=no
|
||||
|
||||
.NOTPARALLEL all: check_options build warning
|
||||
|
||||
# check that the selected options are correct
|
||||
CHECKOPT_MSG := ""
|
||||
|
||||
ifeq ($(enable_gpl_third_parties)$(enable_zrtp),noyes)
|
||||
CHECKOPT_MSG += "ZRTP is not available in non-gpl build.\n"
|
||||
endif
|
||||
|
||||
ifeq ($(enable_gpl_third_parties)$(enable_ffmpeg),noyes)
|
||||
CHECKOPT_MSG += "FFMPEG is not available in non-gpl build.\n"
|
||||
endif
|
||||
|
||||
ifneq ($(CHECKOPT_MSG),"")
|
||||
check_options:
|
||||
@echo "ZRTP is not available in non-gpl build."
|
||||
@echo $(CHECKOPT_MSG)
|
||||
@exit -1
|
||||
else
|
||||
check_options:
|
||||
|
||||
endif
|
||||
|
||||
# setup footer
|
||||
|
||||
ifeq ($(enable_gpl_third_parties),yes)
|
||||
warning:
|
||||
@echo
|
||||
@echo "*****************************************************************"
|
||||
@echo "*****************************************************************"
|
||||
@echo "*****CAUTION, this liblinphone SDK is built using GPL code ******"
|
||||
@echo "*****To disable gpl code, use make enable_gpl_third_parties=no***"
|
||||
@echo "*****************************************************************"
|
||||
@echo "*****************************************************************"
|
||||
@echo "***************************************************************************"
|
||||
@echo "***************************************************************************"
|
||||
@echo "*****CAUTION, this liblinphone SDK is built using 3rd party GPL code ******"
|
||||
@echo "*****Even if you acquired a proprietary license from Belledonne ******"
|
||||
@echo "*****Communications, this SDK is GPL and GPL only. ******"
|
||||
@echo "*****To disable 3rd party gpl code, please use: ******"
|
||||
@echo "*****$ make enable_gpl_third_parties=no ******"
|
||||
@echo "***************************************************************************"
|
||||
@echo "***************************************************************************"
|
||||
else
|
||||
warning:
|
||||
@echo
|
||||
@echo "*****************************************************************"
|
||||
@echo "*****************************************************************"
|
||||
@echo "*****linphone SDK without GPL code ******"
|
||||
@echo "*****Linphone SDK without 3rd party GPL software ******"
|
||||
@echo "*****If you acquired a proprietary license from Belledonne ******"
|
||||
@echo "*****Communications, this SDK can be used to create ******"
|
||||
@echo "*****a proprietary linphone-based application. ******"
|
||||
@echo "*****************************************************************"
|
||||
@echo "*****************************************************************"
|
||||
endif
|
||||
|
||||
LINPHONE_OPTIONS=enable_gpl_third_parties=$(enable_gpl_third_parties) enable_zrtp=$(enable_zrtp)
|
||||
LINPHONE_OPTIONS=enable_gpl_third_parties=$(enable_gpl_third_parties) \
|
||||
enable_zrtp=$(enable_zrtp) enable_opus=$(enable_opus) \
|
||||
enable_debug=$(enable_debug) enable_ffmpeg=$(enable_ffmpeg)
|
||||
|
||||
build:
|
||||
make -f builder-iphone-simulator.mk $(LINPHONE_OPTIONS) all \
|
||||
|
|
|
|||
|
|
@ -30,13 +30,18 @@ linphone_configure_controls= \
|
|||
--enable-gtk_ui=no \
|
||||
--enable-console_ui=no \
|
||||
--enable-ssl-hmac=no \
|
||||
--enable-ssl=yes \
|
||||
--enable-ssl=no \
|
||||
--disable-theora \
|
||||
--disable-sdl \
|
||||
--disable-x11 \
|
||||
--enable-bellesip \
|
||||
--with-gsm=$(prefix) \
|
||||
--disable-tests \
|
||||
--with-srtp=$(prefix)
|
||||
--disable-tutorials \
|
||||
--with-srtp=$(prefix) \
|
||||
--with-antlr=$(prefix) \
|
||||
--disable-msg-storage
|
||||
|
||||
|
||||
ifeq ($(enable_zrtp),yes)
|
||||
linphone_configure_controls+= --enable-zrtp
|
||||
|
|
@ -46,35 +51,62 @@ endif
|
|||
|
||||
#path
|
||||
BUILDER_SRC_DIR?=$(shell pwd)/../
|
||||
ifeq ($(enable_debug),yes)
|
||||
BUILDER_BUILD_DIR?=$(shell pwd)/../build-$(host)-debug
|
||||
linphone_configure_controls += CFLAGS="-g"
|
||||
prefix?=$(BUILDER_SRC_DIR)/../liblinphone-sdk/$(host)-debug
|
||||
else
|
||||
BUILDER_BUILD_DIR?=$(shell pwd)/../build-$(host)
|
||||
prefix?=$(BUILDER_SRC_DIR)/../liblinphone-sdk/$(host)
|
||||
endif
|
||||
|
||||
LINPHONE_SRC_DIR=$(BUILDER_SRC_DIR)/linphone
|
||||
LINPHONE_BUILD_DIR=$(BUILDER_BUILD_DIR)/linphone
|
||||
|
||||
all: build-linphone build-msilbc build-msamr build-msx264 build-mssilk build-msbcg729
|
||||
|
||||
$(LINPHONE_BUILD_DIR)/enable_gpl_third_parties:
|
||||
mkdir -p $(LINPHONE_BUILD_DIR)
|
||||
touch $(LINPHONE_BUILD_DIR)/enable_gpl_third_parties
|
||||
rm -f $(LINPHONE_BUILD_DIR)/disable_gpl_third_parties
|
||||
cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile
|
||||
# setup the switches that might trigger a linphone reconfiguration
|
||||
|
||||
$(LINPHONE_BUILD_DIR)/disable_gpl_third_parties:
|
||||
mkdir -p $(LINPHONE_BUILD_DIR)
|
||||
touch $(LINPHONE_BUILD_DIR)/disable_gpl_third_parties
|
||||
rm -f $(LINPHONE_BUILD_DIR)/enable_gpl_third_parties
|
||||
cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile
|
||||
enable_gpl_third_parties?=yes
|
||||
enable_ffmpeg?=yes
|
||||
|
||||
SWITCHES:=
|
||||
|
||||
ifeq ($(enable_gpl_third_parties),yes)
|
||||
linphone_configure_controls+= --enable-ffmpeg
|
||||
detect_gpl_mode_switch: $(LINPHONE_BUILD_DIR)/enable_gpl_third_parties
|
||||
|
||||
else
|
||||
linphone_configure_controls+= --disable-ffmpeg
|
||||
detect_gpl_mode_switch: $(LINPHONE_BUILD_DIR)/disable_gpl_third_parties
|
||||
SWITCHES+= enable_gpl_third_parties
|
||||
|
||||
ifeq ($(enable_ffmpeg), yes)
|
||||
linphone_configure_controls+= --enable-ffmpeg
|
||||
SWITCHES += enable_ffmpeg
|
||||
else
|
||||
linphone_configure_controls+= --disable-ffmpeg
|
||||
SWITCHES += disable_ffmpeg
|
||||
endif
|
||||
|
||||
else # !enable gpl
|
||||
linphone_configure_controls+= --disable-ffmpeg
|
||||
SWITCHES += disable_gpl_third_parties disable_ffmpeg
|
||||
endif
|
||||
|
||||
SWITCHES := $(addprefix $(LINPHONE_BUILD_DIR)/,$(SWITCHES))
|
||||
|
||||
mode_switch_check: $(SWITCHES)
|
||||
|
||||
|
||||
$(LINPHONE_BUILD_DIR)/disable_%:
|
||||
mkdir -p $(LINPHONE_BUILD_DIR)
|
||||
touch $(LINPHONE_BUILD_DIR)/disable_$*
|
||||
rm -f $(LINPHONE_BUILD_DIR)/enable_$*
|
||||
cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile
|
||||
|
||||
$(LINPHONE_BUILD_DIR)/enable_%:
|
||||
mkdir -p $(LINPHONE_BUILD_DIR)
|
||||
touch $(LINPHONE_BUILD_DIR)/enable_$*
|
||||
rm -f $(LINPHONE_BUILD_DIR)/disable_$*
|
||||
cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile
|
||||
|
||||
# end of switches parsing
|
||||
|
||||
osip_dir=externals/osip
|
||||
eXosip_dir=externals/exosip
|
||||
speex_dir=externals/speex
|
||||
|
|
@ -96,9 +128,6 @@ ifneq (,$(findstring armv7,$(host)))
|
|||
SPEEX_CONFIGURE_OPTION += --enable-armv7neon-asm
|
||||
endif
|
||||
|
||||
prefix?=$(BUILDER_SRC_DIR)/../liblinphone-sdk/$(host)
|
||||
|
||||
|
||||
clean-makefile: clean-makefile-linphone clean-makefile-msbcg729
|
||||
clean: clean-linphone clean-msbcg729
|
||||
init:
|
||||
|
|
@ -108,18 +137,22 @@ init:
|
|||
veryclean: veryclean-linphone veryclean-msbcg729
|
||||
rm -rf $(BUILDER_BUILD_DIR)
|
||||
|
||||
# list of the submodules to build
|
||||
MS_MODULES := msilbc libilbc msamr mssilk msx264
|
||||
SUBMODULES_LIST := polarssl libantlr belle-sip srtp zrtpcpp speex libgsm libvpx libxml2 ffmpeg opus
|
||||
|
||||
.NOTPARALLEL build-linphone: init build-openssl build-srtp build-zrtpcpp build-osip2 build-eXosip2 build-speex build-libgsm build-ffmpeg build-libvpx detect_gpl_mode_switch $(LINPHONE_BUILD_DIR)/Makefile
|
||||
.NOTPARALLEL build-linphone: init $(addprefix build-,$(SUBMODULES_LIST)) mode_switch_check $(LINPHONE_BUILD_DIR)/Makefile
|
||||
cd $(LINPHONE_BUILD_DIR) && export PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig export CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make newdate && make && make install
|
||||
mkdir -p $(prefix)/share/linphone/tutorials && cp -f $(LINPHONE_SRC_DIR)/coreapi/help/*.c $(prefix)/share/linphone/tutorials/
|
||||
|
||||
clean-linphone: clean-osip2 clean-eXosip2 clean-speex clean-libgsm clean-srtp clean-zrtpcpp clean-msilbc clean-libilbc clean-openssl clean-msamr clean-mssilk clean-ffmpeg clean-libvpx clean-msx264
|
||||
clean-linphone: $(addprefix clean-,$(SUBMODULES_LIST)) $(addprefix clean-,$(MS_MODULES))
|
||||
cd $(LINPHONE_BUILD_DIR) && make clean
|
||||
|
||||
veryclean-linphone: veryclean-osip2 veryclean-eXosip2 veryclean-speex veryclean-srtp veryclean-zrtpcpp veryclean-libgsm veryclean-msilbc veryclean-libilbc veryclean-openssl veryclean-msamr veryclean-mssilk veryclean-msx264 veryclean-libvpx
|
||||
veryclean-linphone: $(addprefix veryclean-,$(SUBMODULES_LIST)) $(addprefix veryclean-,$(MS_MODULES))
|
||||
#-cd $(LINPHONE_BUILD_DIR) && make distclean
|
||||
-cd $(LINPHONE_SRC_DIR) && rm -f configure
|
||||
|
||||
clean-makefile-linphone: clean-makefile-osip2 clean-makefile-eXosip2 clean-makefile-speex clean-makefile-srtp clean-makefile-zrtpcpp clean-makefile-libilbc clean-makefile-msilbc clean-makefile-openssl clean-makefile-msamr clean-makefile-ffmpeg clean-makefile-libvpx clean-makefile-mssilk
|
||||
clean-makefile-linphone: $(addprefix clean-makefile-,$(SUBMODULES_LIST)) $(addprefix clean-makefile-,$(MS_MODULES))
|
||||
cd $(LINPHONE_BUILD_DIR) && rm -f Makefile && rm -f oRTP/Makefile && rm -f mediastreamer2/Makefile
|
||||
|
||||
|
||||
|
|
@ -128,12 +161,12 @@ $(LINPHONE_SRC_DIR)/configure:
|
|||
|
||||
$(LINPHONE_BUILD_DIR)/Makefile: $(LINPHONE_SRC_DIR)/configure
|
||||
mkdir -p $(LINPHONE_BUILD_DIR)
|
||||
echo -e "\033[1mPKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
@echo -e "\033[1mPKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \
|
||||
${linphone_configure_controls}\033[0m"
|
||||
cd $(LINPHONE_BUILD_DIR) && \
|
||||
PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
CFLAGS="$(CFLAGS) -DMS2_MINIMAL_SIZE" $(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \
|
||||
$(LINPHONE_SRC_DIR)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \
|
||||
${linphone_configure_controls}
|
||||
|
||||
|
||||
|
|
@ -146,54 +179,6 @@ clean-makefile-liblinphone:
|
|||
|
||||
clean-liblinphone:
|
||||
cd $(LINPHONE_BUILD_DIR) && make clean
|
||||
#osip2
|
||||
|
||||
$(BUILDER_SRC_DIR)/$(osip_dir)/configure:
|
||||
cd $(BUILDER_SRC_DIR)/$(osip_dir) && ./autogen.sh
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(osip_dir)/Makefile: $(BUILDER_SRC_DIR)/$(osip_dir)/configure
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(osip_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(osip_dir)/ \
|
||||
&& CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(osip_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode}
|
||||
|
||||
build-osip2: $(BUILDER_BUILD_DIR)/$(osip_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(osip_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-osip2:
|
||||
cd $(BUILDER_BUILD_DIR)/$(osip_dir) && make clean
|
||||
|
||||
veryclean-osip2:
|
||||
# -cd $(BUILDER_BUILD_DIR)/$(osip_dir) && make distclean
|
||||
-cd $(BUILDER_SRC_DIR)/$(osip_dir) && rm -f configure
|
||||
|
||||
clean-makefile-osip2:
|
||||
cd $(BUILDER_BUILD_DIR)/$(osip_dir) && rm -f Makefile
|
||||
#eXosip
|
||||
|
||||
$(BUILDER_SRC_DIR)/$(eXosip_dir)/configure:
|
||||
cd $(BUILDER_SRC_DIR)/$(eXosip_dir) && ./autogen.sh
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(eXosip_dir)/Makefile: $(BUILDER_SRC_DIR)/$(eXosip_dir)/configure
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(eXosip_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(eXosip_dir)/\
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(eXosip_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} CFLAGS="-I$(prefix)/include -L$(prefix)/lib -lcrypto" --enable-openssl --disable-tools
|
||||
|
||||
build-eXosip2: $(BUILDER_BUILD_DIR)/$(eXosip_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
make DEFS="-DHAVE_CONFIG_H -include $(BUILDER_SRC_DIR)/$(eXosip_dir)/include/eXosip2/eXosip_transport_hook.h" && make install
|
||||
|
||||
clean-eXosip2:
|
||||
cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) && make clean
|
||||
|
||||
veryclean-eXosip2:
|
||||
# -cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) && make distclean
|
||||
-rm -f $(BUILDER_SRC_DIR)/$(eXosip_dir)/configure
|
||||
|
||||
clean-makefile-eXosip2:
|
||||
cd $(BUILDER_BUILD_DIR)/$(eXosip_dir) && rm -f Makefile
|
||||
|
||||
#speex
|
||||
|
||||
|
|
@ -310,7 +295,8 @@ multi-arch:
|
|||
if test ! -f "$$armv7s_path"; then \
|
||||
armv7s_path= ; \
|
||||
fi; \
|
||||
destpath=`echo $$archive | sed -e "s/armv7-//"` ;\
|
||||
destpath=`echo $$archive | sed -e "s/-debug//"` ;\
|
||||
destpath=`echo $$destpath | sed -e "s/armv7-//"` ;\
|
||||
if test -f "$$i386_path"; then \
|
||||
echo "Mixing $$archive into $$destpath"; \
|
||||
mkdir -p `dirname $$destpath` ; \
|
||||
|
|
|
|||
43
submodules/build/builders.d/belle-sip.mk
Normal file
43
submodules/build/builders.d/belle-sip.mk
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
############################################################################
|
||||
# belle-sip.mk
|
||||
# Copyright (C) 2013 Belledonne Communications,Grenoble France
|
||||
#
|
||||
############################################################################
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
############################################################################
|
||||
belle-sip_dir?=belle-sip
|
||||
$(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure:
|
||||
cd $(BUILDER_SRC_DIR)/$(belle-sip_dir) && ./autogen.sh
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(belle-sip_dir)/Makefile: $(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(belle-sip_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir)/ \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure --prefix=$(prefix) --host=$(host) ${library_mode} --enable-tls --with-polarssl=$(prefix)
|
||||
|
||||
build-belle-sip: $(BUILDER_BUILD_DIR)/$(belle-sip_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-belle-sip:
|
||||
cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && make clean
|
||||
|
||||
veryclean-belle-sip:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && make distclean
|
||||
rm -f $(BUILDER_SRC_DIR)/$(belle-sip_dir)/configure
|
||||
|
||||
clean-makefile-belle-sip:
|
||||
cd $(BUILDER_BUILD_DIR)/$(belle-sip_dir) && rm -f Makefile
|
||||
|
|
@ -4,37 +4,43 @@ ffmpeg_configure_options=\
|
|||
--disable-ffprobe --disable-ffserver --disable-avdevice \
|
||||
--disable-avfilter --disable-network \
|
||||
--disable-everything --enable-decoder=mjpeg --enable-encoder=mjpeg --enable-decoder=mpeg4 --enable-encoder=mpeg4 \
|
||||
--enable-decoder=h264 --disable-avformat --enable-armv5te --enable-armv6 --enable-armv6t2 \
|
||||
--enable-armvfp \
|
||||
--enable-decoder=h264 --disable-avformat --enable-pic\
|
||||
--cross-prefix=$$SDK_BIN_PATH/ \
|
||||
--sysroot=$$SYSROOT_PATH --arch=$$ARCH \
|
||||
--enable-static --disable-shared --target-os=darwin \
|
||||
--extra-cflags="-arch $$ARCH " --extra-ldflags="-arch $$ARCH -Wl,-syslibroot,$$SYSROOT_PATH " \
|
||||
--source-path=$(BUILDER_SRC_DIR)/$(ffmpeg_dir)
|
||||
--enable-static --disable-shared --target-os=darwin \
|
||||
--extra-cflags="$$COMMON_FLAGS" --extra-ldflags="$$COMMON_FLAGS" \
|
||||
--disable-iconv \
|
||||
--ar="$$AR" \
|
||||
--nm="$$NM" \
|
||||
--cc="$$CC"
|
||||
|
||||
# --as=$(BUILDER_SRC_DIR)/externals/x264/extras/gas-preprocessor.pl
|
||||
|
||||
#--sysinclude=PATH location of cross-build system headers
|
||||
ifneq (,$(findstring armv6,$(host)))
|
||||
ffmpeg_configure_options+= --cpu=arm1176jzf-s
|
||||
ffmpeg_configure_options+= --cpu=arm1176jzf-s --disable-armv5te --enable-armv6 --enable-armv6t2
|
||||
endif
|
||||
|
||||
ifneq (,$(findstring armv7,$(host)))
|
||||
ffmpeg_configure_options+= --enable-neon --cpu=cortex-a8
|
||||
ffmpeg_configure_options+= --enable-neon --cpu=cortex-a8 --disable-armv5te --enable-armv6 --enable-armv6t2
|
||||
endif
|
||||
|
||||
ffmpeg_dir?=externals/ffmpeg
|
||||
$(BUILDER_SRC_DIR)/$(ffmpeg_dir)/patched :
|
||||
cd $(BUILDER_SRC_DIR)/$(ffmpeg_dir) \
|
||||
&& git apply $(BUILDER_SRC_DIR)/build/builders.d/ffmpeg.patch \
|
||||
&& touch $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/patched
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/config.mak: $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/patched
|
||||
$(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/config.mak:
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(ffmpeg_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/ \
|
||||
&& host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/configure --prefix=$(prefix) $(ffmpeg_configure_options)
|
||||
&& $(BUILDER_SRC_DIR)/$(ffmpeg_dir)/configure --prefix=$(prefix) $(ffmpeg_configure_options)
|
||||
|
||||
build-ffmpeg: $(BUILDER_BUILD_DIR)/$(ffmpeg_dir)/config.mak
|
||||
cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) \
|
||||
&& host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig make RANLIB="$$RANLIB" && make RANLIB="$$RANLIB" install
|
||||
|
||||
clean-ffmpeg:
|
||||
cd $(BUILDER_BUILD_DIR)/$(ffmpeg_dir) && make clean
|
||||
|
|
|
|||
|
|
@ -1,20 +0,0 @@
|
|||
diff --git a/libavutil/arm/intmath.h b/libavutil/arm/intmath.h
|
||||
index 8f03d4b..0504b95 100644
|
||||
--- a/libavutil/arm/intmath.h
|
||||
+++ b/libavutil/arm/intmath.h
|
||||
@@ -91,10 +91,12 @@ static av_always_inline av_const int FASTDIV(int a, int b)
|
||||
static av_always_inline av_const int32_t av_clipl_int32_arm(int64_t a)
|
||||
{
|
||||
int x, y;
|
||||
- __asm__ volatile ("adds %1, %R2, %Q2, lsr #31 \n\t"
|
||||
+ union { uint64_t a; uint32_t hl[2]; } tmp_a;
|
||||
+ tmp_a.a=a;
|
||||
+ __asm__ volatile ("adds %1, %2, %3, lsr #31 \n\t"
|
||||
"mvnne %1, #1<<31 \n\t"
|
||||
- "eorne %0, %1, %R2, asr #31 \n\t"
|
||||
- : "=r"(x), "=&r"(y) : "r"(a));
|
||||
+ "eorne %0, %1, %2, asr #31 \n\t"
|
||||
+ : "=r"(x), "=&r"(y) : "r"(tmp_a.hl[0]),"r"(tmp_a.hl[1]));
|
||||
return x;
|
||||
}
|
||||
|
||||
43
submodules/build/builders.d/libantlr3c.mk
Normal file
43
submodules/build/builders.d/libantlr3c.mk
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
############################################################################
|
||||
# libantlr.mk
|
||||
# Copyright (C) 2013 Belledonne Communications,Grenoble France
|
||||
#
|
||||
############################################################################
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
############################################################################
|
||||
libantlr_dir?=externals/antlr3/runtime/C
|
||||
$(BUILDER_SRC_DIR)/$(libantlr_dir)/configure:
|
||||
cd $(BUILDER_SRC_DIR)/$(libantlr_dir) && ./autogen.sh
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(libantlr_dir)/Makefile: $(BUILDER_SRC_DIR)/$(libantlr_dir)/configure
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(libantlr_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(libantlr_dir)/ \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(libantlr_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode}
|
||||
|
||||
build-libantlr: $(BUILDER_BUILD_DIR)/$(libantlr_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-libantlr:
|
||||
cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && make clean
|
||||
|
||||
veryclean-libantlr:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && make distclean
|
||||
rm -f $(BUILDER_SRC_DIR)/$(libantlr_dir)/configure
|
||||
|
||||
clean-makefile-libantlr:
|
||||
cd $(BUILDER_BUILD_DIR)/$(libantlr_dir) && rm -f Makefile
|
||||
|
|
@ -7,13 +7,17 @@ libvpx_configure_options=\
|
|||
ifneq (,$(findstring armv6,$(host)))
|
||||
libvpx_configure_options+= --target=armv6-darwin-gcc --cpu=arm1176jzf-s
|
||||
else ifneq (,$(findstring armv7s,$(host)))
|
||||
libvpx_configure_options+= --target=armv7s-darwin-gcc --cpu=cortex-a8
|
||||
libvpx_configure_options+= --target=armv7s-darwin-gcc
|
||||
else ifneq (,$(findstring armv7,$(host)))
|
||||
libvpx_configure_options+= --target=armv7-darwin-gcc --cpu=cortex-a8
|
||||
libvpx_configure_options+= --target=armv7-darwin-gcc
|
||||
else
|
||||
libvpx_configure_options+= --target=x86-darwin10-gcc
|
||||
endif
|
||||
|
||||
libvpx_dir?=externals/libvpx
|
||||
all_p=armv6-darwin-gcc #neon Cortex-A8
|
||||
all_p+=armv7-darwin-gcc #neon Cortex-A8
|
||||
all_p+=armv7s-darwin-gcc #neon Cortex-A8
|
||||
|
||||
$(BUILDER_SRC_DIR)/$(libvpx_dir)/patched.stamp:
|
||||
cd $(BUILDER_SRC_DIR)/$(libvpx_dir) \
|
||||
|
|
@ -24,10 +28,12 @@ $(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk: $(BUILDER_SRC_DIR)/$(libvpx_dir)/p
|
|||
mkdir -p $(BUILDER_BUILD_DIR)/$(libvpx_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(libvpx_dir)/ \
|
||||
&& host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& SYSROOT_PATH=$$SYSROOT_PATH SDK_BIN_PATH=$$SDK_BIN_PATH $(BUILDER_SRC_DIR)/$(libvpx_dir)/configure --prefix=$(prefix) $(libvpx_configure_options)
|
||||
&& export all_platforms="${all_p}" && $(BUILDER_SRC_DIR)/$(libvpx_dir)/configure --prefix=$(prefix) --sdk-path=$$SDK_BIN_PATH/../../ --libc=$$SYSROOT_PATH $(libvpx_configure_options)
|
||||
|
||||
build-libvpx: $(BUILDER_BUILD_DIR)/$(libvpx_dir)/config.mk
|
||||
cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) \
|
||||
&& host_alias=${host} . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-libvpx:
|
||||
cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && make clean
|
||||
|
|
@ -35,7 +41,7 @@ clean-libvpx:
|
|||
veryclean-libvpx:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(libvpx_dir) && make distclean
|
||||
cd $(BUILDER_SRC_DIR)/$(libvpx_dir) \
|
||||
&& git checkout build/make/configure.sh configure\
|
||||
&& git clean -f && git reset --hard \
|
||||
&& rm -f patched.stamp
|
||||
rm -rf $(BUILDER_BUILD_DIR)/$(libvpx_dir)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,69 +1,47 @@
|
|||
diff --git a/build/make/configure.sh b/build/make/configure.sh
|
||||
index 0426f92..38fdcb2 100755
|
||||
index c99a01c..f7f54c6 100755
|
||||
--- a/build/make/configure.sh
|
||||
+++ b/build/make/configure.sh
|
||||
@@ -624,6 +624,9 @@ process_common_toolchain() {
|
||||
if [ -d "/Developer/SDKs/MacOSX10.7.sdk" ]; then
|
||||
osx_sdk_dir="/Developer/SDKs/MacOSX10.7.sdk"
|
||||
fi
|
||||
+ if test -n "$SYSROOT_PATH" ; then
|
||||
+ osx_sdk_dir=$SYSROOT_PATH
|
||||
+ fi
|
||||
|
||||
case ${toolchain} in
|
||||
*-darwin8-*)
|
||||
@@ -743,9 +746,17 @@ process_common_toolchain() {
|
||||
darwin*)
|
||||
SDK_PATH=/Developer/Platforms/iPhoneOS.platform/Developer
|
||||
@@ -889,13 +889,13 @@ process_common_toolchain() {
|
||||
SDK_PATH=${sdk_path}
|
||||
fi
|
||||
TOOLCHAIN_PATH=${SDK_PATH}/usr/bin
|
||||
+ if test -n "$SYSROOT_PATH" ; then
|
||||
+ SDK_FULL_PATH=$SYSROOT_PATH
|
||||
+ else
|
||||
+ SDK_FULL_PATH="${SDK_PATH}/SDKs/iPhoneOS5.0.sdk"
|
||||
+ fi
|
||||
+ if test -n "$SDK_BIN_PATH" ; then
|
||||
+ TOOLCHAIN_PATH=$SDK_BIN_PATH
|
||||
+ fi
|
||||
CC=${TOOLCHAIN_PATH}/gcc
|
||||
AR=${TOOLCHAIN_PATH}/ar
|
||||
- CXX=${TOOLCHAIN_PATH}/g++
|
||||
- CC=${TOOLCHAIN_PATH}/gcc
|
||||
- AR=${TOOLCHAIN_PATH}/ar
|
||||
- LD=${TOOLCHAIN_PATH}/arm-apple-darwin10-llvm-gcc-4.2
|
||||
+ LD=${TOOLCHAIN_PATH}/gcc
|
||||
AS=${TOOLCHAIN_PATH}/as
|
||||
STRIP=${TOOLCHAIN_PATH}/strip
|
||||
NM=${TOOLCHAIN_PATH}/nm
|
||||
@@ -757,12 +768,12 @@ process_common_toolchain() {
|
||||
- AS=${TOOLCHAIN_PATH}/as
|
||||
- STRIP=${TOOLCHAIN_PATH}/strip
|
||||
- NM=${TOOLCHAIN_PATH}/nm
|
||||
+ CXX=`xcrun --find clang++`
|
||||
+ CC=`xcrun --find clang`
|
||||
+ AR=`xcrun --find ar`
|
||||
+ LD=`xcrun --find clang`
|
||||
+ AS=`xcrun --find as`
|
||||
+ STRIP=`xcrun --find strip`
|
||||
+ NM=`xcrun --find nm`
|
||||
AS_SFX=.s
|
||||
|
||||
# ASFLAGS is written here instead of using check_add_asflags
|
||||
@@ -904,7 +904,7 @@ process_common_toolchain() {
|
||||
ASFLAGS="-version -arch ${tgt_isa} -g"
|
||||
|
||||
add_cflags -arch ${tgt_isa}
|
||||
- add_ldflags -arch_only ${tgt_isa}
|
||||
+ add_ldflags -arch ${tgt_isa}
|
||||
|
||||
- add_cflags "-isysroot ${SDK_PATH}/SDKs/iPhoneOS5.0.sdk"
|
||||
+ add_cflags "-isysroot $SDK_FULL_PATH"
|
||||
|
||||
# This should be overridable
|
||||
- alt_libc=${SDK_PATH}/SDKs/iPhoneOS5.0.sdk
|
||||
+ alt_libc=$SDK_FULL_PATH
|
||||
|
||||
# Add the paths for the alternate libc
|
||||
for d in usr/include; do
|
||||
diff --git a/configure b/configure
|
||||
index 6f20c6b..4638ea2 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -94,6 +94,7 @@ all_platforms="${all_platforms} iwmmxt-linux-gcc"
|
||||
all_platforms="${all_platforms} iwmmxt2-linux-rvct"
|
||||
all_platforms="${all_platforms} iwmmxt2-linux-gcc"
|
||||
all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8
|
||||
+all_platforms="${all_platforms} armv7s-darwin-gcc" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8
|
||||
all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8
|
||||
@@ -198,6 +199,7 @@ ARCH_EXT_LIST="
|
||||
armv5te
|
||||
armv6
|
||||
armv7
|
||||
+ armv7s
|
||||
iwmmxt
|
||||
iwmmxt2
|
||||
if [ -z "${alt_libc}" ]; then
|
||||
alt_libc=${SDK_PATH}/SDKs/iPhoneOS5.1.sdk
|
||||
diff --git a/vp8/decoder/decodframe.c b/vp8/decoder/decodframe.c
|
||||
index a4a00f6..72d0b6d 100644
|
||||
--- a/vp8/decoder/decodframe.c
|
||||
+++ b/vp8/decoder/decodframe.c
|
||||
@@ -92,7 +92,7 @@ void vp8_mb_init_dequantizer(VP8D_COMP *pbi, MACROBLOCKD *xd)
|
||||
}
|
||||
}
|
||||
|
||||
-static void decode_macroblock(VP8D_COMP *pbi, MACROBLOCKD *xd,
|
||||
+void decode_macroblock(VP8D_COMP *pbi, MACROBLOCKD *xd,
|
||||
unsigned int mb_idx)
|
||||
{
|
||||
MB_PREDICTION_MODE mode;
|
||||
|
|
|
|||
63
submodules/build/builders.d/libxml2.mk
Normal file
63
submodules/build/builders.d/libxml2.mk
Normal file
|
|
@ -0,0 +1,63 @@
|
|||
############################################################################
|
||||
# libxml2.mk
|
||||
# Copyright (C) 2013 Belledonne Communications,Grenoble France
|
||||
#
|
||||
############################################################################
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
############################################################################
|
||||
libxml2_dir?=externals/libxml2
|
||||
|
||||
libxml2_configure_options= \
|
||||
--enable-static --disable-shared \
|
||||
--disable-rebuild-docs --with-iconv=no --with-python=no --with-zlib=no
|
||||
|
||||
$(BUILDER_SRC_DIR)/$(libxml2_dir)/patched.stamp:
|
||||
cd $(BUILDER_SRC_DIR)/$(libxml2_dir) \
|
||||
&& git apply $(BUILDER_SRC_DIR)/build/builders.d/libxml2.patch \
|
||||
&& touch $@
|
||||
|
||||
$(BUILDER_SRC_DIR)/$(libxml2_dir)/configure: $(BUILDER_SRC_DIR)/$(libxml2_dir)/patched.stamp
|
||||
@echo -e "\033[01;32m Running autogen for libxml2 in $(BUILDER_SRC_DIR)/$(libxml2_dir) \033[0m"
|
||||
cd $(BUILDER_SRC_DIR)/$(libxml2_dir) \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) NOCONFIGURE=1 \
|
||||
$(BUILDER_SRC_DIR)/$(libxml2_dir)/autogen.sh -prefix=$(prefix) --host=$(host) ${library_mode}
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(libxml2_dir)/Makefile: $(BUILDER_SRC_DIR)/$(libxml2_dir)/configure
|
||||
@echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(libxml2_dir) \033[0m"
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(libxml2_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(libxml2_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} $(libxml2_configure_options)
|
||||
|
||||
build-libxml2: $(BUILDER_BUILD_DIR)/$(libxml2_dir)/Makefile
|
||||
@echo -e "\033[01;32m building libxml2 \033[0m"
|
||||
cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
make && make install
|
||||
|
||||
clean-libxml2:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) && make clean
|
||||
|
||||
veryclean-libxml2:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) && make distclean
|
||||
rm -f $(BUILDER_SRC_DIR)/$(libxml2_dir)/configure
|
||||
cd $(BUILDER_SRC_DIR)/$(libxml2_dir) \
|
||||
&& git checkout configure.in \
|
||||
&& rm -f patched.stamp
|
||||
|
||||
clean-makefile-libxml2:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(libxml2_dir) && rm -f Makefile
|
||||
13
submodules/build/builders.d/libxml2.patch
Normal file
13
submodules/build/builders.d/libxml2.patch
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/configure.in b/configure.in
|
||||
index 0fb4983..a5f86ca 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -1,7 +1,7 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
AC_PREREQ(2.59)
|
||||
AC_INIT(entities.c)
|
||||
-AM_CONFIG_HEADER(config.h)
|
||||
+AC_CONFIG_HEADERS(config.h)
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
|
|
@ -26,11 +26,11 @@ $(BUILDER_SRC_DIR)/$(msamr_dir)/configure:
|
|||
$(BUILDER_BUILD_DIR)/$(msamr_dir)/Makefile: $(BUILDER_SRC_DIR)/$(msamr_dir)/configure
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(msamr_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(msamr_dir)/ \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(msamr_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode}
|
||||
|
||||
build-msamr: build-opencore-amr $(BUILDER_BUILD_DIR)/$(msamr_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(msamr_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(msamr_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-msamr: clean-opencore-amr
|
||||
cd $(BUILDER_BUILD_DIR)/$(msamr_dir) && make clean
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ $(BUILDER_BUILD_DIR)/$(msbcg729_dir)/Makefile: $(BUILDER_SRC_DIR)/$(msbcg729_dir
|
|||
@echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(msbcg729_dir) \033[0m"
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(msbcg729_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(msbcg729_dir)/ \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(msbcg729_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \
|
||||
--enable-static
|
||||
|
||||
|
|
@ -39,7 +39,7 @@ ifeq ($(enable_bcg729),yes)
|
|||
build-msbcg729: $(BUILDER_BUILD_DIR)/$(msbcg729_dir)/Makefile
|
||||
@echo -e "\033[01;32m building bcg729 \033[0m"
|
||||
cd $(BUILDER_BUILD_DIR)/$(msbcg729_dir) \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig \
|
||||
CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
make -j1 && make install
|
||||
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@ $(BUILDER_SRC_DIR)/$(mssilk_dir)/configure:
|
|||
cd $(BUILDER_SRC_DIR)/$(mssilk_dir) && ./autogen.sh
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(mssilk_dir)/Makefile: $(BUILDER_SRC_DIR)/$(mssilk_dir)/configure
|
||||
echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(mssilk_dir) \033[0m"
|
||||
@echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(mssilk_dir) \033[0m"
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(mssilk_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(mssilk_dir)/ \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(mssilk_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \
|
||||
--enable-static
|
||||
|
||||
|
|
|
|||
|
|
@ -26,11 +26,11 @@ $(BUILDER_SRC_DIR)/$(msx264_dir)/configure:
|
|||
$(BUILDER_BUILD_DIR)/$(msx264_dir)/Makefile: $(BUILDER_SRC_DIR)/$(msx264_dir)/configure
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(msx264_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(msx264_dir)/ \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(msx264_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode}
|
||||
|
||||
build-msx264: build-x264 $(BUILDER_BUILD_DIR)/$(msx264_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(msx264_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(msx264_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-msx264: clean-x264
|
||||
cd $(BUILDER_BUILD_DIR)/$(msx264_dir) && make clean
|
||||
|
|
|
|||
|
|
@ -19,9 +19,6 @@
|
|||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
############################################################################
|
||||
ifneq (,$(findstring arm,$(host)))
|
||||
opencore-amr-configure-option=--enable-gcc-armv5
|
||||
endif
|
||||
|
||||
opencore-amr_dir?=externals/opencore-amr
|
||||
|
||||
|
|
@ -35,7 +32,7 @@ $(BUILDER_BUILD_DIR)/$(opencore-amr_dir)/Makefile: $(BUILDER_SRC_DIR)/$(opencore
|
|||
$(BUILDER_SRC_DIR)/$(opencore-amr_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} ${opencore-amr-configure-option}
|
||||
|
||||
build-opencore-amr: $(BUILDER_BUILD_DIR)/$(opencore-amr_dir)/Makefile
|
||||
cd $(BUILDER_BUILD_DIR)/$(opencore-amr_dir) && PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(opencore-amr_dir) && PKG_CONFIG_LIBDIR=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) make && make install
|
||||
|
||||
clean-opencore-amr:
|
||||
cd $(BUILDER_BUILD_DIR)/$(opencore-amr_dir) && make clean
|
||||
|
|
|
|||
69
submodules/build/builders.d/opus.mk
Normal file
69
submodules/build/builders.d/opus.mk
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
############################################################################
|
||||
# opus.mk
|
||||
# Copyright (C) 2013 Belledonne Communications,Grenoble France
|
||||
#
|
||||
############################################################################
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
############################################################################
|
||||
opus_dir?=externals/opus
|
||||
enable_opus?=yes
|
||||
|
||||
libopus_configure_options=--disable-extra-programs --disable-doc
|
||||
ifneq (,$(findstring armv7,$(host)))
|
||||
libopus_configure_options+= --enable-fixed-point --disable-asm
|
||||
endif
|
||||
ifneq (,$(findstring armv7s,$(host)))
|
||||
libopus_configure_options+= --enable-fixed-point --disable-asm
|
||||
endif
|
||||
|
||||
$(BUILDER_SRC_DIR)/$(opus_dir)/configure:
|
||||
@echo -e "\033[01;32m Running autogen for msopus in $(BUILDER_SRC_DIR)/$(opus_dir) \033[0m"
|
||||
cd $(BUILDER_SRC_DIR)/$(opus_dir) && ./autogen.sh
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(opus_dir)/Makefile: $(BUILDER_SRC_DIR)/$(opus_dir)/configure
|
||||
@echo -e "\033[01;32m Running configure in $(BUILDER_BUILD_DIR)/$(opus_dir) \033[0m"
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(opus_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(opus_dir)/ \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
$(BUILDER_SRC_DIR)/$(opus_dir)/configure -prefix=$(prefix) --host=$(host) ${library_mode} \
|
||||
${libopus_configure_options}
|
||||
|
||||
ifeq ($(enable_opus),yes)
|
||||
|
||||
build-opus: $(BUILDER_BUILD_DIR)/$(opus_dir)/Makefile
|
||||
@echo -e "\033[01;32m building opus \033[0m"
|
||||
cd $(BUILDER_BUILD_DIR)/$(opus_dir) \
|
||||
&& PKG_CONFIG_PATH=$(prefix)/lib/pkgconfig \
|
||||
CONFIG_SITE=$(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
make && make install
|
||||
|
||||
|
||||
else
|
||||
build-opus:
|
||||
@echo "opus is disabled"
|
||||
|
||||
endif
|
||||
|
||||
clean-opus:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(opus_dir) && make clean
|
||||
|
||||
veryclean-opus:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(opus_dir) && make distclean
|
||||
rm -f $(BUILDER_SRC_DIR)/$(opus_dir)/configure
|
||||
|
||||
clean-makefile-opus:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(opus_dir) && rm -f Makefile
|
||||
19
submodules/build/builders.d/polarssl.mk
Normal file
19
submodules/build/builders.d/polarssl.mk
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
polarssl_dir?=externals/polarssl
|
||||
|
||||
update-tree: $(BUILDER_SRC_DIR)/$(polarssl_dir)/Makefile
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(polarssl_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(polarssl_dir)/ && \
|
||||
rsync -rvLpgoc --exclude ".git" $(BUILDER_SRC_DIR)/$(polarssl_dir)/ .
|
||||
|
||||
build-polarssl: update-tree
|
||||
host_alias=$(host) && . /$(BUILDER_SRC_DIR)/build/$(config_site) && \
|
||||
cd $(BUILDER_BUILD_DIR)/$(polarssl_dir) && make CC="$$CC" AR="$$AR" CPPFLAGS="$$CPPFLAGS" lib && make install DESTDIR=$(prefix)
|
||||
|
||||
clean-polarssl:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(polarssl_dir) && make clean
|
||||
|
||||
veryclean-polarssl:
|
||||
-rm -rf $(BUILDER_BUILD_DIR)/$(polarssl_dir)
|
||||
|
||||
clean-makefile-polarssl: veryclean-polarssl
|
||||
|
||||
|
|
@ -11,7 +11,7 @@ $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile: $(BUILDER_SRC_DIR)/$(srtp_dir)/config
|
|||
|
||||
build-srtp: $(BUILDER_BUILD_DIR)/$(srtp_dir)/Makefile
|
||||
host_alias=$(host) && . /$(BUILDER_SRC_DIR)/build/$(config_site) && \
|
||||
cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make libsrtp.a AR=$$AR && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make libsrtp.a AR="$$AR" && make install
|
||||
|
||||
clean-srtp:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(srtp_dir) && make clean
|
||||
|
|
|
|||
|
|
@ -24,42 +24,40 @@
|
|||
|
||||
x264-configure-option= \
|
||||
--host=$(host)\
|
||||
--enable-static \
|
||||
--enable-static --enable-pic \
|
||||
--cross-prefix=$$SDK_BIN_PATH/ \
|
||||
--extra-ldflags="-arch $$ARCH -isysroot $$SYSROOT_PATH"
|
||||
--extra-ldflags="$$COMMON_FLAGS"
|
||||
|
||||
|
||||
XCFLAGS:=$$COMMON_FLAGS
|
||||
|
||||
ifneq (,$(findstring i386,$(host)))
|
||||
x264-configure-option+= --extra-cflags="-arch $$ARCH -isysroot $$SYSROOT_PATH"
|
||||
endif
|
||||
ifneq (,$(findstring armv6,$(host)))
|
||||
x264-configure-option+= --extra-cflags="-arch $$ARCH -mcpu=arm1176jzf-s -marm -isysroot $$SYSROOT_PATH"
|
||||
x264-configure-option+= --disable-asm
|
||||
endif
|
||||
|
||||
ifneq (,$(findstring armv7,$(host)))
|
||||
x264-configure-option+= --extra-cflags="-arch $$ARCH -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp -isysroot $$SYSROOT_PATH"
|
||||
XCFLAGS+= -mfpu=neon -mfloat-abi=softfp
|
||||
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
|
||||
x264-configure-option+= --extra-cflags="${XCFLAGS}"
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(x264_dir)/configure:
|
||||
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_BUILD_DIR)/$(x264_dir)/configure: $(BUILDER_SRC_DIR)/$(x264_dir)/patched
|
||||
mkdir -p $(BUILDER_BUILD_DIR)/$(x264_dir)
|
||||
cd $(BUILDER_BUILD_DIR)/$(x264_dir)/ \
|
||||
&& rsync -av --exclude ".git" $(BUILDER_SRC_DIR)/$(x264_dir)/* .
|
||||
&& rsync -rvLpgoc --exclude ".git" $(BUILDER_SRC_DIR)/$(x264_dir)/* .
|
||||
|
||||
$(BUILDER_BUILD_DIR)/$(x264_dir)/config.mak: $(BUILDER_BUILD_DIR)/$(x264_dir)/configure
|
||||
cd $(BUILDER_BUILD_DIR)/$(x264_dir)/ \
|
||||
&& host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& ./configure --prefix=$(prefix) ${x264-configure-option}
|
||||
&& CC="$$CC" STRINGS="$$STRINGS" ./configure --prefix=$(prefix) $(x264-configure-option)
|
||||
|
||||
build-x264: $(BUILDER_BUILD_DIR)/$(x264_dir)/config.mak
|
||||
cd $(BUILDER_BUILD_DIR)/$(x264_dir) make && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(x264_dir) \
|
||||
&& host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& make STRIP="$$STRIP" AR="$$AR -r " RANLIB="$$RANLIB" CC="$$CC" STRINGS="$$STRINGS" && make STRIP="$$STRIP" AR="$$AR" RANLIB="$$RANLIB" STRINGS="$$STRINGS" install
|
||||
|
||||
clean-x264:
|
||||
cd $(BUILDER_BUILD_DIR)/$(x264_dir) && make clean
|
||||
|
|
@ -67,7 +65,7 @@ clean-x264:
|
|||
veryclean-x264:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(x264_dir) && make distclean
|
||||
cd $(BUILDER_SRC_DIR)/$(x264_dir)/ \
|
||||
&& git checkout common/arm/asm.S \
|
||||
&& git clean -f && git reset --hard \
|
||||
&& rm -f patched
|
||||
rm -rf $(BUILDER_BUILD_DIR)/$(x264_dir)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,136 @@
|
|||
diff --git a/common/arm/asm.S b/common/arm/asm.S
|
||||
index 8e70403..259bb92 100644
|
||||
--- a/common/arm/asm.S
|
||||
+++ b/common/arm/asm.S
|
||||
@@ -47,6 +47,7 @@ ELF .eabi_attribute 25, \val
|
||||
.endm
|
||||
diff --git a/common/arm/cpu-a.S b/common/arm/cpu-a.S
|
||||
index a459553..bc91505 100644
|
||||
--- a/common/arm/cpu-a.S
|
||||
+++ b/common/arm/cpu-a.S
|
||||
@@ -26,7 +26,7 @@
|
||||
#include "asm.S"
|
||||
|
||||
.macro function name
|
||||
+ .align 2
|
||||
.global EXTERN_ASM\name
|
||||
EXTERN_ASM\name:
|
||||
ELF .hidden \name
|
||||
.fpu neon
|
||||
-.align
|
||||
+// .align
|
||||
|
||||
// done in gas because .fpu neon overrides the refusal to assemble
|
||||
// instructions the selected -march/-mcpu doesn't support
|
||||
@@ -95,7 +95,7 @@ average_loop:
|
||||
sub r2, r2, r1
|
||||
cmpgt r2, #30 << 3 // assume context switch if it took over 30 cycles
|
||||
addle r3, r3, r2
|
||||
- subles ip, ip, #1
|
||||
+ suble ip, ip, #1
|
||||
bgt average_loop
|
||||
|
||||
// disable counters if we enabled them
|
||||
diff --git a/common/arm/mc-a.S b/common/arm/mc-a.S
|
||||
index 507bbba..d5554be 100644
|
||||
--- a/common/arm/mc-a.S
|
||||
+++ b/common/arm/mc-a.S
|
||||
@@ -166,7 +166,7 @@ function x264_pixel_avg_\w\()x\h\()_neon
|
||||
ldr ip, [sp, #8]
|
||||
push {r4-r6,lr}
|
||||
cmp ip, #32
|
||||
- ldrd r4, [sp, #16]
|
||||
+ ldrd r4, r5, [sp, #16]
|
||||
mov lr, #\h
|
||||
beq x264_pixel_avg_w\w\()_neon
|
||||
rsbs r6, ip, #64
|
||||
@@ -446,7 +446,7 @@ avg2_w20_loop:
|
||||
.ifc \type, full
|
||||
ldr lr, [r4, #32] // denom
|
||||
.endif
|
||||
- ldrd r4, [r4, #32+4] // scale, offset
|
||||
+ ldrd r4, r5, [r4, #32+4] // scale, offset
|
||||
vdup.16 q0, r4
|
||||
vdup.16 q1, r5
|
||||
.ifc \type, full
|
||||
@@ -815,7 +815,7 @@ copy_w16_aligned_loop:
|
||||
// int dx, int dy, int i_width, int i_height );
|
||||
function x264_mc_chroma_neon
|
||||
push {r4-r6, lr}
|
||||
- ldrd r4, [sp, #16]
|
||||
+ ldrd r4, r5, [sp, #16]
|
||||
ldr r6, [sp, #24]
|
||||
|
||||
asr lr, r5, #3
|
||||
@@ -1271,8 +1271,8 @@ filter_h_loop:
|
||||
function x264_frame_init_lowres_core_neon
|
||||
push {r4-r10,lr}
|
||||
vpush {d8-d15}
|
||||
- ldrd r4, [sp, #96]
|
||||
- ldrd r6, [sp, #104]
|
||||
+ ldrd r4, r5, [sp, #96]
|
||||
+ ldrd r6, r7, [sp, #104]
|
||||
ldr lr, [sp, #112]
|
||||
sub r10, r6, r7 // dst_stride - width
|
||||
and r10, r10, #~15
|
||||
diff --git a/common/arm/pixel-a.S b/common/arm/pixel-a.S
|
||||
index 8bce3b6..0784ae6 100644
|
||||
--- a/common/arm/pixel-a.S
|
||||
+++ b/common/arm/pixel-a.S
|
||||
@@ -328,9 +328,9 @@ SAD_FUNC_DUAL 16, 16
|
||||
function x264_pixel_sad_x\x\()_\w\()x\h\()_neon
|
||||
push {r6-r7,lr}
|
||||
.if \x == 3
|
||||
- ldrd r6, [sp, #12]
|
||||
+ ldrd r6, r7, [sp, #12]
|
||||
.else
|
||||
- ldrd r6, [sp, #16]
|
||||
+ ldrd r6, r7, [sp, #16]
|
||||
ldr r12, [sp, #12]
|
||||
.endif
|
||||
mov lr, #FENC_STRIDE
|
||||
@@ -596,7 +596,7 @@ function x264_pixel_var2_8x8_neon
|
||||
vadd.s32 d1, d2, d3
|
||||
vpadd.s32 d0, d0, d1
|
||||
|
||||
- vmov.32 r0, r1, d0
|
||||
+ vmov r0, r1, d0
|
||||
vst1.32 {d0[1]}, [ip,:32]
|
||||
mul r0, r0, r0
|
||||
sub r0, r1, r0, lsr #6
|
||||
diff --git a/common/arm/predict-a.S b/common/arm/predict-a.S
|
||||
index af65bd7..8cdaf50 100644
|
||||
--- a/common/arm/predict-a.S
|
||||
+++ b/common/arm/predict-a.S
|
||||
@@ -181,9 +181,9 @@ function x264_predict_4x4_ddl_neon
|
||||
|
||||
function x264_predict_8x8_dc_neon
|
||||
mov ip, #0
|
||||
- ldrd r2, [r1, #8]
|
||||
+ ldrd r2, r3, [r1, #8]
|
||||
push {r4-r5,lr}
|
||||
- ldrd r4, [r1, #16]
|
||||
+ ldrd r4, r5, [r1, #16]
|
||||
lsl r3, r3, #8
|
||||
ldrb lr, [r1, #7]
|
||||
usad8 r2, r2, ip
|
||||
diff --git a/common/arm/quant-a.S b/common/arm/quant-a.S
|
||||
index e851562..c159f9e 100644
|
||||
--- a/common/arm/quant-a.S
|
||||
+++ b/common/arm/quant-a.S
|
||||
@@ -271,7 +271,7 @@ dequant_4x4_dc_rshift:
|
||||
|
||||
// int coeff_last( int16_t *l )
|
||||
function x264_coeff_last4_arm
|
||||
- ldrd r2, [r0]
|
||||
+ ldrd r2, r3, [r0]
|
||||
subs r0, r3, #0
|
||||
movne r0, #2
|
||||
movne r2, r3
|
||||
@@ -300,7 +300,7 @@ function x264_coeff_last\size\()_neon
|
||||
|
||||
subs r1, ip, r1, lsr #2
|
||||
addge r0, r1, #\size - 8
|
||||
- sublts r0, r3, r0, lsr #2
|
||||
+ sublt r0, r3, r0, lsr #2
|
||||
movlt r0, #0
|
||||
bx lr
|
||||
.endfunc
|
||||
@@ -349,7 +349,7 @@ function x264_coeff_last64_neon
|
||||
|
||||
subs r1, ip, r1
|
||||
addge r0, r1, #32
|
||||
- sublts r0, ip, r0
|
||||
+ sublt r0, ip, r0
|
||||
movlt r0, #0
|
||||
bx lr
|
||||
.endfunc
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile:
|
|||
cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/\
|
||||
&& host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& cmake $(BUILDER_SRC_DIR)/$(zrtpcpp_dir) -Denable-ccrtp=false -DCMAKE_TOOLCHAIN_FILE=$(BUILDER_SRC_DIR)build/iphone-toolchain.cmake \
|
||||
-LH -Wdev -DCMAKE_C_COMPILER=$$SDK_BIN_PATH/gcc -DCMAKE_CXX_COMPILER=$$SDK_BIN_PATH/g++ \
|
||||
-LH -Wdev -DCMAKE_C_COMPILER=`xcrun --find clang` -DCMAKE_CXX_COMPILER=`xcrun --find clang` \
|
||||
-DCMAKE_SYSTEM_PROCESSOR=$$ARCH -DCMAKE_C_FLAGS="$$COMMON_FLAGS" -DCMAKE_CXX_FLAGS="$$COMMON_FLAGS" \
|
||||
-DCMAKE_INSTALL_PREFIX=$(prefix) -DCMAKE_FIND_ROOT_PATH="$(prefix) -DBUILD_STATIC=ON "
|
||||
# Used toolchain: $(TC)
|
||||
|
|
@ -12,7 +12,9 @@ $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile:
|
|||
|
||||
build-zrtpcpp: $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir)/Makefile
|
||||
@echo "Build ZRTP - prefix $(prefix)"
|
||||
cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make VERBOSE=1 && make install
|
||||
cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) \
|
||||
&& host_alias=$(host) . $(BUILDER_SRC_DIR)/build/$(config_site) \
|
||||
&& make VERBOSE=1 && make install
|
||||
|
||||
clean-zrtpcpp:
|
||||
-cd $(BUILDER_BUILD_DIR)/$(zrtpcpp_dir) && make clean
|
||||
|
|
|
|||
|
|
@ -27,11 +27,11 @@ else
|
|||
exit
|
||||
fi
|
||||
echo "Loading config.site for iPhone platform=${PLATFORM} version=${SDK_VERSION}"
|
||||
XCODE_ROOT=/Applications/Xcode.app
|
||||
XCODE_DEV_PATH=`xcode-select -print-path`
|
||||
#new path with Xcode 4.3:
|
||||
if test -d ${XCODE_ROOT}/Contents/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs ; then
|
||||
SDK_PATH_LIST=`ls -drt ${XCODE_ROOT}/Contents/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*`
|
||||
SDK_BIN_PATH=${XCODE_ROOT}/Contents/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin
|
||||
if test -d ${XCODE_DEV_PATH}/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs ; then
|
||||
SDK_PATH_LIST=`ls -drt ${XCODE_DEV_PATH}/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*`
|
||||
SDK_BIN_PATH=${XCODE_DEV_PATH}/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin
|
||||
else
|
||||
SDK_PATH_LIST=`ls -drt /Developer/Platforms/iPhone${PLATFORM}.platform/Developer/SDKs/iPhone${PLATFORM}*`
|
||||
SDK_BIN_PATH=/Developer/Platforms/iPhone${PLATFORM}.platform/Developer/usr/bin
|
||||
|
|
@ -39,13 +39,20 @@ fi
|
|||
|
||||
for SYSROOT_PATH in $SDK_PATH_LIST ; do echo $SYSROOT_PATH ; done ;
|
||||
echo "Selecting SDK path = ${SYSROOT_PATH}"
|
||||
COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE=1 -D__IOS"
|
||||
CC="${SDK_BIN_PATH}/gcc -std=c99 $COMMON_FLAGS"
|
||||
OBJC="${SDK_BIN_PATH}/gcc -std=c99 $COMMON_FLAGS"
|
||||
CXX="${SDK_BIN_PATH}/g++ $COMMON_FLAGS"
|
||||
LD="${SDK_BIN_PATH}/ld -arch ${ARCH}"
|
||||
AR=${SDK_BIN_PATH}/ar
|
||||
RANLIB=${SDK_BIN_PATH}/ranlib
|
||||
|
||||
COMMON_FLAGS=" -arch ${ARCH} ${MCPU} -isysroot ${SYSROOT_PATH} -miphoneos-version-min=${SDK_VERSION} -DTARGET_OS_IPHONE=1 -D__IOS -fms-extensions"
|
||||
CC="xcrun clang -std=c99 $COMMON_FLAGS"
|
||||
OBJC="xcrun clang -std=c99 $COMMON_FLAGS"
|
||||
CXX="xcrun clang++ $COMMON_FLAGS"
|
||||
LD="xcrun ld -arch ${ARCH}"
|
||||
AR="xcrun ar"
|
||||
RANLIB="xcrun ranlib"
|
||||
STRIP="xcrun strip"
|
||||
NM="xcrun nm"
|
||||
|
||||
CPPFLAGS="-Dasm=__asm"
|
||||
OBJCFLAGS="-x objective-c -fexceptions -gdwarf-2 -fobjc-abi-version=2 -fobjc-legacy-dispatch"
|
||||
#Force install script to use -C so that header files don't get re-written if not changed.
|
||||
INSTALL_DATA="ginstall -C"
|
||||
|
||||
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue