diff --git a/Classes/ChatRoomViewController.m b/Classes/ChatRoomViewController.m index 4a03c94c5..213040ba8 100644 --- a/Classes/ChatRoomViewController.m +++ b/Classes/ChatRoomViewController.m @@ -138,7 +138,7 @@ static UICompositeViewDescription *compositeDescription = nil; object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textReceivedEvent:) - name:kLinphoneTextReceived + name:kLinphoneMessageReceived object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onMessageChange:) @@ -199,13 +199,13 @@ static UICompositeViewDescription *compositeDescription = nil; [self update]; linphone_chat_room_mark_as_read(chatRoom); [self setComposingVisible:linphone_chat_room_is_remote_composing(chatRoom) withDelay:0]; - [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMessageReceived object:self]; } - (void)applicationWillEnterForeground:(NSNotification *)notif { if (chatRoom != nil) { linphone_chat_room_mark_as_read(chatRoom); - [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMessageReceived object:self]; } } @@ -393,7 +393,7 @@ static void message_status(LinphoneChatMessage *msg, LinphoneChatMessageState st if (strcasecmp(cr_from_string, fromStr) == 0) { if ([UIApplication sharedApplication].applicationState != UIApplicationStateBackground) { linphone_chat_room_mark_as_read(room); - [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMessageReceived object:self]; } [tableController addChatEntry:chat]; [tableController scrollToLastUnread:TRUE]; diff --git a/Classes/ChatTableViewController.m b/Classes/ChatTableViewController.m index 0d11fb767..6c87c815f 100644 --- a/Classes/ChatTableViewController.m +++ b/Classes/ChatTableViewController.m @@ -185,7 +185,7 @@ static void chatTable_free_chatrooms(void *data) { data = ms_list_remove(data, chatRoom); // will force a call to [self loadData] - [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMessageReceived object:self]; [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade]; diff --git a/Classes/ChatViewController.m b/Classes/ChatViewController.m index 15c346ce9..4a6209b61 100644 --- a/Classes/ChatViewController.m +++ b/Classes/ChatViewController.m @@ -55,7 +55,7 @@ [super viewWillAppear:animated]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textReceivedEvent:) - name:kLinphoneTextReceived + name:kLinphoneMessageReceived object:nil]; if ([tableController isEditing]) [tableController setEditing:FALSE animated:FALSE]; @@ -65,7 +65,7 @@ - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneTextReceived object:nil]; + [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneMessageReceived object:nil]; } #pragma mark - Event Functions diff --git a/Classes/LinphoneManager.h b/Classes/LinphoneManager.h index 5ad82797f..68b4d2b44 100644 --- a/Classes/LinphoneManager.h +++ b/Classes/LinphoneManager.h @@ -40,7 +40,7 @@ extern NSString *const LINPHONERC_APPLICATION_KEY; extern NSString *const kLinphoneCoreUpdate; extern NSString *const kLinphoneDisplayStatusUpdate; -extern NSString *const kLinphoneTextReceived; +extern NSString *const kLinphoneMessageReceived; extern NSString *const kLinphoneTextComposeEvent; extern NSString *const kLinphoneCallUpdate; extern NSString *const kLinphoneRegistrationUpdate; @@ -107,7 +107,7 @@ typedef struct _LinphoneManagerSounds { @interface LinphoneManager : NSObject { @protected SCNetworkReachabilityRef proxyReachability; - + @private NSTimer* mIterateTimer; NSMutableArray* pushCallIDs; @@ -215,4 +215,4 @@ typedef struct _LinphoneManagerSounds { @property (readonly) InAppProductsManager *iapManager; @property(strong, nonatomic) NSMutableArray *fileTransferDelegates; -@end \ No newline at end of file +@end diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index a73ce1cf3..830c33962 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -56,7 +56,7 @@ NSString *const LINPHONERC_APPLICATION_KEY = @"app"; NSString *const kLinphoneCoreUpdate = @"LinphoneCoreUpdate"; NSString *const kLinphoneDisplayStatusUpdate = @"LinphoneDisplayStatusUpdate"; -NSString *const kLinphoneTextReceived = @"LinphoneTextReceived"; +NSString *const kLinphoneMessageReceived = @"LinphoneMessageReceived"; NSString *const kLinphoneTextComposeEvent = @"LinphoneTextComposeStarted"; NSString *const kLinphoneCallUpdate = @"LinphoneCallUpdate"; NSString *const kLinphoneRegistrationUpdate = @"LinphoneRegistrationUpdate"; @@ -945,7 +945,7 @@ static void linphone_iphone_registration_state(LinphoneCore *lc, LinphoneProxyCo @"call-id" : callID }; - [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneTextReceived object:self userInfo:dict]; + [[NSNotificationCenter defaultCenter] postNotificationName:kLinphoneMessageReceived object:self userInfo:dict]; } static void linphone_iphone_message_received(LinphoneCore *lc, LinphoneChatRoom *room, LinphoneChatMessage *message) { diff --git a/Classes/LinphoneUI/Base.lproj/UIMainBar.xib b/Classes/LinphoneUI/Base.lproj/UIMainBar.xib index 7891aa985..d757f8c17 100644 --- a/Classes/LinphoneUI/Base.lproj/UIMainBar.xib +++ b/Classes/LinphoneUI/Base.lproj/UIMainBar.xib @@ -1,5 +1,5 @@ - + @@ -16,7 +16,6 @@ - @@ -25,250 +24,108 @@ - - - - - - - - + + + - + + - - - - - - - - - - - - - + + + - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - - - diff --git a/Classes/LinphoneUI/Base.lproj/UIMainBar~ipad.xib b/Classes/LinphoneUI/Base.lproj/UIMainBar~ipad.xib deleted file mode 100644 index 31ab2d848..000000000 --- a/Classes/LinphoneUI/Base.lproj/UIMainBar~ipad.xib +++ /dev/null @@ -1,340 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Classes/LinphoneUI/UIIconButton.h b/Classes/LinphoneUI/UIIconButton.h new file mode 100644 index 000000000..741b833b9 --- /dev/null +++ b/Classes/LinphoneUI/UIIconButton.h @@ -0,0 +1,12 @@ +// +// UIIconButton.h +// linphone +// +// Created by Gautier Pelloux-Prayer on 22/07/15. +// +// + +#import + +@interface UIIconButton : UIButton +@end diff --git a/Classes/LinphoneUI/UIIconButton.m b/Classes/LinphoneUI/UIIconButton.m new file mode 100644 index 000000000..ad5159e3a --- /dev/null +++ b/Classes/LinphoneUI/UIIconButton.m @@ -0,0 +1,36 @@ +// +// UIIconButton.m +// linphone +// +// Created by Gautier Pelloux-Prayer on 22/07/15. +// +// + +#import "UIIconButton.h" + +#import "Utils.h" + +@implementation UIIconButton + +- (id)fixBackgroundImageForState { + [self setBackgroundImage:[self backgroundImageForState:UIControlStateHighlighted] + forState:(UIControlStateHighlighted | UIControlStateSelected)]; + [self setBackgroundImage:[self backgroundImageForState:UIControlStateDisabled] + forState:(UIControlStateDisabled | UIControlStateSelected)]; + [LinphoneUtils buttonFixStates:self]; + return self; +} + +- (id)init { + return [[super init] fixBackgroundImageForState]; +} + +- (id)initWithCoder:(NSCoder *)aDecoder { + return [[super initWithCoder:aDecoder] fixBackgroundImageForState]; +} + +- (id)initWithFrame:(CGRect)frame { + return [[super initWithFrame:frame] fixBackgroundImageForState]; +} + +@end diff --git a/Classes/LinphoneUI/UIMainBar.m b/Classes/LinphoneUI/UIMainBar.m index 90ce388ed..210db0d4f 100644 --- a/Classes/LinphoneUI/UIMainBar.m +++ b/Classes/LinphoneUI/UIMainBar.m @@ -43,10 +43,6 @@ static NSString *const kDisappearAnimation = @"disappear"; return [super initWithNibName:@"UIMainBar" bundle:[NSBundle mainBundle]]; } -- (void)dealloc { - [[NSNotificationCenter defaultCenter] removeObserver:self]; -} - #pragma mark - ViewController Functions - (void)viewWillAppear:(BOOL)animated { @@ -61,8 +57,8 @@ static NSString *const kDisappearAnimation = @"disappear"; name:kLinphoneCallUpdate object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(textReceived:) - name:kLinphoneTextReceived + selector:@selector(messageReceived:) + name:kLinphoneMessageReceived object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(settingsUpdate:) @@ -73,118 +69,15 @@ static NSString *const kDisappearAnimation = @"disappear"; - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; - - [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneMainViewChange object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneCallUpdate object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneTextReceived object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneSettingsUpdate object:nil]; -} - -- (void)flipImageForButton:(UIButton *)button { - UIControlState states[] = {UIControlStateNormal, UIControlStateDisabled, UIControlStateSelected, - UIControlStateHighlighted, -1}; - UIControlState *state = states; - - while (*state != -1) { - UIImage *bgImage = [button backgroundImageForState:*state]; - - UIImage *flippedImage = - [UIImage imageWithCGImage:bgImage.CGImage scale:bgImage.scale orientation:UIImageOrientationUpMirrored]; - [button setBackgroundImage:flippedImage forState:*state]; - state++; - } + [[NSNotificationCenter defaultCenter] removeObserver:self]; } - (void)viewDidLoad { + [super viewDidLoad]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillEnterForeground:) name:UIApplicationWillEnterForegroundNotification object:nil]; - - { - UIButton *historyButtonLandscape = (UIButton *)[landscapeView viewWithTag:[historyButton tag]]; - // Set selected+over background: IB lack ! - [historyButton setBackgroundImage:[UIImage imageNamed:@"history_selected.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - // Set selected+over background: IB lack ! - [historyButtonLandscape setBackgroundImage:[UIImage imageNamed:@"history_selected_landscape.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - [LinphoneUtils buttonFixStatesForTabs:historyButton]; - [LinphoneUtils buttonFixStatesForTabs:historyButtonLandscape]; - } - - { - UIButton *contactsButtonLandscape = (UIButton *)[landscapeView viewWithTag:[contactsButton tag]]; - // Set selected+over background: IB lack ! - [contactsButton setBackgroundImage:[UIImage imageNamed:@"contacts_selected.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - // Set selected+over background: IB lack ! - [contactsButtonLandscape setBackgroundImage:[UIImage imageNamed:@"contacts_selected_landscape.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - [LinphoneUtils buttonFixStatesForTabs:contactsButton]; - [LinphoneUtils buttonFixStatesForTabs:contactsButtonLandscape]; - } - { - UIButton *dialerButtonLandscape = (UIButton *)[landscapeView viewWithTag:[dialerButton tag]]; - // Set selected+over background: IB lack ! - [dialerButton setBackgroundImage:[UIImage imageNamed:@"dialer_selected.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - // Set selected+over background: IB lack ! - [dialerButtonLandscape setBackgroundImage:[UIImage imageNamed:@"dialer_selected_landscape.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - [LinphoneUtils buttonFixStatesForTabs:dialerButton]; - [LinphoneUtils buttonFixStatesForTabs:dialerButtonLandscape]; - } - { - UIButton *settingsButtonLandscape = (UIButton *)[landscapeView viewWithTag:[settingsButton tag]]; - // Set selected+over background: IB lack ! - [settingsButton setBackgroundImage:[UIImage imageNamed:@"settings_selected.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - // Set selected+over background: IB lack ! - [settingsButtonLandscape setBackgroundImage:[UIImage imageNamed:@"settings_selected_landscape.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - [LinphoneUtils buttonFixStatesForTabs:settingsButton]; - [LinphoneUtils buttonFixStatesForTabs:settingsButtonLandscape]; - } - - { - UIButton *chatButtonLandscape = (UIButton *)[landscapeView viewWithTag:[chatButton tag]]; - // Set selected+over background: IB lack ! - [chatButton setBackgroundImage:[UIImage imageNamed:@"chat_selected.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - // Set selected+over background: IB lack ! - [chatButtonLandscape setBackgroundImage:[UIImage imageNamed:@"chat_selected_landscape.png"] - forState:(UIControlStateHighlighted | UIControlStateSelected)]; - - [LinphoneUtils buttonFixStatesForTabs:chatButton]; - [LinphoneUtils buttonFixStatesForTabs:chatButtonLandscape]; - } - if ([LinphoneManager langageDirectionIsRTL]) { - [self flipImageForButton:historyButton]; - [self flipImageForButton:settingsButton]; - [self flipImageForButton:dialerButton]; - [self flipImageForButton:chatButton]; - [self flipImageForButton:contactsButton]; - } - - [super viewDidLoad]; // Have to be after due to TPMultiLayoutViewController -} - -- (void)viewDidUnload { - [super viewDidUnload]; - - [[NSNotificationCenter defaultCenter] removeObserver:self - name:UIApplicationWillEnterForegroundNotification - object:nil]; } - (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation @@ -222,7 +115,7 @@ static NSString *const kDisappearAnimation = @"disappear"; - (void)changeViewEvent:(NSNotification *)notif { // UICompositeViewDescription *view = [notif.userInfo objectForKey: @"view"]; // if(view != nil) - [self updateView:[[PhoneMainView instance] firstView]]; + [self updateSelectedButton:[[PhoneMainView instance] firstView]]; } - (void)settingsUpdate:(NSNotification *)notif { @@ -242,14 +135,14 @@ static NSString *const kDisappearAnimation = @"disappear"; } } -- (void)textReceived:(NSNotification *)notif { +- (void)messageReceived:(NSNotification *)notif { [self updateUnreadMessage:TRUE]; } -#pragma mark - +#pragma mark - UI Update - (void)update:(BOOL)appear { - [self updateView:[[PhoneMainView instance] firstView]]; + [self updateSelectedButton:[[PhoneMainView instance] firstView]]; [self updateMissedCall:linphone_core_get_missed_calls_count([LinphoneManager getLc]) appear:appear]; [self updateUnreadMessage:appear]; } @@ -325,6 +218,43 @@ static NSString *const kDisappearAnimation = @"disappear"; } } +- (void)updateSelectedButton:(UICompositeViewDescription *)view { + historyButton.selected = [view equal:[HistoryViewController compositeViewDescription]]; + contactsButton.selected = [view equal:[ContactsViewController compositeViewDescription]]; + dialerButton.selected = [view equal:[DialerViewController compositeViewDescription]]; + settingsButton.selected = [view equal:[SettingsViewController compositeViewDescription]]; + chatButton.selected = [view equal:[ChatViewController compositeViewDescription]]; +} + +#pragma mark - Action Functions + +- (IBAction)onHistoryClick:(id)event { + [[PhoneMainView instance] changeCurrentView:[HistoryViewController compositeViewDescription]]; +} + +- (IBAction)onContactsClick:(id)event { + [ContactSelection setSelectionMode:ContactSelectionModeNone]; + [ContactSelection setAddAddress:nil]; + [ContactSelection setSipFilter:nil]; + [ContactSelection enableEmailFilter:FALSE]; + [ContactSelection setNameOrEmailFilter:nil]; + [[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription]]; +} + +- (IBAction)onDialerClick:(id)event { + [[PhoneMainView instance] changeCurrentView:[DialerViewController compositeViewDescription]]; +} + +- (IBAction)onSettingsClick:(id)event { + [[PhoneMainView instance] changeCurrentView:[SettingsViewController compositeViewDescription]]; +} + +- (IBAction)onChatClick:(id)event { + [[PhoneMainView instance] changeCurrentView:[ChatViewController compositeViewDescription]]; +} + +#pragma mark - Animation + - (void)appearAnimation:(NSString *)animationID target:(UIView *)target completion:(void (^)(BOOL finished))completion { CABasicAnimation *appear = [CABasicAnimation animationWithKeyPath:@"transform.scale"]; appear.duration = 0.4; @@ -366,62 +296,6 @@ static NSString *const kDisappearAnimation = @"disappear"; [target.layer removeAnimationForKey:animationID]; } -- (void)updateView:(UICompositeViewDescription *)view { - // Update buttons - if ([view equal:[HistoryViewController compositeViewDescription]]) { - historyButton.selected = TRUE; - } else { - historyButton.selected = FALSE; - } - if ([view equal:[ContactsViewController compositeViewDescription]]) { - contactsButton.selected = TRUE; - } else { - contactsButton.selected = FALSE; - } - if ([view equal:[DialerViewController compositeViewDescription]]) { - dialerButton.selected = TRUE; - } else { - dialerButton.selected = FALSE; - } - if ([view equal:[SettingsViewController compositeViewDescription]]) { - settingsButton.selected = TRUE; - } else { - settingsButton.selected = FALSE; - } - if ([view equal:[ChatViewController compositeViewDescription]]) { - chatButton.selected = TRUE; - } else { - chatButton.selected = FALSE; - } -} - -#pragma mark - Action Functions - -- (IBAction)onHistoryClick:(id)event { - [[PhoneMainView instance] changeCurrentView:[HistoryViewController compositeViewDescription]]; -} - -- (IBAction)onContactsClick:(id)event { - [ContactSelection setSelectionMode:ContactSelectionModeNone]; - [ContactSelection setAddAddress:nil]; - [ContactSelection setSipFilter:nil]; - [ContactSelection enableEmailFilter:FALSE]; - [ContactSelection setNameOrEmailFilter:nil]; - [[PhoneMainView instance] changeCurrentView:[ContactsViewController compositeViewDescription]]; -} - -- (IBAction)onDialerClick:(id)event { - [[PhoneMainView instance] changeCurrentView:[DialerViewController compositeViewDescription]]; -} - -- (IBAction)onSettingsClick:(id)event { - [[PhoneMainView instance] changeCurrentView:[SettingsViewController compositeViewDescription]]; -} - -- (IBAction)onChatClick:(id)event { - [[PhoneMainView instance] changeCurrentView:[ChatViewController compositeViewDescription]]; -} - #pragma mark - TPMultiLayoutViewController Functions - (NSDictionary *)attributesForView:(UIView *)view { diff --git a/Classes/LinphoneUI/ar.lproj/UIMainBar~ipad.strings b/Classes/LinphoneUI/ar.lproj/UIMainBar~ipad.strings deleted file mode 100644 index 7987c1564..000000000 Binary files a/Classes/LinphoneUI/ar.lproj/UIMainBar~ipad.strings and /dev/null differ diff --git a/Classes/LinphoneUI/fr.lproj/UIMainBar~ipad.strings b/Classes/LinphoneUI/fr.lproj/UIMainBar~ipad.strings deleted file mode 100644 index ea2791de1..000000000 Binary files a/Classes/LinphoneUI/fr.lproj/UIMainBar~ipad.strings and /dev/null differ diff --git a/Classes/LinphoneUI/ru.lproj/UIMainBar~ipad.strings b/Classes/LinphoneUI/ru.lproj/UIMainBar~ipad.strings deleted file mode 100644 index 87cd5abea..000000000 Binary files a/Classes/LinphoneUI/ru.lproj/UIMainBar~ipad.strings and /dev/null differ diff --git a/Classes/PhoneMainView.m b/Classes/PhoneMainView.m index 389fb5907..60bd546d8 100644 --- a/Classes/PhoneMainView.m +++ b/Classes/PhoneMainView.m @@ -169,7 +169,7 @@ static RootViewManager *rootViewManagerInstance = nil; object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textReceived:) - name:kLinphoneTextReceived + name:kLinphoneMessageReceived object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onGlobalStateChanged:) @@ -188,7 +188,7 @@ static RootViewManager *rootViewManagerInstance = nil; // Remove observers [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneCallUpdate object:nil]; [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneRegistrationUpdate object:nil]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneTextReceived object:nil]; + [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneMessageReceived object:nil]; [[NSNotificationCenter defaultCenter] removeObserver:self name:kLinphoneConfiguringStateUpdate object:nil]; [[NSNotificationCenter defaultCenter] removeObserver:self name:UIDeviceBatteryLevelDidChangeNotification @@ -540,11 +540,10 @@ static RootViewManager *rootViewManagerInstance = nil; - (UIViewController *)_changeCurrentView:(UICompositeViewDescription *)view transition:(CATransition *)transition force:(BOOL)force { - LOGI(@"PhoneMainView: Change current view to %@", [view name]); - PhoneMainView *vc = [[RootViewManager instance] setViewControllerForDescription:view]; if (force || ![view equal:vc.currentView] || vc != self) { + LOGI(@"PhoneMainView: Change current view to %@", [view name]); if (transition == nil) transition = [PhoneMainView getTransition:vc.currentView new:view]; if ([[LinphoneManager instance] lpConfigBoolForKey:@"animations_preference"] == true) { diff --git a/ResourcesV3/images/color_A.png b/ResourcesV3/images/color_A.png new file mode 100644 index 000000000..8f991dd5f Binary files /dev/null and b/ResourcesV3/images/color_A.png differ diff --git a/ResourcesV3/images/color_B.png b/ResourcesV3/images/color_B.png new file mode 100644 index 000000000..98f81d151 Binary files /dev/null and b/ResourcesV3/images/color_B.png differ diff --git a/ResourcesV3/images/color_C.png b/ResourcesV3/images/color_C.png new file mode 100644 index 000000000..66a7a8f68 Binary files /dev/null and b/ResourcesV3/images/color_C.png differ diff --git a/ResourcesV3/images/color_D.png b/ResourcesV3/images/color_D.png new file mode 100644 index 000000000..634aae364 Binary files /dev/null and b/ResourcesV3/images/color_D.png differ diff --git a/ResourcesV3/images/color_E.png b/ResourcesV3/images/color_E.png new file mode 100644 index 000000000..d5f0d2f3d Binary files /dev/null and b/ResourcesV3/images/color_E.png differ diff --git a/ResourcesV3/images/color_F.png b/ResourcesV3/images/color_F.png new file mode 100644 index 000000000..9d58f7eed Binary files /dev/null and b/ResourcesV3/images/color_F.png differ diff --git a/ResourcesV3/images/color_G.png b/ResourcesV3/images/color_G.png new file mode 100644 index 000000000..547f8c876 Binary files /dev/null and b/ResourcesV3/images/color_G.png differ diff --git a/ResourcesV3/images/color_H.png b/ResourcesV3/images/color_H.png new file mode 100644 index 000000000..f4bf2ce20 Binary files /dev/null and b/ResourcesV3/images/color_H.png differ diff --git a/ResourcesV3/images/color_I.png b/ResourcesV3/images/color_I.png new file mode 100644 index 000000000..6744c14dd Binary files /dev/null and b/ResourcesV3/images/color_I.png differ diff --git a/ResourcesV3/images/color_J.png b/ResourcesV3/images/color_J.png new file mode 100644 index 000000000..168b09dd9 Binary files /dev/null and b/ResourcesV3/images/color_J.png differ diff --git a/ResourcesV3/images/color_K.png b/ResourcesV3/images/color_K.png new file mode 100644 index 000000000..d03e334ad Binary files /dev/null and b/ResourcesV3/images/color_K.png differ diff --git a/ResourcesV3/images/color_L.png b/ResourcesV3/images/color_L.png new file mode 100644 index 000000000..f6f64788d Binary files /dev/null and b/ResourcesV3/images/color_L.png differ diff --git a/ResourcesV3/images/footer_chat_default.png b/ResourcesV3/images/footer_chat_default.png new file mode 100644 index 000000000..7b8cc5878 Binary files /dev/null and b/ResourcesV3/images/footer_chat_default.png differ diff --git a/ResourcesV3/images/footer_contacts_default.png b/ResourcesV3/images/footer_contacts_default.png new file mode 100644 index 000000000..5d8253bb0 Binary files /dev/null and b/ResourcesV3/images/footer_contacts_default.png differ diff --git a/ResourcesV3/images/footer_dialer_default.png b/ResourcesV3/images/footer_dialer_default.png new file mode 100644 index 000000000..21dfe9010 Binary files /dev/null and b/ResourcesV3/images/footer_dialer_default.png differ diff --git a/ResourcesV3/images/footer_history_default.png b/ResourcesV3/images/footer_history_default.png new file mode 100644 index 000000000..0835aed1c Binary files /dev/null and b/ResourcesV3/images/footer_history_default.png differ diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 521ce0cbb..b970da49d 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -146,6 +146,22 @@ 63058AE01B4E937300EFAE36 /* sounds in Resources */ = {isa = PBXBuildFile; fileRef = 63058ACE1B4E922500EFAE36 /* sounds */; }; 63058AE21B4E93A100EFAE36 /* tester_hosts in Resources */ = {isa = PBXBuildFile; fileRef = 63058AE11B4E93A100EFAE36 /* tester_hosts */; }; 63058AE31B4E93B300EFAE36 /* tester_hosts in Resources */ = {isa = PBXBuildFile; fileRef = 63058AE11B4E93A100EFAE36 /* tester_hosts */; }; + 63060B471B5FA0A60075FB75 /* color_A.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B371B5FA0A60075FB75 /* color_A.png */; }; + 63060B481B5FA0A60075FB75 /* color_B.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B381B5FA0A60075FB75 /* color_B.png */; }; + 63060B491B5FA0A60075FB75 /* color_C.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B391B5FA0A60075FB75 /* color_C.png */; }; + 63060B4A1B5FA0A60075FB75 /* color_D.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B3A1B5FA0A60075FB75 /* color_D.png */; }; + 63060B4B1B5FA0A60075FB75 /* color_E.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B3B1B5FA0A60075FB75 /* color_E.png */; }; + 63060B4C1B5FA0A60075FB75 /* color_F.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B3C1B5FA0A60075FB75 /* color_F.png */; }; + 63060B4D1B5FA0A60075FB75 /* color_G.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B3D1B5FA0A60075FB75 /* color_G.png */; }; + 63060B4E1B5FA0A60075FB75 /* color_H.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B3E1B5FA0A60075FB75 /* color_H.png */; }; + 63060B4F1B5FA0A60075FB75 /* color_I.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B3F1B5FA0A60075FB75 /* color_I.png */; }; + 63060B501B5FA0A60075FB75 /* color_J.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B401B5FA0A60075FB75 /* color_J.png */; }; + 63060B511B5FA0A60075FB75 /* color_K.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B411B5FA0A60075FB75 /* color_K.png */; }; + 63060B521B5FA0A60075FB75 /* color_L.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B421B5FA0A60075FB75 /* color_L.png */; }; + 63060B531B5FA0A60075FB75 /* footer_chat_default.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B431B5FA0A60075FB75 /* footer_chat_default.png */; }; + 63060B541B5FA0A60075FB75 /* footer_contacts_default.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B441B5FA0A60075FB75 /* footer_contacts_default.png */; }; + 63060B551B5FA0A60075FB75 /* footer_dialer_default.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B451B5FA0A60075FB75 /* footer_dialer_default.png */; }; + 63060B561B5FA0A60075FB75 /* footer_history_default.png in Resources */ = {isa = PBXBuildFile; fileRef = 63060B461B5FA0A60075FB75 /* footer_history_default.png */; }; 630CF5571AF7CE1500539F7A /* UITextField+DoneButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 630CF5561AF7CE1500539F7A /* UITextField+DoneButton.m */; }; 63158FAD1B468E0E00969917 /* ImageOptim.sh in Resources */ = {isa = PBXBuildFile; fileRef = 63158FAC1B468E0E00969917 /* ImageOptim.sh */; }; 631C4FB119D2A8F2004BFE77 /* UIDigitButtonLongPlus.m in Sources */ = {isa = PBXBuildFile; fileRef = 631C4FB019D2A8F2004BFE77 /* UIDigitButtonLongPlus.m */; }; @@ -156,6 +172,7 @@ 636316D41A1DEC650009B839 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 636316D61A1DEC650009B839 /* SettingsViewController.xib */; }; 636316D91A1DECC90009B839 /* PhoneMainView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 636316D71A1DECC90009B839 /* PhoneMainView.xib */; }; 636316DE1A1DEF2F0009B839 /* UIButtonShrinkable.m in Sources */ = {isa = PBXBuildFile; fileRef = 636316DD1A1DEF2F0009B839 /* UIButtonShrinkable.m */; }; + 636BC9971B5F921B00C754CE /* UIIconButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 636BC9961B5F921B00C754CE /* UIIconButton.m */; }; 637157A11B283FE200C91677 /* FileTransferDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 637157A01B283FE200C91677 /* FileTransferDelegate.m */; }; 639CEAFD1A1DF4D9004DE38F /* UIStateBar.xib in Resources */ = {isa = PBXBuildFile; fileRef = 639CEAFF1A1DF4D9004DE38F /* UIStateBar.xib */; }; 639CEB001A1DF4E4004DE38F /* UIHistoryCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 639CEB021A1DF4E4004DE38F /* UIHistoryCell.xib */; }; @@ -406,7 +423,6 @@ D38187F015FE354000C3EDCA /* UIConferenceHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = D38187F315FE354000C3EDCA /* UIConferenceHeader.xib */; }; D38187F415FE354700C3EDCA /* UIContactDetailsFooter.xib in Resources */ = {isa = PBXBuildFile; fileRef = D38187F715FE354700C3EDCA /* UIContactDetailsFooter.xib */; }; D38187F815FE355D00C3EDCA /* UIMainBar.xib in Resources */ = {isa = PBXBuildFile; fileRef = D38187FB15FE355D00C3EDCA /* UIMainBar.xib */; }; - D38187FC15FE356100C3EDCA /* UIMainBar~ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = D38187FF15FE356100C3EDCA /* UIMainBar~ipad.xib */; }; D381881115FE3F0B00C3EDCA /* UICallCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D381881415FE3F0B00C3EDCA /* UICallCell.xib */; }; D381881515FE3F7F00C3EDCA /* UIContactDetailsHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = D381881815FE3F7F00C3EDCA /* UIContactDetailsHeader.xib */; }; D381881915FE3FCA00C3EDCA /* InCallViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D381881C15FE3FCA00C3EDCA /* InCallViewController.xib */; }; @@ -896,7 +912,7 @@ isa = PBXCopyFilesBuildPhase; buildActionMask = 12; dstPath = ""; - dstSubfolderSpec = 11; + dstSubfolderSpec = 16; files = ( ); runOnlyForDeploymentPostprocessing = 0; @@ -1075,6 +1091,22 @@ 63058ACE1B4E922500EFAE36 /* sounds */ = {isa = PBXFileReference; lastKnownFileType = folder; name = sounds; path = ../submodules/linphone/tester/sounds; sourceTree = ""; }; 63058AE11B4E93A100EFAE36 /* tester_hosts */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = tester_hosts; path = submodules/linphone/tester/tester_hosts; sourceTree = SOURCE_ROOT; }; 63058AE41B4E952E00EFAE36 /* share */ = {isa = PBXFileReference; lastKnownFileType = folder; name = share; path = "../liblinphone-sdk/apple-darwin/share"; sourceTree = ""; }; + 63060B371B5FA0A60075FB75 /* color_A.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_A.png; sourceTree = ""; }; + 63060B381B5FA0A60075FB75 /* color_B.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_B.png; sourceTree = ""; }; + 63060B391B5FA0A60075FB75 /* color_C.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_C.png; sourceTree = ""; }; + 63060B3A1B5FA0A60075FB75 /* color_D.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_D.png; sourceTree = ""; }; + 63060B3B1B5FA0A60075FB75 /* color_E.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_E.png; sourceTree = ""; }; + 63060B3C1B5FA0A60075FB75 /* color_F.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_F.png; sourceTree = ""; }; + 63060B3D1B5FA0A60075FB75 /* color_G.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_G.png; sourceTree = ""; }; + 63060B3E1B5FA0A60075FB75 /* color_H.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_H.png; sourceTree = ""; }; + 63060B3F1B5FA0A60075FB75 /* color_I.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_I.png; sourceTree = ""; }; + 63060B401B5FA0A60075FB75 /* color_J.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_J.png; sourceTree = ""; }; + 63060B411B5FA0A60075FB75 /* color_K.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_K.png; sourceTree = ""; }; + 63060B421B5FA0A60075FB75 /* color_L.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_L.png; sourceTree = ""; }; + 63060B431B5FA0A60075FB75 /* footer_chat_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_chat_default.png; sourceTree = ""; }; + 63060B441B5FA0A60075FB75 /* footer_contacts_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_contacts_default.png; sourceTree = ""; }; + 63060B451B5FA0A60075FB75 /* footer_dialer_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_dialer_default.png; sourceTree = ""; }; + 63060B461B5FA0A60075FB75 /* footer_history_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_history_default.png; sourceTree = ""; }; 630CF5551AF7CE1500539F7A /* UITextField+DoneButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UITextField+DoneButton.h"; sourceTree = ""; }; 630CF5561AF7CE1500539F7A /* UITextField+DoneButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UITextField+DoneButton.m"; sourceTree = ""; }; 63158FAC1B468E0E00969917 /* ImageOptim.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = ImageOptim.sh; path = Tools/ImageOptim.sh; sourceTree = ""; }; @@ -1090,6 +1122,8 @@ 636316DB1A1DEDD80009B839 /* ru */ = {isa = PBXFileReference; fileEncoding = 2483028224; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/HistoryDetailsViewController.strings; sourceTree = ""; }; 636316DC1A1DEECB0009B839 /* UIButtonShrinkable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIButtonShrinkable.h; sourceTree = ""; }; 636316DD1A1DEF2F0009B839 /* UIButtonShrinkable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIButtonShrinkable.m; sourceTree = ""; }; + 636BC9951B5F921B00C754CE /* UIIconButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIIconButton.h; sourceTree = ""; }; + 636BC9961B5F921B00C754CE /* UIIconButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIIconButton.m; sourceTree = ""; }; 6371579F1B283FE200C91677 /* FileTransferDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTransferDelegate.h; path = Utils/FileTransferDelegate.h; sourceTree = ""; }; 637157A01B283FE200C91677 /* FileTransferDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTransferDelegate.m; path = Utils/FileTransferDelegate.m; sourceTree = ""; }; 639CEAFE1A1DF4D9004DE38F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIStateBar.xib; sourceTree = ""; }; @@ -1760,7 +1794,6 @@ F095482A1883F15400E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIContactDetailsFooter.xib; sourceTree = ""; }; F095482B1883F15400E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIContactDetailsHeader.xib; sourceTree = ""; }; F095482C1883F15400E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIMainBar.xib; sourceTree = ""; }; - F095482D1883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = "Base.lproj/UIMainBar~ipad.xib"; sourceTree = ""; }; F095482E1883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/WizardViewController.xib; sourceTree = ""; }; F095482F1883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = "Base.lproj/WizardViewController~ipad.xib"; sourceTree = ""; }; F09548301883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/WizardViews.xib; sourceTree = ""; }; @@ -1802,8 +1835,6 @@ F09548541883F5F700E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/UIContactDetailsHeader.strings; sourceTree = ""; }; F09548551883F61300E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/UIMainBar.strings; sourceTree = ""; }; F09548561883F61600E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/UIMainBar.strings; sourceTree = ""; }; - F09548571883F66600E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = "fr.lproj/UIMainBar~ipad.strings"; sourceTree = ""; }; - F09548581883F66A00E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = "ru.lproj/UIMainBar~ipad.strings"; sourceTree = ""; }; F09548591883F67800E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/WizardViewController.strings; sourceTree = ""; }; F095485A1883F67B00E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/WizardViewController.strings; sourceTree = ""; }; F095485B1883F68500E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = "fr.lproj/WizardViewController~ipad.strings"; sourceTree = ""; }; @@ -1838,7 +1869,6 @@ F0AF07081A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIContactDetailsHeader.strings; sourceTree = ""; }; F0AF07091A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIHistoryCell.strings; sourceTree = ""; }; F0AF070A1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIMainBar.strings; sourceTree = ""; }; - F0AF070B1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = "ar.lproj/UIMainBar~ipad.strings"; sourceTree = ""; }; F0AF070C1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIStateBar.strings; sourceTree = ""; }; F0AF070D1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/PhoneMainView.strings; sourceTree = ""; }; F0AF070E1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/SettingsViewController.strings; sourceTree = ""; }; @@ -2116,8 +2146,6 @@ 22C7555E1317E59C007BC101 /* UIBluetoothButton.h */, 22C7555F1317E59C007BC101 /* UIBluetoothButton.m */, 636316DC1A1DEECB0009B839 /* UIButtonShrinkable.h */, - 630CF5551AF7CE1500539F7A /* UITextField+DoneButton.h */, - 630CF5561AF7CE1500539F7A /* UITextField+DoneButton.m */, 636316DD1A1DEF2F0009B839 /* UIButtonShrinkable.m */, D326483B1588950F00930C67 /* UICallBar.h */, D326483C1588950F00930C67 /* UICallBar.m */, @@ -2179,7 +2207,6 @@ D3ED3E841586291B006C0DE4 /* UIMainBar.h */, D3ED3E851586291B006C0DE4 /* UIMainBar.m */, D38187FB15FE355D00C3EDCA /* UIMainBar.xib */, - D38187FF15FE356100C3EDCA /* UIMainBar~ipad.xib */, 2214EBF112F86360002A5394 /* UIMicroButton.h */, 2214EBF212F86360002A5394 /* UIMicroButton.m */, D36FB2D31589EF7C0036F6F2 /* UIPauseButton.h */, @@ -2191,6 +2218,8 @@ D354981E1587716B000081D8 /* UIStateBar.h */, D354981F1587716B000081D8 /* UIStateBar.m */, 639CEAFF1A1DF4D9004DE38F /* UIStateBar.xib */, + 630CF5551AF7CE1500539F7A /* UITextField+DoneButton.h */, + 630CF5561AF7CE1500539F7A /* UITextField+DoneButton.m */, F03CA84118C72F1A0008889D /* UITextViewNoDefine.h */, F03CA84218C72F1A0008889D /* UITextViewNoDefine.m */, D32648421588F6FA00930C67 /* UIToggleButton.h */, @@ -2203,6 +2232,8 @@ D32460E5159D9AAD00BA7F3A /* UITransparentView.m */, 340751E5150F38FC00B89C47 /* UIVideoButton.h */, 340751E6150F38FD00B89C47 /* UIVideoButton.m */, + 636BC9951B5F921B00C754CE /* UIIconButton.h */, + 636BC9961B5F921B00C754CE /* UIIconButton.m */, ); path = LinphoneUI; sourceTree = ""; @@ -2217,6 +2248,7 @@ 29B97315FDCFA39411CA2CEA /* Other Sources */, 19C28FACFE9D520D11CA2CBB /* Products */, 633E388219FFB0F400936D1C /* README.md */, + 63060B351B5FA0A60075FB75 /* ResourcesV3 */, 29B97317FDCFA39411CA2CEA /* Resources */, D398D3031594B0FB00FD553C /* Settings */, 63058A301B4E822F00EFAE36 /* TestsLiblinphone */, @@ -2419,6 +2451,37 @@ path = TestsLiblinphone; sourceTree = ""; }; + 63060B351B5FA0A60075FB75 /* ResourcesV3 */ = { + isa = PBXGroup; + children = ( + 63060B361B5FA0A60075FB75 /* images */, + ); + path = ResourcesV3; + sourceTree = ""; + }; + 63060B361B5FA0A60075FB75 /* images */ = { + isa = PBXGroup; + children = ( + 63060B371B5FA0A60075FB75 /* color_A.png */, + 63060B381B5FA0A60075FB75 /* color_B.png */, + 63060B391B5FA0A60075FB75 /* color_C.png */, + 63060B3A1B5FA0A60075FB75 /* color_D.png */, + 63060B3B1B5FA0A60075FB75 /* color_E.png */, + 63060B3C1B5FA0A60075FB75 /* color_F.png */, + 63060B3D1B5FA0A60075FB75 /* color_G.png */, + 63060B3E1B5FA0A60075FB75 /* color_H.png */, + 63060B3F1B5FA0A60075FB75 /* color_I.png */, + 63060B401B5FA0A60075FB75 /* color_J.png */, + 63060B411B5FA0A60075FB75 /* color_K.png */, + 63060B421B5FA0A60075FB75 /* color_L.png */, + 63060B431B5FA0A60075FB75 /* footer_chat_default.png */, + 63060B441B5FA0A60075FB75 /* footer_contacts_default.png */, + 63060B451B5FA0A60075FB75 /* footer_dialer_default.png */, + 63060B461B5FA0A60075FB75 /* footer_history_default.png */, + ); + path = images; + sourceTree = ""; + }; 63B81A021B57DA33009604A6 /* TPKeyboardAvoiding */ = { isa = PBXGroup; children = ( @@ -3363,6 +3426,7 @@ D3F83F0E158205A100336684 /* micro_off_over.png in Resources */, D3F83F10158205A100336684 /* micro_on_default.png in Resources */, D3F83F12158205A100336684 /* micro_on_over.png in Resources */, + 63060B4E1B5FA0A60075FB75 /* color_H.png in Resources */, D3F83F14158205A100336684 /* pause_off_default.png in Resources */, D3F83F16158205A100336684 /* pause_off_over.png in Resources */, D3F83F18158205A100336684 /* hangup_default.png in Resources */, @@ -3383,6 +3447,7 @@ D3F83F4A1582223B00336684 /* numpad_one_over.png in Resources */, D3F83F4C1582223B00336684 /* numpad_two_default.png in Resources */, D3F83F4E1582223B00336684 /* numpad_two_over.png in Resources */, + 63060B561B5FA0A60075FB75 /* footer_history_default.png in Resources */, D3F83F501582223B00336684 /* numpad_three_default.png in Resources */, D3F83F521582223B00336684 /* numpad_three_over.png in Resources */, D3F83F541582223B00336684 /* numpad_four_default.png in Resources */, @@ -3428,6 +3493,7 @@ D38187BD15FE342800C3EDCA /* ContactsViewController.xib in Resources */, D354980615875534000081D8 /* contacts_all_selected.png in Resources */, D354980815875534000081D8 /* contacts_all_default.png in Resources */, + 63060B491B5FA0A60075FB75 /* color_C.png in Resources */, D354980A15875534000081D8 /* contacts_linphone_selected.png in Resources */, D354980C15875534000081D8 /* contacts_linphone_default.png in Resources */, F0B89C2E18DC973E0050B60E /* wizard_remote.rc in Resources */, @@ -3435,6 +3501,7 @@ D354981215875608000081D8 /* contacts_add_over.png in Resources */, D354981A15876FE7000081D8 /* list_details_default.png in Resources */, F0C1F9131A28781F009402C9 /* corner-right-top.png in Resources */, + 63060B531B5FA0A60075FB75 /* footer_chat_default.png in Resources */, D354981C15876FE7000081D8 /* list_details_over.png in Resources */, 639CEAFD1A1DF4D9004DE38F /* UIStateBar.xib in Resources */, F088488A19FF8C41007FFCF3 /* UIContactCell.xib in Resources */, @@ -3457,6 +3524,7 @@ D36C43D5158F2F370048BA40 /* header_conference.png in Resources */, D36C43D7158F2F370048BA40 /* dialer_alt_default.png in Resources */, D36C43D9158F2F370048BA40 /* dialer_alt_over.png in Resources */, + 63060B541B5FA0A60075FB75 /* footer_contacts_default.png in Resources */, D36C43E9158F3F7E0048BA40 /* pause_on_default.png in Resources */, F0C1F9121A28781F009402C9 /* corner-right-bottom.png in Resources */, D36C43EB158F3F7E0048BA40 /* pause_on_over.png in Resources */, @@ -3524,6 +3592,7 @@ D3196D3815A321E3007FEEBA /* options_transfer_default.png in Resources */, D3196D3A15A321E3007FEEBA /* options_transfer_over.png in Resources */, D38187DD15FE348A00C3EDCA /* WizardViewController.xib in Resources */, + 63060B551B5FA0A60075FB75 /* footer_dialer_default.png in Resources */, D350F21C15A43D3400149E54 /* setup_back_default.png in Resources */, D350F21E15A43D3400149E54 /* setup_back_over.png in Resources */, D350F22015A43D3400149E54 /* setup_cancel_default.png in Resources */, @@ -3539,7 +3608,9 @@ D3F795DF15A5831C0077328B /* chat_back_over.png in Resources */, D3B9A3E115A58C450096EA4E /* chat_ok_default.png in Resources */, D3B9A3E315A58C450096EA4E /* chat_ok_over.png in Resources */, + 63060B521B5FA0A60075FB75 /* color_L.png in Resources */, D3B9A3E515A58C450096EA4E /* chat_send_default.png in Resources */, + 63060B511B5FA0A60075FB75 /* color_K.png in Resources */, D3B9A3E715A58C450096EA4E /* chat_send_over.png in Resources */, D32B6E2415A5B2020033019F /* chat_send_disabled.png in Resources */, 639CEB061A1DF4F1004DE38F /* UIChatRoomCell.xib in Resources */, @@ -3591,6 +3662,7 @@ D3C31A3215BD8DED008ED271 /* conference_default_landscape.png in Resources */, D3C31A3415BD8DED008ED271 /* conference_over_landscape.png in Resources */, D3C31A3615BD8DED008ED271 /* dialer_alt_back_default_landscape.png in Resources */, + 63060B481B5FA0A60075FB75 /* color_B.png in Resources */, D3C31A3815BD8DED008ED271 /* dialer_alt_back_over_landscape.png in Resources */, D3C31A3A15BD8DED008ED271 /* dialer_alt_default_landscape.png in Resources */, D3C31A3C15BD8DED008ED271 /* dialer_alt_over_landscape.png in Resources */, @@ -3630,9 +3702,9 @@ D3C31A8415BD8DED008ED271 /* video_on_disabled_landscape.png in Resources */, D3C31A8615BD8DED008ED271 /* video_on_over_landscape.png in Resources */, D3A74E5915C68162001500B9 /* toolsbar_background.png in Resources */, - D38187FC15FE356100C3EDCA /* UIMainBar~ipad.xib in Resources */, D3A74EB215C69392001500B9 /* add_call_default~ipad.png in Resources */, D3A74EB415C69392001500B9 /* add_call_disabled~ipad.png in Resources */, + 63060B4C1B5FA0A60075FB75 /* color_F.png in Resources */, D3A74EB615C69392001500B9 /* add_call_over~ipad.png in Resources */, D3A74EB815C69392001500B9 /* add_contact_default~ipad.png in Resources */, D3A74EBA15C69392001500B9 /* add_contact_disabled~ipad.png in Resources */, @@ -3651,6 +3723,7 @@ D3A74ED215C69392001500B9 /* chat_default_landscape~ipad.png in Resources */, D3A74ED415C69392001500B9 /* chat_default~ipad.png in Resources */, D3A74ED615C69392001500B9 /* chat_over_landscape~ipad.png in Resources */, + 63060B501B5FA0A60075FB75 /* color_J.png in Resources */, D3A74ED815C69392001500B9 /* chat_over~ipad.png in Resources */, D3A74EDA15C69392001500B9 /* chat_selected_landscape~ipad.png in Resources */, D3A74EDC15C69392001500B9 /* chat_selected~ipad.png in Resources */, @@ -3701,6 +3774,7 @@ D3A74F3015C69392001500B9 /* settings_default~ipad.png in Resources */, D3A74F3215C69392001500B9 /* settings_over_landscape~ipad.png in Resources */, D3A74F3415C69392001500B9 /* settings_over~ipad.png in Resources */, + 63060B4A1B5FA0A60075FB75 /* color_D.png in Resources */, D3A74F3615C69392001500B9 /* settings_selected_landscape~ipad.png in Resources */, D3A74F3815C69392001500B9 /* settings_selected~ipad.png in Resources */, D3A74F3A15C69392001500B9 /* speaker_off_default~ipad.png in Resources */, @@ -3770,6 +3844,7 @@ 63B81A0C1B57DA33009604A6 /* LICENSE.txt in Resources */, D30BBD1815D402A7000F93DD /* contact_ok_disabled.png in Resources */, D3804E6015D92A57008072A5 /* msg.caf in Resources */, + 63060B4F1B5FA0A60075FB75 /* color_I.png in Resources */, D3804E6215D92A57008072A5 /* msg.wav in Resources */, D321FF9915E628CB0098B5F4 /* linphonerc~ipad in Resources */, D38187C115FE345B00C3EDCA /* DialerViewController.xib in Resources */, @@ -3819,6 +3894,7 @@ D3D51257160B35CB00946DF8 /* chat_message_background.9@2x.png in Resources */, D3D5126C160B3A8E00946DF8 /* WizardViews.xib in Resources */, D3D51270160B3AD400946DF8 /* WizardViewController~ipad.xib in Resources */, + 63060B4D1B5FA0A60075FB75 /* color_G.png in Resources */, D3328646160B5BC300E6435D /* dialer_alt_disabled_landscape.png in Resources */, D3328648160B5BC300E6435D /* dialer_alt_disabled_landscape~ipad.png in Resources */, D332864A160B5BC300E6435D /* dialer_alt_disabled.png in Resources */, @@ -3838,6 +3914,7 @@ D3D52A7F1614495300DEB00A /* accept_default~ipad.png in Resources */, D3D52A811614495300DEB00A /* accept_over_landscape~ipad.png in Resources */, D3D52A831614495300DEB00A /* accept_over~ipad.png in Resources */, + 63060B471B5FA0A60075FB75 /* color_A.png in Resources */, F070E6361A2622EC00E17AFD /* incall_padding_left.png in Resources */, D3D52A851614495300DEB00A /* decline_default_landscape~ipad.png in Resources */, D3D52A871614495300DEB00A /* decline_default~ipad.png in Resources */, @@ -3849,6 +3926,7 @@ 15AF3C5416F37A3E00FC52EC /* route_bluetooth_off_default.png in Resources */, 15AF3C5616F37A3E00FC52EC /* route_bluetooth_off_disabled.png in Resources */, 15AF3C5816F37A3E00FC52EC /* route_bluetooth_off_over.png in Resources */, + 63060B4B1B5FA0A60075FB75 /* color_E.png in Resources */, 15AF3C5C16F37A3E00FC52EC /* route_bluetooth_on_default.png in Resources */, F0938159188E629800A55DFA /* iTunesArtwork in Resources */, 15AF3C6C16F37A4A00FC52EC /* route_phone_off_default.png in Resources */, @@ -3997,6 +4075,7 @@ 22C755601317E59C007BC101 /* UIBluetoothButton.m in Sources */, 22BB1A69132FF16A005CD7AA /* UIEraseButton.m in Sources */, 22AA8B0113D83F6300B30535 /* UICamSwitch.m in Sources */, + 636BC9971B5F921B00C754CE /* UIIconButton.m in Sources */, 340751E7150F38FD00B89C47 /* UIVideoButton.m in Sources */, 34216F401547EBCD00EA9777 /* VideoZoomHandler.m in Sources */, D3F83EEC1582021700336684 /* InCallViewController.m in Sources */, @@ -4484,17 +4563,6 @@ name = UIMainBar.xib; sourceTree = ""; }; - D38187FF15FE356100C3EDCA /* UIMainBar~ipad.xib */ = { - isa = PBXVariantGroup; - children = ( - F095482D1883F15500E8A69B /* Base */, - F09548571883F66600E8A69B /* fr */, - F09548581883F66A00E8A69B /* ru */, - F0AF070B1A24BA770086C9C1 /* ar */, - ); - name = "UIMainBar~ipad.xib"; - sourceTree = ""; - }; D381881415FE3F0B00C3EDCA /* UICallCell.xib */ = { isa = PBXVariantGroup; children = (