mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-17 11:08:06 +00:00
Continue iPad work
Clean & fix memory leaks
This commit is contained in:
parent
7984dc6931
commit
af863e6e8e
25 changed files with 258 additions and 411 deletions
|
|
@ -74,7 +74,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar:@"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar: @"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -18,18 +18,25 @@
|
|||
*/
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "UICompositeViewController.h"
|
||||
|
||||
#import "UIModalViewController.h"
|
||||
@protocol ContactDetailsLabelViewDelegate <NSObject>
|
||||
|
||||
@interface ContactDetailsLabelViewController : UIModalViewController<UITableViewDelegate, UITableViewDataSource> {
|
||||
- (void)changeContactDetailsLabel:(NSString*)label;
|
||||
|
||||
@end
|
||||
|
||||
@interface ContactDetailsLabelViewController : UIViewController<UITableViewDelegate, UITableViewDataSource, UICompositeViewDelegate> {
|
||||
NSDictionary *dataList;
|
||||
UITableView *tableView;
|
||||
NSString *selectedData;
|
||||
id<ContactDetailsLabelViewDelegate> delegate;
|
||||
}
|
||||
|
||||
@property (nonatomic, copy) NSString *selectedData;
|
||||
@property (nonatomic, retain) NSDictionary *dataList;
|
||||
@property (nonatomic, retain) IBOutlet UITableView *tableView;
|
||||
@property (nonatomic, retain) id<ContactDetailsLabelViewDelegate> delegate;
|
||||
|
||||
- (IBAction)onBackClick:(id)event;
|
||||
|
||||
|
|
|
|||
|
|
@ -21,12 +21,26 @@
|
|||
|
||||
#import "UACellBackgroundView.h"
|
||||
#import "UILinphone.h"
|
||||
#import "PhoneMainView.h"
|
||||
|
||||
@implementation ContactDetailsLabelViewController
|
||||
|
||||
@synthesize dataList;
|
||||
@synthesize tableView;
|
||||
@synthesize selectedData;
|
||||
@synthesize delegate;
|
||||
|
||||
|
||||
#pragma mark - Lifecycle Functions
|
||||
|
||||
- (void)dealloc {
|
||||
[selectedData release];
|
||||
[dataList release];
|
||||
[tableView release];
|
||||
[delegate release];
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - ViewController Functions
|
||||
|
|
@ -37,6 +51,34 @@
|
|||
}
|
||||
|
||||
|
||||
#pragma mark - UICompositeViewDelegate Functions
|
||||
|
||||
static UICompositeViewDescription *compositeDescription = nil;
|
||||
|
||||
+ (UICompositeViewDescription *)compositeViewDescription {
|
||||
if(compositeDescription == nil) {
|
||||
compositeDescription = [[UICompositeViewDescription alloc] init:@"ContactDetailsLabel"
|
||||
content:@"ContactDetailsLabelViewController"
|
||||
stateBar:nil
|
||||
stateBarEnabled:false
|
||||
tabBar:@"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:true
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
}
|
||||
|
||||
|
||||
#pragma mark -
|
||||
|
||||
- (void)dismiss {
|
||||
if([[[PhoneMainView instance] currentView] equal:[ContactDetailsLabelViewController compositeViewDescription]]) {
|
||||
[[PhoneMainView instance] popCurrentView];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - Property Functions
|
||||
|
||||
- (void)setDataList:(NSDictionary *)adatalist {
|
||||
|
|
@ -56,6 +98,7 @@
|
|||
[tableView reloadData];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - UITableViewDataSource Functions
|
||||
|
||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
|
||||
|
|
@ -90,7 +133,8 @@
|
|||
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
NSString* key = [[dataList allKeys] objectAtIndex:[indexPath row]];
|
||||
[self setSelectedData:key];
|
||||
[self dismiss:key];
|
||||
[delegate changeContactDetailsLabel:key];
|
||||
[self dismiss];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@
|
|||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="IBUIImageView" id="868223268">
|
||||
<reference key="NSNextResponder" ref="786589861"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<int key="NSvFlags">290</int>
|
||||
<string key="NSFrameSize">{320, 58}</string>
|
||||
<reference key="NSSuperview" ref="786589861"/>
|
||||
<reference key="NSWindow"/>
|
||||
|
|
@ -133,7 +133,6 @@
|
|||
<string key="NSFrame">{{0, 59}, {320, 401}}</string>
|
||||
<reference key="NSSuperview" ref="1031663480"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor">
|
||||
<int key="NSColorSpace">10</int>
|
||||
|
|
|
|||
|
|
@ -24,11 +24,10 @@
|
|||
#import "UIContactDetailsHeader.h"
|
||||
#import "UIContactDetailsFooter.h"
|
||||
|
||||
@interface ContactDetailsTableViewController : UITableViewController<UIModalViewDelegate, UITextFieldDelegate> {
|
||||
@interface ContactDetailsTableViewController : UITableViewController<ContactDetailsLabelViewDelegate, UITextFieldDelegate> {
|
||||
@private
|
||||
ABRecordRef contact;
|
||||
NSMutableArray *dataCache;
|
||||
ContactDetailsLabelViewController *contactDetailsLabelViewController;
|
||||
NSMutableArray *labelArray;
|
||||
NSIndexPath *editingIndexPath;
|
||||
@public
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@
|
|||
#import "ContactDetailsTableViewController.h"
|
||||
#import "PhoneMainView.h"
|
||||
#import "UIEditableTableViewCell.h"
|
||||
#import "UIView+ModalStack.h"
|
||||
#import "UACellBackgroundView.h"
|
||||
#import "UILinphone.h"
|
||||
#import "OrderedDictionary.h"
|
||||
|
|
@ -61,7 +60,6 @@
|
|||
#pragma mark - Lifecycle Functions
|
||||
|
||||
- (void)initContactDetailsTableViewController {
|
||||
|
||||
dataCache = [[NSMutableArray alloc] init];
|
||||
labelArray = [[NSMutableArray alloc] initWithObjects:
|
||||
@"Linphone",
|
||||
|
|
@ -70,6 +68,7 @@
|
|||
[NSString stringWithString:(NSString*)kABPersonPhoneMainLabel], nil];
|
||||
headerController = [[UIContactDetailsHeader alloc] init];
|
||||
footerController = [[UIContactDetailsFooter alloc] init];
|
||||
editingIndexPath = nil;
|
||||
}
|
||||
|
||||
- (id)init {
|
||||
|
|
@ -88,7 +87,13 @@
|
|||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc {
|
||||
- (void)dealloc {
|
||||
if(contact != nil && ABRecordGetRecordID(contact) == kABRecordInvalidID) {
|
||||
CFRelease(contact);
|
||||
}
|
||||
if(editingIndexPath != nil) {
|
||||
[editingIndexPath release];
|
||||
}
|
||||
[labelArray release];
|
||||
[dataCache release];
|
||||
[headerController release];
|
||||
|
|
@ -105,27 +110,8 @@
|
|||
[self.tableView setBackgroundColor:[UIColor clearColor]]; // Can't do it in Xib: issue with ios4
|
||||
}
|
||||
|
||||
- (void)viewWillAppear:(BOOL)animated {
|
||||
[super viewWillAppear:animated];
|
||||
}
|
||||
|
||||
- (void)viewWillDisappear:(BOOL)animated {
|
||||
[super viewWillDisappear:animated];
|
||||
if(contactDetailsLabelViewController != nil) {
|
||||
[[[self view] superview] removeModalView:[contactDetailsLabelViewController view]];
|
||||
[editingIndexPath release];
|
||||
editingIndexPath = nil;
|
||||
[contactDetailsLabelViewController release];
|
||||
contactDetailsLabelViewController = nil;
|
||||
}
|
||||
}
|
||||
|
||||
- (void)viewDidDisappear:(BOOL)animated {
|
||||
[super viewDidDisappear:animated];
|
||||
if(contact != nil && ABRecordGetRecordID(contact) == kABRecordInvalidID) {
|
||||
CFRelease(contact);
|
||||
}
|
||||
contact = nil;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -344,6 +330,9 @@
|
|||
#pragma mark - Property Functions
|
||||
|
||||
- (void)setContact:(ABRecordRef)acontact {
|
||||
if(contact != nil && ABRecordGetRecordID(contact) == kABRecordInvalidID) {
|
||||
CFRelease(contact);
|
||||
}
|
||||
self->contact = acontact;
|
||||
[self loadData];
|
||||
}
|
||||
|
|
@ -490,13 +479,16 @@
|
|||
CFRelease(lMap);
|
||||
}
|
||||
if(key != nil) {
|
||||
contactDetailsLabelViewController = [[ContactDetailsLabelViewController alloc] initWithNibName:@"ContactDetailsLabelViewController"
|
||||
bundle:[NSBundle mainBundle]];
|
||||
[contactDetailsLabelViewController setSelectedData:key];
|
||||
[contactDetailsLabelViewController setDataList:[self getLocalizedLabels]];
|
||||
[contactDetailsLabelViewController setModalDelegate:self];
|
||||
if(editingIndexPath != nil) {
|
||||
[editingIndexPath release];
|
||||
}
|
||||
editingIndexPath = [indexPath copy];
|
||||
[[[self view] superview] addModalView:[contactDetailsLabelViewController view]];
|
||||
ContactDetailsLabelViewController *controller = DYNAMIC_CAST([[PhoneMainView instance] changeCurrentView:[ContactDetailsLabelViewController compositeViewDescription] push:TRUE], ContactDetailsLabelViewController);
|
||||
if(controller != nil) {
|
||||
[controller setDataList:[self getLocalizedLabels]];
|
||||
[controller setSelectedData:key];
|
||||
[controller setDelegate:self];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -604,11 +596,9 @@
|
|||
}
|
||||
|
||||
|
||||
#pragma mark - UIModalViewDeletage Functions
|
||||
#pragma mark - ContactDetailsLabelDelegate Functions
|
||||
|
||||
- (void)modalViewDismiss:(UIModalViewController*)controller value:(id)value {
|
||||
[[[self view]superview] removeModalView:[contactDetailsLabelViewController view]];
|
||||
contactDetailsLabelViewController = nil;
|
||||
- (void)changeContactDetailsLabel:(NSString *)value {
|
||||
if(value != nil) {
|
||||
NSMutableArray *sectionDict = [dataCache objectAtIndex:[editingIndexPath section]];
|
||||
Entry *entry = [sectionDict objectAtIndex:[editingIndexPath row]];
|
||||
|
|
@ -617,7 +607,7 @@
|
|||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
int index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]);
|
||||
ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)((NSString*)value), index);
|
||||
ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)(value), index);
|
||||
ABRecordSetValue(contact, kABPersonPhoneProperty, lMap, nil);
|
||||
CFRelease(lMap);
|
||||
} else if([editingIndexPath section] == 1) {
|
||||
|
|
@ -625,7 +615,7 @@
|
|||
ABMutableMultiValueRef lMap = ABMultiValueCreateMutableCopy(lcMap);
|
||||
CFRelease(lcMap);
|
||||
int index = ABMultiValueGetIndexForIdentifier(lMap, [entry identifier]);
|
||||
ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)((NSString*)value), index);
|
||||
ABMultiValueReplaceLabelAtIndex(lMap, (CFStringRef)(value), index);
|
||||
ABRecordSetValue(contact, kABPersonInstantMessageProperty, lMap, nil);
|
||||
CFRelease(lMap);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -141,6 +141,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
|
||||
- (void)newContact {
|
||||
[LinphoneLogger logc:LinphoneLoggerLog format:"New contact"];
|
||||
self->contact = NULL;
|
||||
[self resetData];
|
||||
self->contact = ABPersonCreate();
|
||||
[tableController setContact:self->contact];
|
||||
[self enableEdit:FALSE];
|
||||
|
|
@ -149,6 +151,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
|
||||
- (void)newContact:(NSString*)address {
|
||||
[LinphoneLogger logc:LinphoneLoggerLog format:"New contact"];
|
||||
self->contact = NULL;
|
||||
[self resetData];
|
||||
self->contact = ABPersonCreate();
|
||||
[tableController setContact:self->contact];
|
||||
[tableController addSipField:address];
|
||||
|
|
@ -158,6 +162,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
|
||||
- (void)editContact:(ABRecordRef)acontact {
|
||||
[LinphoneLogger logc:LinphoneLoggerLog format:"Edit contact %p", acontact];
|
||||
self->contact = NULL;
|
||||
[self resetData];
|
||||
self->contact = ABAddressBookGetPersonWithRecordID(addressBook, ABRecordGetRecordID(acontact));
|
||||
[tableController setContact:self->contact];
|
||||
[self enableEdit:FALSE];
|
||||
|
|
@ -166,6 +172,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
|
||||
- (void)editContact:(ABRecordRef)acontact address:(NSString*)address {
|
||||
[LinphoneLogger logc:LinphoneLoggerLog format:"Edit contact %p", acontact];
|
||||
self->contact = NULL;
|
||||
[self resetData];
|
||||
self->contact = ABAddressBookGetPersonWithRecordID(addressBook, ABRecordGetRecordID(acontact));
|
||||
[tableController setContact:self->contact];
|
||||
[tableController addSipField:address];
|
||||
|
|
@ -178,6 +186,8 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
|
||||
- (void)setContact:(ABRecordRef)acontact {
|
||||
[LinphoneLogger logc:LinphoneLoggerLog format:"Set contact %p", acontact];
|
||||
self->contact = NULL;
|
||||
[self resetData];
|
||||
self->contact = ABAddressBookGetPersonWithRecordID(addressBook, ABRecordGetRecordID(acontact));
|
||||
[tableController setContact:self->contact];
|
||||
[self disableEdit:FALSE];
|
||||
|
|
@ -211,9 +221,6 @@ static void sync_address_book (ABAddressBookRef addressBook, CFDictionaryRef inf
|
|||
if ([[UIDevice currentDevice].systemVersion doubleValue] < 5.0) {
|
||||
[tableController viewWillDisappear:animated];
|
||||
}
|
||||
[self disableEdit:FALSE];
|
||||
self->contact = NULL;
|
||||
[self resetData];
|
||||
}
|
||||
|
||||
- (void)viewWillAppear:(BOOL)animated {
|
||||
|
|
@ -257,7 +264,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar:@"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar:@"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar:@"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar:@"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -19,26 +19,29 @@
|
|||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#import "UIModalViewController.h"
|
||||
|
||||
#import "UICompositeViewController.h"
|
||||
#include "linphonecore.h"
|
||||
|
||||
typedef enum _IncomingCallStates {
|
||||
IncomingCall_Accepted,
|
||||
IncomingCall_Decline,
|
||||
IncomingCall_Aborted
|
||||
} IncomingCallStats;
|
||||
@protocol IncomingCallViewDelegate <NSObject>
|
||||
|
||||
@interface IncomingCallViewController : UIModalViewController {
|
||||
- (void)incomingCallAccepted:(LinphoneCall*)call;
|
||||
- (void)incomingCallDeclined:(LinphoneCall*)call;
|
||||
- (void)incomingCallAborted:(LinphoneCall*)call;
|
||||
|
||||
@end
|
||||
|
||||
@interface IncomingCallViewController : UIViewController <UICompositeViewDelegate> {
|
||||
@private
|
||||
UILabel* addressLabel;
|
||||
UIImageView* avatarImage;
|
||||
LinphoneCall *call;
|
||||
id<IncomingCallViewDelegate> delegate;
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) IBOutlet UILabel* addressLabel;
|
||||
@property (nonatomic, retain) IBOutlet UIImageView* avatarImage;
|
||||
@property (nonatomic, assign) LinphoneCall* call;
|
||||
@property (nonatomic, retain) id<IncomingCallViewDelegate> delegate;
|
||||
|
||||
- (IBAction)onAcceptClick:(id) event;
|
||||
- (IBAction)onDeclineClick:(id) event;
|
||||
|
|
|
|||
|
|
@ -20,13 +20,14 @@
|
|||
#import "IncomingCallViewController.h"
|
||||
#import "LinphoneManager.h"
|
||||
#import "FastAddressBook.h"
|
||||
#import "PhoneMainView.h"
|
||||
|
||||
@implementation IncomingCallViewController
|
||||
|
||||
@synthesize addressLabel;
|
||||
@synthesize avatarImage;
|
||||
@synthesize call;
|
||||
|
||||
@synthesize delegate;
|
||||
|
||||
#pragma mark - Lifecycle Functions
|
||||
|
||||
|
|
@ -37,6 +38,9 @@
|
|||
- (void)dealloc {
|
||||
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
||||
|
||||
[avatarImage release];
|
||||
[addressLabel release];
|
||||
[delegate release];
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
|
|
@ -50,7 +54,6 @@
|
|||
selector:@selector(callUpdateEvent:)
|
||||
name:@"LinphoneCallUpdate"
|
||||
object:nil];
|
||||
[self callUpdate:call state:linphone_call_get_state(call)];
|
||||
}
|
||||
|
||||
- (void)viewWillDisappear:(BOOL)animated {
|
||||
|
|
@ -62,6 +65,25 @@
|
|||
}
|
||||
|
||||
|
||||
#pragma mark - UICompositeViewDelegate Functions
|
||||
|
||||
static UICompositeViewDescription *compositeDescription = nil;
|
||||
|
||||
+ (UICompositeViewDescription *)compositeViewDescription {
|
||||
if(compositeDescription == nil) {
|
||||
compositeDescription = [[UICompositeViewDescription alloc] init:@"IncomingCall"
|
||||
content:@"IncomingCallViewController"
|
||||
stateBar:nil
|
||||
stateBarEnabled:false
|
||||
tabBar:nil
|
||||
tabBarEnabled:false
|
||||
fullscreen:false
|
||||
landscapeMode:true
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Event Functions
|
||||
|
||||
|
|
@ -76,16 +98,16 @@
|
|||
|
||||
- (void)callUpdate:(LinphoneCall *)acall state:(LinphoneCallState)astate {
|
||||
if(call == acall && (astate == LinphoneCallEnd || astate == LinphoneCallError)) {
|
||||
[self dismiss: [NSNumber numberWithInt: IncomingCall_Aborted]];
|
||||
[delegate incomingCallAborted:call];
|
||||
[self dismiss];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Property Functions
|
||||
|
||||
- (void)setCall:(LinphoneCall*)acall {
|
||||
call = acall;
|
||||
[self update];
|
||||
- (void)dismiss {
|
||||
if([[[PhoneMainView instance] currentView] equal:[IncomingCallViewController compositeViewDescription]]) {
|
||||
[[PhoneMainView instance] popCurrentView];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)update {
|
||||
|
|
@ -131,21 +153,26 @@
|
|||
[addressLabel setText:address];
|
||||
}
|
||||
|
||||
- (LinphoneCall*) getCall {
|
||||
return call;
|
||||
|
||||
#pragma mark - Property Functions
|
||||
|
||||
- (void)setCall:(LinphoneCall*)acall {
|
||||
call = acall;
|
||||
[self update];
|
||||
[self callUpdate:call state:linphone_call_get_state(call)];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - Action Functions
|
||||
|
||||
- (IBAction)onAcceptClick:(id)event {
|
||||
linphone_core_accept_call([LinphoneManager getLc], call);
|
||||
[self dismiss: [NSNumber numberWithInt:IncomingCall_Accepted]];
|
||||
[self dismiss];
|
||||
[delegate incomingCallAccepted:call];
|
||||
}
|
||||
|
||||
- (IBAction)onDeclineClick:(id)event {
|
||||
linphone_core_terminate_call([LinphoneManager getLc], call);
|
||||
[self dismiss: [NSNumber numberWithInt:IncomingCall_Decline]];
|
||||
[self dismiss];
|
||||
[delegate incomingCallDeclined:call];
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -33,15 +33,15 @@
|
|||
<string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
<object class="IBUIView" id="191373211">
|
||||
<object class="IBUIView" id="311908381">
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="IBUIImageView" id="915319957">
|
||||
<reference key="NSNextResponder" ref="191373211"/>
|
||||
<reference key="NSNextResponder" ref="311908381"/>
|
||||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrame">{{0, 20}, {320, 460}}</string>
|
||||
<reference key="NSSuperview" ref="191373211"/>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview" ref="311908381"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="735497316"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
|
|
@ -56,12 +56,12 @@
|
|||
</object>
|
||||
</object>
|
||||
<object class="IBUIView" id="735497316">
|
||||
<reference key="NSNextResponder" ref="191373211"/>
|
||||
<reference key="NSNextResponder" ref="311908381"/>
|
||||
<int key="NSvFlags">290</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="IBUIImageView" id="131610915">
|
||||
<reference key="NSNextResponder" ref="735497316"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<int key="NSvFlags">290</int>
|
||||
<string key="NSFrame">{{0, 49}, {320, 63}}</string>
|
||||
<reference key="NSSuperview" ref="735497316"/>
|
||||
<reference key="NSWindow"/>
|
||||
|
|
@ -76,7 +76,7 @@
|
|||
</object>
|
||||
<object class="IBUIImageView" id="1023112121">
|
||||
<reference key="NSNextResponder" ref="735497316"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<int key="NSvFlags">290</int>
|
||||
<string key="NSFrameSize">{320, 68}</string>
|
||||
<reference key="NSSuperview" ref="735497316"/>
|
||||
<reference key="NSWindow"/>
|
||||
|
|
@ -4512,7 +4512,7 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
</object>
|
||||
<object class="IBUIImageView" id="651495339">
|
||||
<reference key="NSNextResponder" ref="735497316"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<int key="NSvFlags">293</int>
|
||||
<string key="NSFrame">{{0, 96}, {320, 262}}</string>
|
||||
<reference key="NSSuperview" ref="735497316"/>
|
||||
<reference key="NSWindow"/>
|
||||
|
|
@ -4527,7 +4527,7 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
</object>
|
||||
<object class="IBUIImageView" id="632401698">
|
||||
<reference key="NSNextResponder" ref="735497316"/>
|
||||
<int key="NSvFlags">292</int>
|
||||
<int key="NSvFlags">293</int>
|
||||
<string key="NSFrame">{{80, 113}, {160, 170}}</string>
|
||||
<reference key="NSSuperview" ref="735497316"/>
|
||||
<reference key="NSWindow"/>
|
||||
|
|
@ -4541,8 +4541,8 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{0, 20}, {320, 395}}</string>
|
||||
<reference key="NSSuperview" ref="191373211"/>
|
||||
<string key="NSFrameSize">{320, 395}</string>
|
||||
<reference key="NSSuperview" ref="311908381"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1023112121"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
|
|
@ -4550,7 +4550,7 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
<object class="IBUIView" id="442322210">
|
||||
<reference key="NSNextResponder" ref="191373211"/>
|
||||
<reference key="NSNextResponder" ref="311908381"/>
|
||||
<int key="NSvFlags">266</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="IBUIView" id="299451957">
|
||||
|
|
@ -4591,11 +4591,11 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MC41AA</bytes>
|
||||
</object>
|
||||
<object class="NSCustomResource" key="IBUIHighlightedImage">
|
||||
<object class="NSCustomResource" key="IBUIHighlightedBackgroundImage">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">accept_over.png</string>
|
||||
</object>
|
||||
<object class="NSCustomResource" key="IBUINormalImage">
|
||||
<object class="NSCustomResource" key="IBUINormalBackgroundImage">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">accept_default.png</string>
|
||||
</object>
|
||||
|
|
@ -4615,6 +4615,7 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<string key="NSFrame">{{160, 0}, {160, 77}}</string>
|
||||
<reference key="NSSuperview" ref="442322210"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<bool key="IBUIOpaque">NO</bool>
|
||||
<object class="IBUIAccessibilityConfiguration" key="IBUIAccessibilityConfiguration">
|
||||
|
|
@ -4624,11 +4625,11 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<int key="IBUIContentHorizontalAlignment">0</int>
|
||||
<int key="IBUIContentVerticalAlignment">0</int>
|
||||
<reference key="IBUINormalTitleShadowColor" ref="365714543"/>
|
||||
<object class="NSCustomResource" key="IBUIHighlightedImage">
|
||||
<object class="NSCustomResource" key="IBUIHighlightedBackgroundImage">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">decline_over.png</string>
|
||||
</object>
|
||||
<object class="NSCustomResource" key="IBUINormalImage">
|
||||
<object class="NSCustomResource" key="IBUINormalBackgroundImage">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">decline_default.png</string>
|
||||
</object>
|
||||
|
|
@ -4636,41 +4637,26 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<reference key="IBUIFont" ref="246253541"/>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrame">{{0, 403}, {320, 77}}</string>
|
||||
<reference key="NSSuperview" ref="191373211"/>
|
||||
<string key="NSFrame">{{0, 383}, {320, 77}}</string>
|
||||
<reference key="NSSuperview" ref="311908381"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="908036430"/>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<object class="NSColor" key="IBUIBackgroundColor">
|
||||
<int key="NSColorSpace">1</int>
|
||||
<bytes key="NSRGB">MCAxIDAuMTkxOTQ1NDc1NSAwAA</bytes>
|
||||
</object>
|
||||
<bool key="IBUIAutoresizesSubviews">NO</bool>
|
||||
<reference key="IBUIBackgroundColor" ref="84179139"/>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{320, 480}</string>
|
||||
<string key="NSFrameSize">{320, 460}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="915319957"/>
|
||||
<object class="NSColor" key="IBUIBackgroundColor">
|
||||
<int key="NSColorSpace">3</int>
|
||||
<bytes key="NSWhite">MAA</bytes>
|
||||
</object>
|
||||
<bool key="IBUIAutoresizesSubviews">NO</bool>
|
||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||
<reference key="IBUIBackgroundColor" ref="84179139"/>
|
||||
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||
</object>
|
||||
</array>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<array class="NSMutableArray" key="connectionRecords">
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBCocoaTouchOutletConnection" key="connection">
|
||||
<string key="label">view</string>
|
||||
<reference key="source" ref="372490531"/>
|
||||
<reference key="destination" ref="191373211"/>
|
||||
</object>
|
||||
<int key="connectionID">3</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBCocoaTouchOutletConnection" key="connection">
|
||||
<string key="label">avatarImage</string>
|
||||
|
|
@ -4687,6 +4673,14 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
</object>
|
||||
<int key="connectionID">14</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBCocoaTouchOutletConnection" key="connection">
|
||||
<string key="label">view</string>
|
||||
<reference key="source" ref="372490531"/>
|
||||
<reference key="destination" ref="311908381"/>
|
||||
</object>
|
||||
<int key="connectionID">26</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBCocoaTouchEventConnection" key="connection">
|
||||
<string key="label">onDeclineClick:</string>
|
||||
|
|
@ -4726,55 +4720,32 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">1</int>
|
||||
<reference key="object" ref="191373211"/>
|
||||
<int key="objectID">25</int>
|
||||
<reference key="object" ref="311908381"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="915319957"/>
|
||||
<reference ref="735497316"/>
|
||||
<reference ref="442322210"/>
|
||||
<reference ref="735497316"/>
|
||||
<reference ref="915319957"/>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">4</int>
|
||||
<reference key="object" ref="442322210"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="908036430"/>
|
||||
<reference ref="348909292"/>
|
||||
<reference ref="299451957"/>
|
||||
</array>
|
||||
<reference key="parent" ref="191373211"/>
|
||||
<string key="objectName">tabBar</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">5</int>
|
||||
<reference key="object" ref="299451957"/>
|
||||
<reference key="parent" ref="442322210"/>
|
||||
<string key="objectName">mask</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">6</int>
|
||||
<reference key="object" ref="348909292"/>
|
||||
<reference key="parent" ref="442322210"/>
|
||||
<string key="objectName">declineButton</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">7</int>
|
||||
<reference key="object" ref="908036430"/>
|
||||
<reference key="parent" ref="442322210"/>
|
||||
<string key="objectName">acceptButton</string>
|
||||
<int key="objectID">22</int>
|
||||
<reference key="object" ref="915319957"/>
|
||||
<reference key="parent" ref="311908381"/>
|
||||
<string key="objectName">background</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">8</int>
|
||||
<reference key="object" ref="735497316"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="1023112121"/>
|
||||
<reference ref="402572557"/>
|
||||
<reference ref="651495339"/>
|
||||
<reference ref="632401698"/>
|
||||
<reference ref="131610915"/>
|
||||
<reference ref="632401698"/>
|
||||
<reference ref="651495339"/>
|
||||
<reference ref="402572557"/>
|
||||
<reference ref="1023112121"/>
|
||||
</array>
|
||||
<reference key="parent" ref="191373211"/>
|
||||
<reference key="parent" ref="311908381"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">21</int>
|
||||
|
|
@ -4807,10 +4778,33 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<string key="objectName">headerBackground</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">22</int>
|
||||
<reference key="object" ref="915319957"/>
|
||||
<reference key="parent" ref="191373211"/>
|
||||
<string key="objectName">background</string>
|
||||
<int key="objectID">4</int>
|
||||
<reference key="object" ref="442322210"/>
|
||||
<array class="NSMutableArray" key="children">
|
||||
<reference ref="299451957"/>
|
||||
<reference ref="348909292"/>
|
||||
<reference ref="908036430"/>
|
||||
</array>
|
||||
<reference key="parent" ref="311908381"/>
|
||||
<string key="objectName">tabBar</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">5</int>
|
||||
<reference key="object" ref="299451957"/>
|
||||
<reference key="parent" ref="442322210"/>
|
||||
<string key="objectName">mask</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">6</int>
|
||||
<reference key="object" ref="348909292"/>
|
||||
<reference key="parent" ref="442322210"/>
|
||||
<string key="objectName">declineButton</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">7</int>
|
||||
<reference key="object" ref="908036430"/>
|
||||
<reference key="parent" ref="442322210"/>
|
||||
<string key="objectName">acceptButton</string>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
|
|
@ -4819,18 +4813,18 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="-2.CustomClassName">UIResponder</string>
|
||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="12.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="18.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="19.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="21.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="22.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="25.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="4.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="5.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<real value="1" key="6.IBUIButtonInspectorSelectedStateConfigurationMetadataKey"/>
|
||||
<real value="0.0" key="6.IBUIButtonInspectorSelectedStateConfigurationMetadataKey"/>
|
||||
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<real value="1" key="7.IBUIButtonInspectorSelectedStateConfigurationMetadataKey"/>
|
||||
<real value="0.0" key="7.IBUIButtonInspectorSelectedStateConfigurationMetadataKey"/>
|
||||
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
<string key="9.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||
</dictionary>
|
||||
|
|
@ -4838,13 +4832,13 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<nil key="activeLocalization"/>
|
||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">24</int>
|
||||
<int key="maxID">30</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">IncomingCallViewController</string>
|
||||
<string key="superclassName">UIModalViewController</string>
|
||||
<string key="superclassName">UIViewController</string>
|
||||
<dictionary class="NSMutableDictionary" key="actions">
|
||||
<string key="onAcceptClick:">id</string>
|
||||
<string key="onDeclineClick:">id</string>
|
||||
|
|
@ -4878,14 +4872,6 @@ AAgAAAAIAAIACAACAAAAAgAAAAEAAQABAAE</bytes>
|
|||
<string key="minorKey">./Classes/IncomingCallViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">UIModalViewController</string>
|
||||
<string key="superclassName">UIViewController</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/UIModalViewController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
|
|
|
|||
|
|
@ -119,11 +119,12 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
}
|
||||
}
|
||||
{
|
||||
LinphoneAddress *parsed=linphone_core_get_primary_contact_parsed(lc);
|
||||
LinphoneAddress *parsed = linphone_core_get_primary_contact_parsed(lc);
|
||||
if(parsed != NULL) {
|
||||
[self setString: linphone_address_get_display_name(parsed) forKey:@"primary_displayname_preference"];
|
||||
[self setString: linphone_address_get_username(parsed) forKey:@"primary_username_preference"];
|
||||
}
|
||||
linphone_address_destroy(parsed);
|
||||
}
|
||||
{
|
||||
LCSipTransports tp;
|
||||
|
|
@ -320,11 +321,11 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
// add username password
|
||||
LinphoneAddress *from = linphone_address_new(identity);
|
||||
LinphoneAuthInfo *info;
|
||||
if (from !=0){
|
||||
if (from != 0){
|
||||
info=linphone_auth_info_new(linphone_address_get_username(from),NULL,password,NULL,NULL);
|
||||
linphone_core_add_auth_info(lc,info);
|
||||
linphone_address_destroy(from);
|
||||
}
|
||||
linphone_address_destroy(from);
|
||||
|
||||
// configure proxy entries
|
||||
linphone_proxy_config_set_identity(proxyCfg,identity);
|
||||
|
|
@ -425,12 +426,14 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args);
|
|||
// Primary contact
|
||||
NSString* displayname = [self stringForKey:@"primary_displayname_preference"];
|
||||
NSString* username = [self stringForKey:@"primary_username_preference"];
|
||||
LinphoneAddress *parsed=linphone_core_get_primary_contact_parsed(lc);
|
||||
LinphoneAddress *parsed = linphone_core_get_primary_contact_parsed(lc);
|
||||
if(parsed != NULL) {
|
||||
linphone_address_set_display_name(parsed,[displayname cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
linphone_address_set_username(parsed,[username cStringUsingEncoding:[NSString defaultCStringEncoding]]);
|
||||
char *contact = linphone_address_as_string(parsed);
|
||||
linphone_core_set_primary_contact(lc, contact);
|
||||
ms_free(contact);
|
||||
linphone_address_destroy(parsed);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -837,8 +837,9 @@ static LinphoneCoreVTable linphonec_vtable = {
|
|||
if(transfer) {
|
||||
linphone_core_transfer_call([LinphoneManager getLc], linphone_core_get_current_call([LinphoneManager getLc]), normalizedUserName);
|
||||
} else {
|
||||
linphone_core_invite_address_with_params([LinphoneManager getLc], linphoneAddress,lcallParams);
|
||||
linphone_core_invite_address_with_params([LinphoneManager getLc], linphoneAddress, lcallParams);
|
||||
}
|
||||
linphone_address_destroy(linphoneAddress);
|
||||
}
|
||||
linphone_call_params_destroy(lcallParams);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -198,7 +198,7 @@
|
|||
[self startBounceAnimation:@"Bounce" target:historyNotificationView];
|
||||
}];
|
||||
} else {
|
||||
[self startBounceAnimation:@"Bounce" target:chatNotificationView];
|
||||
[self startBounceAnimation:@"Bounce" target:historyNotificationView];
|
||||
}
|
||||
}
|
||||
[historyNotificationLabel setText:[NSString stringWithFormat:@"%i", missedCall]];
|
||||
|
|
|
|||
|
|
@ -1,39 +0,0 @@
|
|||
/* UIModalViewController.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 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>
|
||||
|
||||
@class UIModalViewController;
|
||||
|
||||
@protocol UIModalViewDelegate <NSObject>
|
||||
|
||||
- (void)modalViewDismiss:(UIModalViewController*)controller value:(id)value;
|
||||
|
||||
@end
|
||||
|
||||
@interface UIModalViewController : UIViewController {
|
||||
BOOL dismissed;
|
||||
id<UIModalViewDelegate> modalDelegate;
|
||||
}
|
||||
|
||||
- (void)setModalDelegate:(id<UIModalViewDelegate>)delegate;
|
||||
- (void)dismiss:(id)value;
|
||||
- (void)dismiss;
|
||||
|
||||
@end
|
||||
|
|
@ -1,90 +0,0 @@
|
|||
/* UIModalViewController.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 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 "UIModalViewController.h"
|
||||
|
||||
@implementation UIModalViewController
|
||||
|
||||
- (void)initUIModalViewController {
|
||||
dismissed = FALSE;
|
||||
}
|
||||
|
||||
- (id)init {
|
||||
self = [super init];
|
||||
if (self) {
|
||||
[self initUIModalViewController];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
|
||||
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
|
||||
if (self) {
|
||||
[self initUIModalViewController];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (id)initWithCoder:(NSCoder *)decoder {
|
||||
self = [super initWithCoder:decoder];
|
||||
if (self) {
|
||||
[self initUIModalViewController];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)hideView {
|
||||
if([self.view superview] !=nil) {
|
||||
if ([[UIDevice currentDevice].systemVersion doubleValue] < 5.0) {
|
||||
[self viewWillDisappear:NO];
|
||||
}
|
||||
[self.view removeFromSuperview];
|
||||
if ([[UIDevice currentDevice].systemVersion doubleValue] < 5.0) {
|
||||
[self viewDidDisappear:NO];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (void)dismiss:(id)value {
|
||||
if(modalDelegate != nil)
|
||||
[modalDelegate modalViewDismiss:self value:value];
|
||||
|
||||
if(!dismissed) {
|
||||
[self hideView];
|
||||
dismissed = true;
|
||||
[self autorelease];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)dismiss{
|
||||
if(modalDelegate != nil)
|
||||
[modalDelegate modalViewDismiss:self value:nil];
|
||||
|
||||
if(!dismissed) {
|
||||
[self hideView];
|
||||
dismissed = true;
|
||||
[self autorelease];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)setModalDelegate:(id<UIModalViewDelegate>)delegate {
|
||||
modalDelegate = delegate;
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
/* UIView+ModalStack.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>
|
||||
|
||||
#import "UIModalViewController.h"
|
||||
|
||||
@interface UIView (ModalStack)
|
||||
|
||||
- (void)addModalView:(UIView*)view;
|
||||
- (void)removeModalView:(UIView*)view;
|
||||
|
||||
@end
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
/* UIView+ModalStack.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 <QuartzCore/QuartzCore.h>
|
||||
|
||||
#import "UIView+ModalStack.h"
|
||||
|
||||
@implementation UIView (ModalStack)
|
||||
|
||||
- (void)addModalView:(UIView*)view {
|
||||
CATransition* trans = [CATransition animation];
|
||||
[trans setType:kCATransitionFade];
|
||||
[trans setDuration:0.35];
|
||||
[trans setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
|
||||
[trans setSubtype:kCATransitionFromRight];
|
||||
[self.layer addAnimation:trans forKey:@"Appear"];
|
||||
|
||||
[self addSubview:view];
|
||||
[self bringSubviewToFront:view];
|
||||
}
|
||||
|
||||
- (void)removeModalView:(UIView*)view {
|
||||
CATransition* trans = [CATransition animation];
|
||||
[trans setType:kCATransitionFade];
|
||||
[trans setDuration:0.35];
|
||||
[trans setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
|
||||
[trans setSubtype:kCATransitionFromRight];
|
||||
[self.layer addAnimation:trans forKey:@"Disappear"];
|
||||
|
||||
[view removeFromSuperview];
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
@ -21,7 +21,6 @@
|
|||
|
||||
#import "LinphoneManager.h"
|
||||
#import "UICompositeViewController.h"
|
||||
#import "UIModalViewController.h"
|
||||
|
||||
#import "FirstLoginViewController.h"
|
||||
#import "IncomingCallViewController.h"
|
||||
|
|
@ -36,8 +35,9 @@
|
|||
#import "SettingsViewController.h"
|
||||
#import "FirstLoginViewController.h"
|
||||
#import "WizardViewController.h"
|
||||
#import "IncomingCallViewController.h"
|
||||
|
||||
@interface PhoneMainView : UIViewController<CallActionSheetDelegate,UIModalViewDelegate> {
|
||||
@interface PhoneMainView : UIViewController<CallActionSheetDelegate, IncomingCallViewDelegate> {
|
||||
@private
|
||||
UICompositeViewController *mainViewController;
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
|
||||
#import "PhoneMainView.h"
|
||||
#import "Utils.h"
|
||||
#import "UIView+ModalStack.h"
|
||||
|
||||
static PhoneMainView* phoneMainViewInstance=nil;
|
||||
|
||||
|
|
@ -232,6 +231,11 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
|
||||
bool canHideInCallView = (linphone_core_get_calls([LinphoneManager getLc]) == NULL);
|
||||
|
||||
// Don't handle call state during incoming call view
|
||||
if([[self currentView] equal:[IncomingCallViewController compositeViewDescription]] && state != LinphoneCallError && state != LinphoneCallEnd) {
|
||||
return;
|
||||
}
|
||||
|
||||
switch (state) {
|
||||
case LinphoneCallIncomingReceived:
|
||||
{
|
||||
|
|
@ -529,18 +533,12 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
|
||||
[[UIApplication sharedApplication] presentLocalNotificationNow:appData->notification];
|
||||
}
|
||||
} else {
|
||||
IncomingCallViewController *controller = [[IncomingCallViewController alloc] init];
|
||||
[controller setWantsFullScreenLayout:TRUE];
|
||||
[controller setCall:call];
|
||||
[controller setModalDelegate:self];
|
||||
if ([[UIDevice currentDevice].systemVersion doubleValue] < 5.0) {
|
||||
[controller viewWillAppear:NO];
|
||||
}
|
||||
[[self view] addModalView:[controller view]];
|
||||
if ([[UIDevice currentDevice].systemVersion doubleValue] < 5.0) {
|
||||
[controller viewDidAppear:NO];
|
||||
}
|
||||
} else {
|
||||
IncomingCallViewController *controller = DYNAMIC_CAST([self changeCurrentView:[IncomingCallViewController compositeViewDescription] push:TRUE],IncomingCallViewController);
|
||||
if(controller != nil) {
|
||||
[controller setCall:call];
|
||||
[controller setDelegate:self];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -599,11 +597,17 @@ static PhoneMainView* phoneMainViewInstance=nil;
|
|||
}
|
||||
|
||||
|
||||
#pragma mark - Modal Functions
|
||||
#pragma mark - IncomingCallDelegate Functions
|
||||
|
||||
- (void)modalViewDismiss:(UIModalViewController*)controller value:(id)value {
|
||||
[controller setModalDelegate:nil];
|
||||
[[self view] removeModalView:[controller view]];
|
||||
- (void)incomingCallAborted:(LinphoneCall*)call {
|
||||
}
|
||||
|
||||
- (void)incomingCallAccepted:(LinphoneCall*)call {
|
||||
linphone_core_accept_call([LinphoneManager getLc], call);
|
||||
}
|
||||
|
||||
- (void)incomingCallDeclined:(LinphoneCall*)call {
|
||||
linphone_core_terminate_call([LinphoneManager getLc], call);
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
@ -345,7 +345,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
tabBar: @"UIMainBar"
|
||||
tabBarEnabled:true
|
||||
fullscreen:false
|
||||
landscapeMode:false
|
||||
landscapeMode:[LinphoneManager runningOnIpad]
|
||||
portraitMode:true];
|
||||
}
|
||||
return compositeDescription;
|
||||
|
|
|
|||
|
|
@ -670,8 +670,6 @@
|
|||
D378906515AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D378906315AC373B00BD776C /* ContactDetailsLabelViewController.m */; };
|
||||
D378906615AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D378906315AC373B00BD776C /* ContactDetailsLabelViewController.m */; };
|
||||
D378906715AC373B00BD776C /* ContactDetailsLabelViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D378906415AC373B00BD776C /* ContactDetailsLabelViewController.xib */; };
|
||||
D378907515AC448A00BD776C /* UIView+ModalStack.m in Sources */ = {isa = PBXBuildFile; fileRef = D378907415AC448A00BD776C /* UIView+ModalStack.m */; };
|
||||
D378907615AC448A00BD776C /* UIView+ModalStack.m in Sources */ = {isa = PBXBuildFile; fileRef = D378907415AC448A00BD776C /* UIView+ModalStack.m */; };
|
||||
D37B96B715A1A6F20005CCD2 /* call_state_delete_default.png in Resources */ = {isa = PBXBuildFile; fileRef = D37B96B515A1A6F20005CCD2 /* call_state_delete_default.png */; };
|
||||
D37B96B915A1A6F20005CCD2 /* call_state_delete_over.png in Resources */ = {isa = PBXBuildFile; fileRef = D37B96B615A1A6F20005CCD2 /* call_state_delete_over.png */; };
|
||||
D37C638E15AAD251009D0BAC /* contact_number_over.png in Resources */ = {isa = PBXBuildFile; fileRef = D37C638C15AAD251009D0BAC /* contact_number_over.png */; };
|
||||
|
|
@ -1061,8 +1059,6 @@
|
|||
D3F26BF915986DAD005F9CAB /* history_ok_over.png in Resources */ = {isa = PBXBuildFile; fileRef = D3F26BF615986DAD005F9CAB /* history_ok_over.png */; };
|
||||
D3F26BFC15987083005F9CAB /* header_incoming.png in Resources */ = {isa = PBXBuildFile; fileRef = D3F26BFB15987083005F9CAB /* header_incoming.png */; };
|
||||
D3F34F301599B008005BE94F /* avatar_shadow.png in Resources */ = {isa = PBXBuildFile; fileRef = D3F34F2F1599B008005BE94F /* avatar_shadow.png */; };
|
||||
D3F34F351599C354005BE94F /* UIModalViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F34F341599C354005BE94F /* UIModalViewController.m */; };
|
||||
D3F34F361599C354005BE94F /* UIModalViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F34F341599C354005BE94F /* UIModalViewController.m */; };
|
||||
D3F795D615A582810077328B /* ChatRoomViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F795D415A582800077328B /* ChatRoomViewController.m */; };
|
||||
D3F795D715A582810077328B /* ChatRoomViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D3F795D415A582800077328B /* ChatRoomViewController.m */; };
|
||||
D3F795D815A582810077328B /* ChatRoomViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D3F795D515A582800077328B /* ChatRoomViewController.xib */; };
|
||||
|
|
@ -1653,8 +1649,6 @@
|
|||
D378906215AC373B00BD776C /* ContactDetailsLabelViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContactDetailsLabelViewController.h; sourceTree = "<group>"; };
|
||||
D378906315AC373B00BD776C /* ContactDetailsLabelViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ContactDetailsLabelViewController.m; sourceTree = "<group>"; };
|
||||
D378906415AC373B00BD776C /* ContactDetailsLabelViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ContactDetailsLabelViewController.xib; sourceTree = "<group>"; };
|
||||
D378907415AC448A00BD776C /* UIView+ModalStack.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+ModalStack.m"; sourceTree = "<group>"; };
|
||||
D378907715AC44A300BD776C /* UIView+ModalStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+ModalStack.h"; sourceTree = "<group>"; };
|
||||
D37B96B515A1A6F20005CCD2 /* call_state_delete_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = call_state_delete_default.png; path = Resources/call_state_delete_default.png; sourceTree = "<group>"; };
|
||||
D37B96B615A1A6F20005CCD2 /* call_state_delete_over.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = call_state_delete_over.png; path = Resources/call_state_delete_over.png; sourceTree = "<group>"; };
|
||||
D37C638C15AAD251009D0BAC /* contact_number_over.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = contact_number_over.png; path = Resources/contact_number_over.png; sourceTree = "<group>"; };
|
||||
|
|
@ -1952,8 +1946,6 @@
|
|||
D3F26BF615986DAD005F9CAB /* history_ok_over.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = history_ok_over.png; path = Resources/history_ok_over.png; sourceTree = "<group>"; };
|
||||
D3F26BFB15987083005F9CAB /* header_incoming.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = header_incoming.png; path = Resources/header_incoming.png; sourceTree = "<group>"; };
|
||||
D3F34F2F1599B008005BE94F /* avatar_shadow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = avatar_shadow.png; path = Resources/avatar_shadow.png; sourceTree = "<group>"; };
|
||||
D3F34F331599C354005BE94F /* UIModalViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIModalViewController.h; sourceTree = "<group>"; };
|
||||
D3F34F341599C354005BE94F /* UIModalViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIModalViewController.m; sourceTree = "<group>"; };
|
||||
D3F795D315A582800077328B /* ChatRoomViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatRoomViewController.h; sourceTree = "<group>"; };
|
||||
D3F795D415A582800077328B /* ChatRoomViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatRoomViewController.m; sourceTree = "<group>"; };
|
||||
D3F795D515A582800077328B /* ChatRoomViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = ChatRoomViewController.xib; sourceTree = "<group>"; };
|
||||
|
|
@ -2462,8 +2454,6 @@
|
|||
D3A74E5B15C6922A001500B9 /* UIMainBar~ipad.xib */,
|
||||
2214EBF112F86360002A5394 /* UIMicroButton.h */,
|
||||
2214EBF212F86360002A5394 /* UIMicroButton.m */,
|
||||
D3F34F331599C354005BE94F /* UIModalViewController.h */,
|
||||
D3F34F341599C354005BE94F /* UIModalViewController.m */,
|
||||
D36FB2D31589EF7C0036F6F2 /* UIPauseButton.h */,
|
||||
D36FB2D41589EF7C0036F6F2 /* UIPauseButton.m */,
|
||||
22968A5D12F875C600588287 /* UISpeakerButton.h */,
|
||||
|
|
@ -2479,8 +2469,6 @@
|
|||
D32460E5159D9AAD00BA7F3A /* UITransparentView.m */,
|
||||
340751E5150F38FC00B89C47 /* UIVideoButton.h */,
|
||||
340751E6150F38FD00B89C47 /* UIVideoButton.m */,
|
||||
D378907715AC44A300BD776C /* UIView+ModalStack.h */,
|
||||
D378907415AC448A00BD776C /* UIView+ModalStack.m */,
|
||||
);
|
||||
path = LinphoneUI;
|
||||
sourceTree = "<group>";
|
||||
|
|
@ -4223,7 +4211,6 @@
|
|||
D3EA5411159853750037DC6B /* UIChatCell.m in Sources */,
|
||||
D3F26BF115986B73005F9CAB /* IncomingCallViewController.m in Sources */,
|
||||
D31B4B21159876C0002E6C72 /* UICompositeViewController.m in Sources */,
|
||||
D3F34F351599C354005BE94F /* UIModalViewController.m in Sources */,
|
||||
D31AAF5E159B3919002C6B02 /* InCallTableViewController.m in Sources */,
|
||||
D3211BB0159C4EF10098460B /* UIConferenceHeader.m in Sources */,
|
||||
D32460E6159D9AAD00BA7F3A /* UITransparentView.m in Sources */,
|
||||
|
|
@ -4241,7 +4228,6 @@
|
|||
D37C639B15AADEF6009D0BAC /* ContactDetailsTableViewController.m in Sources */,
|
||||
D3C6526715AC1A8F0092A874 /* UIEditableTableViewCell.m in Sources */,
|
||||
D378906515AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */,
|
||||
D378907515AC448A00BD776C /* UIView+ModalStack.m in Sources */,
|
||||
D3E8F68615ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */,
|
||||
C90FAA7915AF54E6002091CB /* HistoryDetailsViewController.m in Sources */,
|
||||
D3F9A9E215AF100D0045320F /* TPKeyboardAvoidingScrollView.m in Sources */,
|
||||
|
|
@ -4318,7 +4304,6 @@
|
|||
D3EA5412159853750037DC6B /* UIChatCell.m in Sources */,
|
||||
D3F26BF215986B73005F9CAB /* IncomingCallViewController.m in Sources */,
|
||||
D31B4B22159876C0002E6C72 /* UICompositeViewController.m in Sources */,
|
||||
D3F34F361599C354005BE94F /* UIModalViewController.m in Sources */,
|
||||
D31AAF5F159B3919002C6B02 /* InCallTableViewController.m in Sources */,
|
||||
D3211BB1159C4EF10098460B /* UIConferenceHeader.m in Sources */,
|
||||
D32460E7159D9AAD00BA7F3A /* UITransparentView.m in Sources */,
|
||||
|
|
@ -4336,7 +4321,6 @@
|
|||
D37C639C15AADEF6009D0BAC /* ContactDetailsTableViewController.m in Sources */,
|
||||
D3C6526815AC1A8F0092A874 /* UIEditableTableViewCell.m in Sources */,
|
||||
D378906615AC373B00BD776C /* ContactDetailsLabelViewController.m in Sources */,
|
||||
D378907615AC448A00BD776C /* UIView+ModalStack.m in Sources */,
|
||||
D3E8F68715ADE05B0065A226 /* UIContactDetailsFooter.m in Sources */,
|
||||
C90FAA7A15AF54E6002091CB /* HistoryDetailsViewController.m in Sources */,
|
||||
D3F9A9E315AF100D0045320F /* TPKeyboardAvoidingScrollView.m in Sources */,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue