new UI: update main bar
|
|
@ -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];
|
||||
|
|
|
|||
|
|
@ -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];
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
@end
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D136" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D136" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
|
||||
|
|
@ -16,7 +16,6 @@
|
|||
<outlet property="historyNotificationLabel" destination="34" id="35"/>
|
||||
<outlet property="historyNotificationView" destination="32" id="36"/>
|
||||
<outlet property="portraitView" destination="3" id="43"/>
|
||||
<outlet property="settingsButton" destination="9" id="29"/>
|
||||
<outlet property="view" destination="3" id="14"/>
|
||||
</connections>
|
||||
</placeholder>
|
||||
|
|
@ -25,250 +24,108 @@
|
|||
<rect key="frame" x="0.0" y="0.0" width="320" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view hidden="YES" autoresizesSubviews="NO" opaque="NO" clearsContextBeforeDrawing="NO" userInteractionEnabled="NO" tag="-1" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4" userLabel="mask">
|
||||
<rect key="frame" x="0.0" y="12" width="320" height="65"/>
|
||||
<color key="backgroundColor" red="0.0" green="1" blue="0.090924573910000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="65" id="SfG-nT-bfE"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="6" userLabel="history">
|
||||
<rect key="frame" x="0.0" y="0.0" width="64" height="77"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="6" userLabel="history" customClass="UIIconButton">
|
||||
<rect key="frame" x="0.0" y="0.0" width="80" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="History"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="77" id="9fJ-Bx-Z87"/>
|
||||
<constraint firstAttribute="width" constant="64" id="dSE-Nc-AQX"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="40" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="History" backgroundImage="history_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="history_selected.png">
|
||||
<color key="titleColor" red="0.81176471709999998" green="0.29803922770000002" blue="0.16078431900000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="history_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="normal" image="footer_history_default.png" backgroundImage="color_C.png"/>
|
||||
<state key="highlighted" backgroundImage="color_A.png"/>
|
||||
<connections>
|
||||
<action selector="onHistoryClick:" destination="-1" eventType="touchUpInside" id="22"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="8" userLabel="contacts">
|
||||
<rect key="frame" x="64" y="0.0" width="64" height="77"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="8" userLabel="contacts" customClass="UIIconButton">
|
||||
<rect key="frame" x="80" y="0.0" width="80" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contacts"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="64" id="7qG-OX-ocj"/>
|
||||
<constraint firstAttribute="height" constant="77" id="AaL-yt-Hnd"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="40" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Contacts" backgroundImage="contacts_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="contacts_selected.png">
|
||||
<state key="normal" image="footer_contacts_default.png" backgroundImage="color_C.png"/>
|
||||
<state key="selected">
|
||||
<color key="titleColor" red="0.81176471709999998" green="0.29803922770000002" blue="0.16078431900000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="contacts_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="color_A.png"/>
|
||||
<connections>
|
||||
<action selector="onContactsClick:" destination="-1" eventType="touchUpInside" id="23"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="9" userLabel="settings">
|
||||
<rect key="frame" x="256" y="0.0" width="64" height="77"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Settings"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="64" id="50o-3P-EEl"/>
|
||||
<constraint firstAttribute="height" constant="77" id="cUb-Ax-J5i"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="40" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Settings" backgroundImage="settings_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="settings_selected.png">
|
||||
<color key="titleColor" red="0.81176471709999998" green="0.29803922770000002" blue="0.16078431900000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="settings_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="onSettingsClick:" destination="-1" eventType="touchUpInside" id="25"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="7" userLabel="dialer">
|
||||
<rect key="frame" x="128" y="0.0" width="64" height="77"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="7" userLabel="dialer" customClass="UIIconButton">
|
||||
<rect key="frame" x="160" y="0.0" width="80" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Dialer"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="64" id="Kyv-1i-fVw"/>
|
||||
<constraint firstAttribute="height" constant="77" id="hR6-kA-HxY"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
|
||||
<state key="normal" image="dialer_default.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" image="dialer_selected.png"/>
|
||||
<state key="highlighted" image="dialer_over.png"/>
|
||||
<state key="normal" image="footer_dialer_default.png" backgroundImage="color_C.png"/>
|
||||
<state key="highlighted" backgroundImage="color_A.png"/>
|
||||
<connections>
|
||||
<action selector="onDialerClick:" destination="-1" eventType="touchUpInside" id="24"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5" userLabel="chat">
|
||||
<rect key="frame" x="192" y="0.0" width="64" height="77"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" id="5" userLabel="chat" customClass="UIIconButton">
|
||||
<rect key="frame" x="240" y="0.0" width="80" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Chat"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="64" id="eh4-r3-oxy"/>
|
||||
<constraint firstAttribute="height" constant="77" id="gId-1A-3gt"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="40" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Chat" backgroundImage="chat_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="chat_selected.png">
|
||||
<color key="titleColor" red="0.81176471709999998" green="0.29803922770000002" blue="0.16078431900000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="chat_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="normal" image="footer_chat_default.png" backgroundImage="color_C.png"/>
|
||||
<state key="highlighted" backgroundImage="color_A.png"/>
|
||||
<connections>
|
||||
<action selector="onChatClick:" destination="-1" eventType="touchUpInside" id="26"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="37" userLabel="chatNotificationView">
|
||||
<rect key="frame" x="235" y="0.0" width="21" height="21"/>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" contentMode="scaleToFill" id="37" userLabel="chatNotificationView">
|
||||
<rect key="frame" x="300" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" translatesAutoresizingMaskIntoConstraints="NO" id="39" userLabel="chatNotificationImage">
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" id="39" userLabel="chatNotificationImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="7" translatesAutoresizingMaskIntoConstraints="NO" id="38" userLabel="chatNotificationLabel">
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="7" id="38" userLabel="chatNotificationLabel">
|
||||
<rect key="frame" x="3" y="2" width="16" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Missed message(s)">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="17" id="0L7-q4-XAQ"/>
|
||||
<constraint firstAttribute="width" constant="16" id="jXP-Y5-d8a"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="centerY" secondItem="38" secondAttribute="centerY" id="AqH-xS-ee0"/>
|
||||
<constraint firstAttribute="width" constant="21" id="CKe-U0-pTJ"/>
|
||||
<constraint firstAttribute="centerX" secondItem="39" secondAttribute="centerX" id="DJZ-vG-EZ9"/>
|
||||
<constraint firstAttribute="centerX" secondItem="38" secondAttribute="centerX" id="PyV-QG-q3f"/>
|
||||
<constraint firstItem="39" firstAttribute="height" secondItem="37" secondAttribute="height" id="Uzu-M2-lWM"/>
|
||||
<constraint firstAttribute="height" constant="21" id="bSp-VO-Ar7"/>
|
||||
<constraint firstAttribute="centerY" secondItem="39" secondAttribute="centerY" id="cYa-kU-nJs"/>
|
||||
<constraint firstItem="39" firstAttribute="width" secondItem="37" secondAttribute="width" id="yxe-m3-Pcu"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="32" userLabel="historyNotificationView">
|
||||
<rect key="frame" x="43" y="0.0" width="21" height="21"/>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" contentMode="scaleToFill" id="32" userLabel="historyNotificationView">
|
||||
<rect key="frame" x="60" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" translatesAutoresizingMaskIntoConstraints="NO" id="33" userLabel="historyNotificationImage">
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" id="33" userLabel="historyNotificationImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="7" translatesAutoresizingMaskIntoConstraints="NO" id="34" userLabel="historyNotificationLabel">
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="7" id="34" userLabel="historyNotificationLabel">
|
||||
<rect key="frame" x="3" y="2" width="16" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Missed call(s)">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="17" id="POi-z8-SlR"/>
|
||||
<constraint firstAttribute="width" constant="16" id="dgV-A5-wuu"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21" id="4T8-IM-ass"/>
|
||||
<constraint firstAttribute="centerY" secondItem="33" secondAttribute="centerY" id="LTt-9K-g3a"/>
|
||||
<constraint firstAttribute="centerX" secondItem="34" secondAttribute="centerX" id="Lih-Vg-mnM"/>
|
||||
<constraint firstAttribute="centerX" secondItem="33" secondAttribute="centerX" id="Px6-nJ-aI7"/>
|
||||
<constraint firstAttribute="centerY" secondItem="34" secondAttribute="centerY" id="aCW-40-4oh"/>
|
||||
<constraint firstItem="33" firstAttribute="height" secondItem="32" secondAttribute="height" id="jJA-x1-0xU"/>
|
||||
<constraint firstItem="33" firstAttribute="width" secondItem="32" secondAttribute="width" id="shb-FE-cRF"/>
|
||||
<constraint firstAttribute="width" constant="21" id="tMw-Sg-MKB"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" image="dialer_padding_left.png" translatesAutoresizingMaskIntoConstraints="NO" id="f0B-Rk-Uez">
|
||||
<rect key="frame" x="-47" y="-8" width="47" height="85"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="85" id="Ce2-oh-cXP"/>
|
||||
<constraint firstAttribute="width" constant="47" id="hvC-cr-MbF"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" image="dialer_padding_right.png" translatesAutoresizingMaskIntoConstraints="NO" id="if3-GT-4eC">
|
||||
<rect key="frame" x="320" y="-8" width="47" height="85"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="47" id="Ez5-zh-daE"/>
|
||||
<constraint firstAttribute="height" constant="85" id="liI-Np-MjS"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="0.0" green="1" blue="0.19194547549999999" alpha="0.0" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstItem="4" firstAttribute="leading" secondItem="3" secondAttribute="leading" id="23R-LR-WSH"/>
|
||||
<constraint firstAttribute="bottom" secondItem="f0B-Rk-Uez" secondAttribute="bottom" id="5jk-rI-3ek"/>
|
||||
<constraint firstAttribute="bottom" secondItem="if3-GT-4eC" secondAttribute="bottom" id="BMD-5G-aiP"/>
|
||||
<constraint firstItem="32" firstAttribute="trailing" secondItem="6" secondAttribute="trailing" id="KAR-Oc-g9D"/>
|
||||
<constraint firstItem="if3-GT-4eC" firstAttribute="leading" secondItem="9" secondAttribute="trailing" id="Npd-ac-VuD"/>
|
||||
<constraint firstItem="7" firstAttribute="leading" secondItem="8" secondAttribute="trailing" id="P0e-Vb-oo3"/>
|
||||
<constraint firstItem="5" firstAttribute="leading" secondItem="7" secondAttribute="trailing" id="Q0Q-KR-hwu"/>
|
||||
<constraint firstItem="5" firstAttribute="top" secondItem="37" secondAttribute="top" id="QTf-I4-aYm"/>
|
||||
<constraint firstAttribute="bottom" secondItem="7" secondAttribute="bottom" id="RSs-eA-XI3"/>
|
||||
<constraint firstItem="8" firstAttribute="leading" secondItem="6" secondAttribute="trailing" id="Tim-pC-QPd"/>
|
||||
<constraint firstAttribute="bottom" secondItem="5" secondAttribute="bottom" id="UNn-fP-Bhi"/>
|
||||
<constraint firstAttribute="bottom" secondItem="8" secondAttribute="bottom" id="ZXj-CV-9DA"/>
|
||||
<constraint firstItem="6" firstAttribute="leading" secondItem="f0B-Rk-Uez" secondAttribute="trailing" id="buH-90-U2H"/>
|
||||
<constraint firstAttribute="trailing" secondItem="4" secondAttribute="trailing" id="bz1-ui-hrk"/>
|
||||
<constraint firstItem="6" firstAttribute="top" secondItem="32" secondAttribute="top" id="dEI-FQ-VES"/>
|
||||
<constraint firstAttribute="centerX" secondItem="4" secondAttribute="centerX" id="jmU-VM-s9L"/>
|
||||
<constraint firstItem="5" firstAttribute="trailing" secondItem="37" secondAttribute="trailing" id="kGi-dF-bTb"/>
|
||||
<constraint firstItem="9" firstAttribute="leading" secondItem="5" secondAttribute="trailing" id="tw3-7Q-WKv"/>
|
||||
<constraint firstAttribute="bottom" secondItem="6" secondAttribute="bottom" id="umW-rl-qXm"/>
|
||||
<constraint firstAttribute="centerX" secondItem="7" secondAttribute="centerX" id="wni-ky-koR"/>
|
||||
<constraint firstAttribute="bottom" secondItem="9" secondAttribute="bottom" id="znG-Zq-s5I"/>
|
||||
<constraint firstAttribute="bottom" secondItem="4" secondAttribute="bottom" id="zvN-5z-2QF"/>
|
||||
</constraints>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<point key="canvasLocation" x="988" y="613.5"/>
|
||||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="chat_default.png" width="128" height="154"/>
|
||||
<image name="chat_over.png" width="128" height="154"/>
|
||||
<image name="chat_selected.png" width="128" height="154"/>
|
||||
<image name="contacts_default.png" width="128" height="154"/>
|
||||
<image name="contacts_over.png" width="128" height="154"/>
|
||||
<image name="contacts_selected.png" width="128" height="154"/>
|
||||
<image name="dialer_default.png" width="128" height="154"/>
|
||||
<image name="dialer_over.png" width="128" height="154"/>
|
||||
<image name="dialer_padding_left.png" width="94" height="170"/>
|
||||
<image name="dialer_padding_right.png" width="94" height="170"/>
|
||||
<image name="dialer_selected.png" width="128" height="154"/>
|
||||
<image name="history_default.png" width="128" height="154"/>
|
||||
<image name="color_A.png" width="1" height="1"/>
|
||||
<image name="color_C.png" width="1" height="1"/>
|
||||
<image name="footer_chat_default.png" width="81" height="81"/>
|
||||
<image name="footer_contacts_default.png" width="86" height="86"/>
|
||||
<image name="footer_dialer_default.png" width="80" height="80"/>
|
||||
<image name="footer_history_default.png" width="86" height="86"/>
|
||||
<image name="history_notification.png" width="43" height="43"/>
|
||||
<image name="history_over.png" width="128" height="154"/>
|
||||
<image name="history_selected.png" width="128" height="154"/>
|
||||
<image name="settings_default.png" width="128" height="154"/>
|
||||
<image name="settings_over.png" width="128" height="154"/>
|
||||
<image name="settings_selected.png" width="128" height="154"/>
|
||||
</resources>
|
||||
<simulatedMetricsContainer key="defaultSimulatedMetrics">
|
||||
<simulatedStatusBarMetrics key="statusBar"/>
|
||||
|
|
|
|||
|
|
@ -1,340 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="7706" systemVersion="14D136" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="UIMainBar">
|
||||
<connections>
|
||||
<outlet property="chatButton" destination="7" id="44"/>
|
||||
<outlet property="chatNotificationLabel" destination="14" id="46"/>
|
||||
<outlet property="chatNotificationView" destination="3" id="45"/>
|
||||
<outlet property="contactsButton" destination="9" id="47"/>
|
||||
<outlet property="dialerButton" destination="5" id="48"/>
|
||||
<outlet property="historyButton" destination="8" id="49"/>
|
||||
<outlet property="historyNotificationLabel" destination="11" id="50"/>
|
||||
<outlet property="historyNotificationView" destination="4" id="51"/>
|
||||
<outlet property="landscapeView" destination="28" id="43"/>
|
||||
<outlet property="portraitView" destination="2" id="42"/>
|
||||
<outlet property="settingsButton" destination="10" id="52"/>
|
||||
<outlet property="view" destination="2" id="41"/>
|
||||
</connections>
|
||||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view autoresizesSubviews="NO" contentMode="scaleToFill" id="2" userLabel="Portrait View">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view hidden="YES" autoresizesSubviews="NO" opaque="NO" clearsContextBeforeDrawing="NO" userInteractionEnabled="NO" tag="-1" contentMode="scaleToFill" id="6" userLabel="mask">
|
||||
<rect key="frame" x="0.0" y="11" width="768" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<color key="backgroundColor" red="0.0" green="1" blue="0.090924573910000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
</view>
|
||||
<button opaque="NO" tag="1" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="8" userLabel="history">
|
||||
<rect key="frame" x="0.0" y="0.0" width="175" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="History"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="10" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="History" backgroundImage="history_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="history_selected.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="history_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="onHistoryClick:" destination="-1" eventType="touchUpInside" id="58"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" tag="2" contentMode="scaleToFill" id="4" userLabel="historyNotificationView">
|
||||
<rect key="frame" x="144" y="1" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" id="12" userLabel="historyNotificationImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="7" id="11" userLabel="historyNotificationLabel">
|
||||
<rect key="frame" x="2" y="2" width="17" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Missed call(s)">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<button opaque="NO" tag="3" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="9" userLabel="contacts">
|
||||
<rect key="frame" x="175" y="0.0" width="175" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contacts"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="10" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Contacts" backgroundImage="contacts_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="contacts_selected.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="contacts_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="onContactsClick:" destination="-1" eventType="touchUpInside" id="57"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" tag="4" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="5" userLabel="dialer">
|
||||
<rect key="frame" x="350" y="-1" width="68" height="80"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Dialer"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
|
||||
<state key="normal" backgroundImage="dialer_default.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="dialer_selected"/>
|
||||
<state key="highlighted" backgroundImage="dialer_over.png"/>
|
||||
<connections>
|
||||
<action selector="onDialerClick:" destination="-1" eventType="touchUpInside" id="60"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" tag="5" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="10" userLabel="settings">
|
||||
<rect key="frame" x="593" y="0.0" width="175" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Settings"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="10" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Settings" backgroundImage="settings_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="settings_selected.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="settings_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="onSettingsClick:" destination="-1" eventType="touchUpInside" id="59"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" tag="6" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="7" userLabel="chat">
|
||||
<rect key="frame" x="418" y="0.0" width="175" height="77"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Chat"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="10" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Chat" backgroundImage="chat_default.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="chat_selected.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="chat_over.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="onChatClick:" destination="-1" eventType="touchUpInside" id="56"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" tag="7" contentMode="scaleToFill" id="3" userLabel="chatNotificationView">
|
||||
<rect key="frame" x="564" y="1" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" id="13" userLabel="chatNotificationImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="7" id="14" userLabel="chatNotificationLabel">
|
||||
<rect key="frame" x="2" y="2" width="17" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Missed message(s)">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="0.0" green="1" blue="0.19194547549999999" alpha="0.0" colorSpace="calibratedRGB"/>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
</view>
|
||||
<view autoresizesSubviews="NO" contentMode="scaleToFill" id="28" userLabel="Landscape View">
|
||||
<rect key="frame" x="0.0" y="0.0" width="1024" height="86"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view hidden="YES" autoresizesSubviews="NO" opaque="NO" clearsContextBeforeDrawing="NO" userInteractionEnabled="NO" tag="-1" contentMode="scaleToFill" id="34" userLabel="mask">
|
||||
<rect key="frame" x="0.0" y="19" width="1024" height="67"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<color key="backgroundColor" red="0.0" green="1" blue="0.090924573910000001" alpha="1" colorSpace="calibratedRGB"/>
|
||||
</view>
|
||||
<button opaque="NO" tag="1" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="32" userLabel="history">
|
||||
<rect key="frame" x="0.0" y="0.0" width="240" height="86"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label=""/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="16" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="History" backgroundImage="history_default_landscape.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="history_selected_landscape.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="history_over_landscape.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
</button>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" tag="2" contentMode="scaleToFill" id="36" userLabel="historyNotificationView">
|
||||
<rect key="frame" x="209" y="1" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" id="37" userLabel="historyNotificationImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="38" userLabel="historyNotificationLabel">
|
||||
<rect key="frame" x="2" y="2" width="17" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
<button opaque="NO" tag="3" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="31" userLabel="contacts">
|
||||
<rect key="frame" x="240" y="0.0" width="240" height="86"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label=""/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="16" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Contacts" backgroundImage="contacts_default_landscape.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="contacts_selected_landscape.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="contacts_over_landscape.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
</button>
|
||||
<button opaque="NO" tag="4" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="35" userLabel="dialer">
|
||||
<rect key="frame" x="480" y="8" width="68" height="80"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label=""/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
|
||||
<state key="normal" backgroundImage="dialer_default.png">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="dialer_selected"/>
|
||||
<state key="highlighted" backgroundImage="dialer_over.png"/>
|
||||
</button>
|
||||
<button opaque="NO" tag="5" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="30" userLabel="settings">
|
||||
<rect key="frame" x="784" y="0.0" width="240" height="86"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label=""/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="16" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Settings" backgroundImage="settings_default_landscape.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="settings_selected_landscape.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="settings_over_landscape.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
</button>
|
||||
<button opaque="NO" tag="6" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" id="33" userLabel="chat">
|
||||
<rect key="frame" x="548" y="0.0" width="240" height="86"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label=""/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="60" minY="16" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" title="Chat" backgroundImage="chat_default_landscape.png">
|
||||
<color key="titleColor" red="0.35686274509999999" green="0.39607843139999999" blue="0.43529411759999997" alpha="1" colorSpace="deviceRGB"/>
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<state key="selected" backgroundImage="chat_selected_landscape.png">
|
||||
<color key="titleColor" red="0.81176470590000005" green="0.29803921570000003" blue="0.16078431369999999" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
<state key="highlighted" backgroundImage="chat_over_landscape.png">
|
||||
<color key="titleColor" red="0.72549019609999998" green="0.76862745099999996" blue="0.79607843140000001" alpha="1" colorSpace="deviceRGB"/>
|
||||
</state>
|
||||
</button>
|
||||
<view autoresizesSubviews="NO" userInteractionEnabled="NO" tag="7" contentMode="scaleToFill" id="29" userLabel="chatNotificationView">
|
||||
<rect key="frame" x="755" y="8" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" image="history_notification.png" id="40" userLabel="chatNotificationImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="21" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="99" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" id="39" userLabel="chatNotificationLabel">
|
||||
<rect key="frame" x="2" y="2" width="17" height="17"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="0.0" green="1" blue="0.19194547549999999" alpha="0.0" colorSpace="calibratedRGB"/>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="chat_default.png" width="350" height="153"/>
|
||||
<image name="chat_default_landscape.png" width="480" height="171"/>
|
||||
<image name="chat_over.png" width="350" height="153"/>
|
||||
<image name="chat_over_landscape.png" width="480" height="171"/>
|
||||
<image name="chat_selected.png" width="350" height="153"/>
|
||||
<image name="chat_selected_landscape.png" width="480" height="171"/>
|
||||
<image name="contacts_default.png" width="352" height="153"/>
|
||||
<image name="contacts_default_landscape.png" width="480" height="171"/>
|
||||
<image name="contacts_over.png" width="352" height="153"/>
|
||||
<image name="contacts_over_landscape.png" width="480" height="171"/>
|
||||
<image name="contacts_selected.png" width="352" height="153"/>
|
||||
<image name="contacts_selected_landscape.png" width="480" height="171"/>
|
||||
<image name="dialer_default.png" width="128" height="154"/>
|
||||
<image name="dialer_over.png" width="128" height="154"/>
|
||||
<image name="dialer_selected" width="16" height="16"/>
|
||||
<image name="history_default.png" width="353" height="153"/>
|
||||
<image name="history_default_landscape.png" width="480" height="171"/>
|
||||
<image name="history_notification.png" width="43" height="43"/>
|
||||
<image name="history_over.png" width="353" height="153"/>
|
||||
<image name="history_over_landscape.png" width="480" height="171"/>
|
||||
<image name="history_selected.png" width="353" height="153"/>
|
||||
<image name="history_selected_landscape.png" width="480" height="171"/>
|
||||
<image name="settings_default.png" width="353" height="153"/>
|
||||
<image name="settings_default_landscape.png" width="480" height="171"/>
|
||||
<image name="settings_over.png" width="353" height="153"/>
|
||||
<image name="settings_over_landscape.png" width="480" height="171"/>
|
||||
<image name="settings_selected.png" width="353" height="153"/>
|
||||
<image name="settings_selected_landscape.png" width="480" height="171"/>
|
||||
</resources>
|
||||
<simulatedMetricsContainer key="defaultSimulatedMetrics">
|
||||
<simulatedStatusBarMetrics key="statusBar"/>
|
||||
<simulatedOrientationMetrics key="orientation"/>
|
||||
<simulatedScreenMetrics key="destination"/>
|
||||
</simulatedMetricsContainer>
|
||||
</document>
|
||||
12
Classes/LinphoneUI/UIIconButton.h
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
//
|
||||
// UIIconButton.h
|
||||
// linphone
|
||||
//
|
||||
// Created by Gautier Pelloux-Prayer on 22/07/15.
|
||||
//
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@interface UIIconButton : UIButton
|
||||
@end
|
||||
36
Classes/LinphoneUI/UIIconButton.m
Normal file
|
|
@ -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
|
||||
|
|
@ -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 {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
BIN
ResourcesV3/images/color_A.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_B.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_C.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_D.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_E.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_F.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_G.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_H.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_I.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_J.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_K.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/color_L.png
Normal file
|
After Width: | Height: | Size: 150 B |
BIN
ResourcesV3/images/footer_chat_default.png
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
ResourcesV3/images/footer_contacts_default.png
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
ResourcesV3/images/footer_dialer_default.png
Normal file
|
After Width: | Height: | Size: 5 KiB |
BIN
ResourcesV3/images/footer_history_default.png
Normal file
|
After Width: | Height: | Size: 3.6 KiB |
|
|
@ -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 = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
63060B371B5FA0A60075FB75 /* color_A.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_A.png; sourceTree = "<group>"; };
|
||||
63060B381B5FA0A60075FB75 /* color_B.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_B.png; sourceTree = "<group>"; };
|
||||
63060B391B5FA0A60075FB75 /* color_C.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_C.png; sourceTree = "<group>"; };
|
||||
63060B3A1B5FA0A60075FB75 /* color_D.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_D.png; sourceTree = "<group>"; };
|
||||
63060B3B1B5FA0A60075FB75 /* color_E.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_E.png; sourceTree = "<group>"; };
|
||||
63060B3C1B5FA0A60075FB75 /* color_F.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_F.png; sourceTree = "<group>"; };
|
||||
63060B3D1B5FA0A60075FB75 /* color_G.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_G.png; sourceTree = "<group>"; };
|
||||
63060B3E1B5FA0A60075FB75 /* color_H.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_H.png; sourceTree = "<group>"; };
|
||||
63060B3F1B5FA0A60075FB75 /* color_I.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_I.png; sourceTree = "<group>"; };
|
||||
63060B401B5FA0A60075FB75 /* color_J.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_J.png; sourceTree = "<group>"; };
|
||||
63060B411B5FA0A60075FB75 /* color_K.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_K.png; sourceTree = "<group>"; };
|
||||
63060B421B5FA0A60075FB75 /* color_L.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = color_L.png; sourceTree = "<group>"; };
|
||||
63060B431B5FA0A60075FB75 /* footer_chat_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_chat_default.png; sourceTree = "<group>"; };
|
||||
63060B441B5FA0A60075FB75 /* footer_contacts_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_contacts_default.png; sourceTree = "<group>"; };
|
||||
63060B451B5FA0A60075FB75 /* footer_dialer_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_dialer_default.png; sourceTree = "<group>"; };
|
||||
63060B461B5FA0A60075FB75 /* footer_history_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = footer_history_default.png; sourceTree = "<group>"; };
|
||||
630CF5551AF7CE1500539F7A /* UITextField+DoneButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UITextField+DoneButton.h"; sourceTree = "<group>"; };
|
||||
630CF5561AF7CE1500539F7A /* UITextField+DoneButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UITextField+DoneButton.m"; sourceTree = "<group>"; };
|
||||
63158FAC1B468E0E00969917 /* ImageOptim.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = ImageOptim.sh; path = Tools/ImageOptim.sh; sourceTree = "<group>"; };
|
||||
|
|
@ -1090,6 +1122,8 @@
|
|||
636316DB1A1DEDD80009B839 /* ru */ = {isa = PBXFileReference; fileEncoding = 2483028224; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/HistoryDetailsViewController.strings; sourceTree = "<group>"; };
|
||||
636316DC1A1DEECB0009B839 /* UIButtonShrinkable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIButtonShrinkable.h; sourceTree = "<group>"; };
|
||||
636316DD1A1DEF2F0009B839 /* UIButtonShrinkable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIButtonShrinkable.m; sourceTree = "<group>"; };
|
||||
636BC9951B5F921B00C754CE /* UIIconButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIIconButton.h; sourceTree = "<group>"; };
|
||||
636BC9961B5F921B00C754CE /* UIIconButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIIconButton.m; sourceTree = "<group>"; };
|
||||
6371579F1B283FE200C91677 /* FileTransferDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileTransferDelegate.h; path = Utils/FileTransferDelegate.h; sourceTree = "<group>"; };
|
||||
637157A01B283FE200C91677 /* FileTransferDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = FileTransferDelegate.m; path = Utils/FileTransferDelegate.m; sourceTree = "<group>"; };
|
||||
639CEAFE1A1DF4D9004DE38F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIStateBar.xib; sourceTree = "<group>"; };
|
||||
|
|
@ -1760,7 +1794,6 @@
|
|||
F095482A1883F15400E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIContactDetailsFooter.xib; sourceTree = "<group>"; };
|
||||
F095482B1883F15400E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIContactDetailsHeader.xib; sourceTree = "<group>"; };
|
||||
F095482C1883F15400E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UIMainBar.xib; sourceTree = "<group>"; };
|
||||
F095482D1883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = "Base.lproj/UIMainBar~ipad.xib"; sourceTree = "<group>"; };
|
||||
F095482E1883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/WizardViewController.xib; sourceTree = "<group>"; };
|
||||
F095482F1883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = "Base.lproj/WizardViewController~ipad.xib"; sourceTree = "<group>"; };
|
||||
F09548301883F15500E8A69B /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/WizardViews.xib; sourceTree = "<group>"; };
|
||||
|
|
@ -1802,8 +1835,6 @@
|
|||
F09548541883F5F700E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/UIContactDetailsHeader.strings; sourceTree = "<group>"; };
|
||||
F09548551883F61300E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/UIMainBar.strings; sourceTree = "<group>"; };
|
||||
F09548561883F61600E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/UIMainBar.strings; sourceTree = "<group>"; };
|
||||
F09548571883F66600E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = "fr.lproj/UIMainBar~ipad.strings"; sourceTree = "<group>"; };
|
||||
F09548581883F66A00E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = "ru.lproj/UIMainBar~ipad.strings"; sourceTree = "<group>"; };
|
||||
F09548591883F67800E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/WizardViewController.strings; sourceTree = "<group>"; };
|
||||
F095485A1883F67B00E8A69B /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/WizardViewController.strings; sourceTree = "<group>"; };
|
||||
F095485B1883F68500E8A69B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = "fr.lproj/WizardViewController~ipad.strings"; sourceTree = "<group>"; };
|
||||
|
|
@ -1838,7 +1869,6 @@
|
|||
F0AF07081A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIContactDetailsHeader.strings; sourceTree = "<group>"; };
|
||||
F0AF07091A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIHistoryCell.strings; sourceTree = "<group>"; };
|
||||
F0AF070A1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIMainBar.strings; sourceTree = "<group>"; };
|
||||
F0AF070B1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = "ar.lproj/UIMainBar~ipad.strings"; sourceTree = "<group>"; };
|
||||
F0AF070C1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/UIStateBar.strings; sourceTree = "<group>"; };
|
||||
F0AF070D1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/PhoneMainView.strings; sourceTree = "<group>"; };
|
||||
F0AF070E1A24BA770086C9C1 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/SettingsViewController.strings; sourceTree = "<group>"; };
|
||||
|
|
@ -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 = "<group>";
|
||||
|
|
@ -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 = "<group>";
|
||||
};
|
||||
63060B351B5FA0A60075FB75 /* ResourcesV3 */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
63060B361B5FA0A60075FB75 /* images */,
|
||||
);
|
||||
path = ResourcesV3;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
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 = "<group>";
|
||||
};
|
||||
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 = "<group>";
|
||||
};
|
||||
D38187FF15FE356100C3EDCA /* UIMainBar~ipad.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
F095482D1883F15500E8A69B /* Base */,
|
||||
F09548571883F66600E8A69B /* fr */,
|
||||
F09548581883F66A00E8A69B /* ru */,
|
||||
F0AF070B1A24BA770086C9C1 /* ar */,
|
||||
);
|
||||
name = "UIMainBar~ipad.xib";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
D381881415FE3F0B00C3EDCA /* UICallCell.xib */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
|
|
|
|||