forked from mirrors/linphone-iphone
begin dev
This commit is contained in:
parent
91d88de896
commit
7738a7352b
16 changed files with 646 additions and 28 deletions
40
Classes/ChatConversationImdnView.h
Normal file
40
Classes/ChatConversationImdnView.h
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
//
|
||||
// ChatConversationImdnView.h
|
||||
// linphone
|
||||
//
|
||||
// Created by REIS Benjamin on 25/04/2018.
|
||||
//
|
||||
|
||||
#ifndef ChatConversationImdnView_h
|
||||
#define ChatConversationImdnView_h
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#import "UICompositeView.h"
|
||||
#import "UIRoundBorderedButton.h"
|
||||
|
||||
@interface ChatConversationImdnView : UIViewController <UICompositeViewDelegate, UITableViewDelegate, UITableViewDataSource>
|
||||
|
||||
@property(nonatomic) LinphoneChatMessage *msg;
|
||||
@property(nonatomic) bctbx_list_t *displayedList;
|
||||
@property(nonatomic) bctbx_list_t *receivedList;
|
||||
@property(nonatomic) bctbx_list_t *notReceivedList;
|
||||
@property(nonatomic) CGFloat height;
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UIView *whiteView;
|
||||
@property (weak, nonatomic) IBOutlet UIView *msgView;
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *msgBackgroundColorImage;
|
||||
@property (weak, nonatomic) IBOutlet UIRoundedImageView *msgAvatarImage;
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *msgBottomBar;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *msgDateLabel;
|
||||
@property (weak, nonatomic) IBOutlet UITextViewNoDefine *msgText;
|
||||
@property (weak, nonatomic) IBOutlet UIView *readHeader;
|
||||
@property (weak, nonatomic) IBOutlet UIView *deliveredHeader;
|
||||
@property (weak, nonatomic) IBOutlet UIView *undeliveredHeader;
|
||||
@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;
|
||||
|
||||
- (IBAction)onBackClick:(id)sender;
|
||||
|
||||
@end
|
||||
|
||||
#endif /* ChatConversationImdnView_h */
|
||||
181
Classes/ChatConversationImdnView.m
Normal file
181
Classes/ChatConversationImdnView.m
Normal file
|
|
@ -0,0 +1,181 @@
|
|||
//
|
||||
// ChatConversationImdnView.m
|
||||
// linphone
|
||||
//
|
||||
// Created by REIS Benjamin on 25/04/2018.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
#import "ChatConversationImdnTableViewHeader.h"
|
||||
#import "ChatConversationImdnView.h"
|
||||
#import "PhoneMainView.h"
|
||||
#import "UIChatBubbleTextCell.h"
|
||||
#import "UIChatConversationImdnTableViewCell.h"
|
||||
|
||||
@implementation ChatConversationImdnView
|
||||
|
||||
static UICompositeViewDescription *compositeDescription = nil;
|
||||
|
||||
+ (UICompositeViewDescription *)compositeViewDescription {
|
||||
if (compositeDescription == nil) {
|
||||
compositeDescription = [[UICompositeViewDescription alloc] init:self.class
|
||||
statusBar:StatusBarView.class
|
||||
tabBar:TabBarView.class
|
||||
sideMenu:SideMenuView.class
|
||||
fullscreen:false
|
||||
isLeftFragment:NO
|
||||
fragmentWith:ChatsListView.class];
|
||||
}
|
||||
return compositeDescription;
|
||||
}
|
||||
|
||||
- (UICompositeViewDescription *)compositeViewDescription {
|
||||
return self.class.compositeViewDescription;
|
||||
}
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
_msg = NULL;
|
||||
}
|
||||
|
||||
- (void)viewWillDisappear:(BOOL)animated {
|
||||
for (UIView *view in _scrollView.subviews) {
|
||||
if (view == _readHeader || view == _deliveredHeader || view == _undeliveredHeader)
|
||||
continue;
|
||||
|
||||
[view removeFromSuperview];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)viewWillAppear:(BOOL)animated {
|
||||
[super viewWillAppear:animated];
|
||||
const LinphoneAddress *addr = linphone_chat_message_get_from_address(_msg);
|
||||
BOOL outgoing = linphone_chat_message_is_outgoing(_msg);
|
||||
|
||||
_msgDateLabel.text = [NSString stringWithFormat:@"%@ - %@",
|
||||
[LinphoneUtils timeToString:linphone_chat_message_get_time(_msg) withFormat:LinphoneDateChatBubble],
|
||||
[FastAddressBook displayNameForAddress:addr]];
|
||||
_msgAvatarImage.image = outgoing ? [LinphoneUtils selfAvatar] : [FastAddressBook imageForAddress:addr];
|
||||
_msgText.text = [NSString stringWithUTF8String:linphone_chat_message_get_text(_msg)];
|
||||
_msgBackgroundColorImage.image = _msgBottomBar.image = [UIImage imageNamed:(outgoing ? @"color_A.png" : @"color_D.png")];
|
||||
_msgDateLabel.textColor = [UIColor colorWithPatternImage:_msgBackgroundColorImage.image];
|
||||
|
||||
[_msgView setFrame:CGRectMake(_msgView.frame.origin.x,
|
||||
_msgView.frame.origin.y,
|
||||
_msgView.frame.size.width,
|
||||
[UIChatBubbleTextCell ViewHeightForMessage:_msg withWidth:self.view.frame.size.width].height)];
|
||||
|
||||
[_whiteView setFrame:CGRectMake(self.view.frame.origin.x,
|
||||
self.view.frame.origin.y,
|
||||
self.view.frame.size.width,
|
||||
_msgView.frame.size.height + _msgView.frame.origin.y)];
|
||||
|
||||
_scrollView.scrollEnabled = TRUE;
|
||||
_scrollView.userInteractionEnabled = TRUE;
|
||||
_scrollView.showsVerticalScrollIndicator = TRUE;
|
||||
|
||||
_displayedList = linphone_chat_message_get_participants_that_have_displayed(_msg);
|
||||
_receivedList = linphone_chat_message_get_participants_that_have_received(_msg);
|
||||
_notReceivedList = linphone_chat_message_get_participants_that_have_not_received(_msg);
|
||||
|
||||
if (_displayedList) {
|
||||
}
|
||||
if (_receivedList) {
|
||||
}
|
||||
if (_notReceivedList) {
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - TableView
|
||||
|
||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
|
||||
NSInteger i = 0;
|
||||
if (_displayedList) i++;
|
||||
if (_receivedList) i++;
|
||||
if (_notReceivedList) i++;
|
||||
return i;
|
||||
}
|
||||
|
||||
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
|
||||
return 23.0;
|
||||
}
|
||||
|
||||
- (UITableViewHeaderFooterView *)headerViewForSection:(NSInteger)section {
|
||||
NSString *kHeaderId = NSStringFromClass(ChatConversationImdnTableViewHeader.class);
|
||||
ChatConversationImdnTableViewHeader *header = [tableView dequeueReusableHeaderFooterViewWithIdentifier:kHeaderId];
|
||||
if (!header)
|
||||
header = [[ChatConversationImdnTableViewHeader alloc] initWithIdentifier:kHeaderId];
|
||||
|
||||
if (section == 1) {
|
||||
if (_displayedList) {
|
||||
header.
|
||||
} else if (_receivedList) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
} else if (section == 2) {
|
||||
if (_receivedList) {
|
||||
|
||||
} else {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
|
||||
if (section == 1) {
|
||||
if (_displayedList)
|
||||
return bctbx_list_size(_displayedList);
|
||||
else if (_receivedList)
|
||||
return bctbx_list_size(_receivedList);
|
||||
else
|
||||
return bctbx_list_size(_notReceivedList);
|
||||
} else if (section == 2) {
|
||||
if (_receivedList)
|
||||
return bctbx_list_size(_receivedList);
|
||||
else
|
||||
return bctbx_list_size(_notReceivedList);
|
||||
}
|
||||
return bctbx_list_size(_notReceivedList);
|
||||
}
|
||||
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
bctbx_list_t *list = NULL;
|
||||
if (indexPath.section == 1) {
|
||||
if (_displayedList)
|
||||
list = _displayedList;
|
||||
else if (_receivedList)
|
||||
list = _receivedList;
|
||||
else
|
||||
list = _notReceivedList;
|
||||
} else if (indexPath.section == 2) {
|
||||
if (_receivedList)
|
||||
list = _receivedList;
|
||||
else
|
||||
list = _notReceivedList;
|
||||
} else
|
||||
list = _notReceivedList;
|
||||
|
||||
NSString *kCellId = NSStringFromClass(UIChatConversationImdnTableViewCell.class);
|
||||
UIChatConversationImdnTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kCellId];
|
||||
if (cell == nil) {
|
||||
cell = [[UIChatConversationImdnTableViewCell alloc] initWithIdentifier:kCellId];
|
||||
}
|
||||
LinphoneParticipantImdnState *state = bctbx_list_nth_data(list, (int)indexPath.row);
|
||||
const LinphoneParticipant *participant = linphone_participant_imdn_state_get_participant(state);
|
||||
time_t time = linphone_participant_imdn_state_get_state_change_time(state);
|
||||
const LinphoneAddress *addr = linphone_participant_get_address(participant);
|
||||
cell.displayName.text = [FastAddressBook displayNameForAddress:addr];
|
||||
cell.avatar.image = [FastAddressBook imageForAddress:addr];
|
||||
cell.dateLabel.text = [LinphoneUtils timeToString:time withFormat:LinphoneDateChatBubble];
|
||||
|
||||
return cell;
|
||||
}
|
||||
|
||||
- (IBAction)onBackClick:(id)sender {
|
||||
[PhoneMainView.instance popCurrentView];
|
||||
}
|
||||
|
||||
@end
|
||||
121
Classes/ChatConversationImdnView.xib
Normal file
121
Classes/ChatConversationImdnView.xib
Normal file
|
|
@ -0,0 +1,121 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
|
||||
<device id="retina4_7" orientation="portrait">
|
||||
<adaptation id="fullscreen"/>
|
||||
</device>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="ChatConversationImdnView">
|
||||
<connections>
|
||||
<outlet property="msgAvatarImage" destination="LGG-kB-TaR" id="U4L-qV-ea2"/>
|
||||
<outlet property="msgBackgroundColorImage" destination="wJQ-zl-d5O" id="D3d-vT-rFx"/>
|
||||
<outlet property="msgBottomBar" destination="Mxm-1h-7dz" id="wS1-AL-B5M"/>
|
||||
<outlet property="msgDateLabel" destination="jaE-4d-bbo" id="W3u-tE-pGo"/>
|
||||
<outlet property="msgText" destination="V21-2s-obu" id="iTL-AZ-o7h"/>
|
||||
<outlet property="msgView" destination="VK8-0e-Hsa" id="sWi-sR-kan"/>
|
||||
<outlet property="view" destination="1g1-pp-Uhi" id="Km4-Mj-txf"/>
|
||||
</connections>
|
||||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="1g1-pp-Uhi" userLabel="iphone6MetricsView">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="7Tm-Jz-Rvb">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" fixedFrame="YES" insetsLayoutMarginsFromSafeArea="NO" translatesAutoresizingMaskIntoConstraints="NO" id="X8x-9L-bCY" userLabel="topBar">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="color_F.png" translatesAutoresizingMaskIntoConstraints="NO" id="oDU-Wj-g7Q" userLabel="backgroundColor">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="5" contentMode="left" fixedFrame="YES" text="Delivery status" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" translatesAutoresizingMaskIntoConstraints="NO" id="bc0-Ql-lPE" userLabel="addressLabel">
|
||||
<rect key="frame" x="112" y="0.0" width="150" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="22"/>
|
||||
<color key="textColor" red="0.33333333329999998" green="0.33333333329999998" blue="0.33333333329999998" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="JYS-Be-ffH" userLabel="backButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="0.0" y="0.0" width="75" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Back"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="18" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" image="back_default.png">
|
||||
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
</state>
|
||||
<state key="disabled" image="back_disabled.png"/>
|
||||
<state key="highlighted" backgroundImage="color_E.png"/>
|
||||
<connections>
|
||||
<action selector="onBackClick:" destination="-1" eventType="touchUpInside" id="7Fg-hr-OL1"/>
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
</view>
|
||||
<view clipsSubviews="YES" contentMode="scaleToFill" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="VK8-0e-Hsa" userLabel="msgView">
|
||||
<rect key="frame" x="8" y="74" width="359" height="89"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" alpha="0.20000000298023224" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="color_A.png" translatesAutoresizingMaskIntoConstraints="NO" id="wJQ-zl-d5O" userLabel="backgroundColorImage">
|
||||
<rect key="frame" x="0.0" y="0.0" width="359" height="89"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
</imageView>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" fixedFrame="YES" image="avatar.png" translatesAutoresizingMaskIntoConstraints="NO" id="LGG-kB-TaR" userLabel="avatarImage" customClass="UIRoundedImageView">
|
||||
<rect key="frame" x="7" y="7" width="40" height="40"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact avatar">
|
||||
<accessibilityTraits key="traits" image="YES" notEnabled="YES"/>
|
||||
<bool key="isElement" value="YES"/>
|
||||
</accessibility>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" fixedFrame="YES" text="11:35 John Doe" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jaE-4d-bbo" userLabel="contactDateLabel">
|
||||
<rect key="frame" x="55" y="8" width="279" height="14"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="12"/>
|
||||
<color key="textColor" red="0.98766469960000003" green="0.27512490750000002" blue="0.029739789660000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="color_A.png" translatesAutoresizingMaskIntoConstraints="NO" id="Mxm-1h-7dz" userLabel="bottomBarColor">
|
||||
<rect key="frame" x="0.0" y="88" width="359" height="1"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
|
||||
</imageView>
|
||||
<textView clipsSubviews="YES" contentMode="scaleToFill" fixedFrame="YES" scrollEnabled="NO" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" editable="NO" text="Lore ipsum..." translatesAutoresizingMaskIntoConstraints="NO" id="V21-2s-obu" userLabel="messageText" customClass="UITextViewNoDefine">
|
||||
<rect key="frame" x="52" y="29" width="296" height="49"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<textInputTraits key="textInputTraits" autocapitalizationType="sentences"/>
|
||||
<dataDetectorType key="dataDetectorTypes" link="YES"/>
|
||||
</textView>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="1" green="1" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<point key="canvasLocation" x="-247.5" y="14.5"/>
|
||||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="avatar.png" width="259" height="259"/>
|
||||
<image name="back_default.png" width="24" height="22"/>
|
||||
<image name="back_disabled.png" width="24" height="22"/>
|
||||
<image name="color_A.png" width="2" height="2"/>
|
||||
<image name="color_E.png" width="2" height="2"/>
|
||||
<image name="color_F.png" width="2" height="2"/>
|
||||
</resources>
|
||||
</document>
|
||||
|
|
@ -126,7 +126,7 @@ static UICompositeViewDescription *compositeDescription = nil;
|
|||
|
||||
- (void)onCreate {
|
||||
bctbx_list_t *addresses = NULL;
|
||||
for(NSString *addr in _contacts) {
|
||||
for (NSString *addr in _contacts) {
|
||||
LinphoneAddress *linphoneAddress = linphone_address_new(addr.UTF8String);
|
||||
if (!linphoneAddress)
|
||||
continue;
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13771" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
|
||||
<device id="ipad9_7" orientation="portrait">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
|
||||
<device id="retina5_5" orientation="portrait">
|
||||
<adaptation id="fullscreen"/>
|
||||
</device>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13772"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
|
|
@ -22,29 +22,29 @@
|
|||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="BKk-x7-cO3" userLabel="iphone6MetricsView">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="736"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="zgv-a8-72k">
|
||||
<rect key="frame" x="0.0" y="42" width="768" height="916"/>
|
||||
<rect key="frame" x="0.0" y="42" width="414" height="628"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<tableView clipsSubviews="YES" contentMode="scaleToFill" fixedFrame="YES" alwaysBounceVertical="YES" style="plain" separatorStyle="default" allowsSelectionDuringEditing="YES" allowsMultipleSelectionDuringEditing="YES" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" translatesAutoresizingMaskIntoConstraints="NO" id="pMq-Gv-0uu">
|
||||
<rect key="frame" x="8" y="148" width="752" height="709"/>
|
||||
<rect key="frame" x="8" y="148" width="398" height="421"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<color key="separatorColor" red="0.67030966280000004" green="0.71867996450000005" blue="0.75078284740000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
</tableView>
|
||||
<view contentMode="scaleToFill" fixedFrame="YES" insetsLayoutMarginsFromSafeArea="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Meo-HD-uD0" userLabel="topBar">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="66"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="color_F.png" translatesAutoresizingMaskIntoConstraints="NO" id="Sna-Ku-1Aq" userLabel="backgroundColor">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="66"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="5" contentMode="left" fixedFrame="YES" text="Info" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" translatesAutoresizingMaskIntoConstraints="NO" id="tJn-Nv-Duq" userLabel="addressLabel">
|
||||
<rect key="frame" x="230" y="0.0" width="308" height="66"/>
|
||||
<rect key="frame" x="124" y="0.0" width="166" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
|
|
@ -54,7 +54,7 @@
|
|||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="HVD-Ql-SJG" userLabel="backButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="0.0" y="0.0" width="154" height="66"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="83" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Back"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
|
|
@ -69,7 +69,7 @@
|
|||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="0v1-qv-lPd" userLabel="nextButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="614" y="0.0" width="154" height="66"/>
|
||||
<rect key="frame" x="331" y="0.0" width="83" height="66"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Back"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
|
|
@ -86,15 +86,15 @@
|
|||
</subviews>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" fixedFrame="YES" insetsLayoutMarginsFromSafeArea="NO" translatesAutoresizingMaskIntoConstraints="NO" id="n8e-tx-jlu" userLabel="particpantsBar">
|
||||
<rect key="frame" x="0.0" y="112" width="768" height="28"/>
|
||||
<rect key="frame" x="0.0" y="112" width="414" height="28"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="color_G.png" translatesAutoresizingMaskIntoConstraints="NO" id="t4R-zd-mU3" userLabel="backgroundColor">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="28"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="28"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="5" contentMode="left" fixedFrame="YES" text="Participants" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" translatesAutoresizingMaskIntoConstraints="NO" id="vof-h9-AN3" userLabel="participantsLabel">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="28"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="28"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
|
|
@ -104,7 +104,7 @@
|
|||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XSI-9T-NtW" userLabel="addButton" customClass="UIIconButton">
|
||||
<rect key="frame" x="729" y="4" width="24" height="21"/>
|
||||
<rect key="frame" x="382" y="4" width="24" height="21"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Back"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
|
|
@ -121,7 +121,7 @@
|
|||
</subviews>
|
||||
</view>
|
||||
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="wordWrap" translatesAutoresizingMaskIntoConstraints="NO" id="Hnm-7C-dBQ" userLabel="quitButton" customClass="UIRoundBorderedButton">
|
||||
<rect key="frame" x="290" y="865" width="189" height="43"/>
|
||||
<rect key="frame" x="113" y="577" width="189" height="43"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||
<color key="backgroundColor" red="0.98273354768753052" green="0.36591529846191406" blue="0.0092478422448039055" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Use SIP account">
|
||||
|
|
@ -139,7 +139,7 @@
|
|||
</connections>
|
||||
</button>
|
||||
<textField opaque="NO" clipsSubviews="YES" tag="100" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" placeholder="Name this chatroom" textAlignment="center" adjustsFontSizeToFit="NO" minimumFontSize="10" translatesAutoresizingMaskIntoConstraints="NO" id="69I-Un-ASz" userLabel="chatRoomNameField">
|
||||
<rect key="frame" x="16" y="74" width="736" height="30"/>
|
||||
<rect key="frame" x="9" y="74" width="396" height="30"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<color key="backgroundColor" red="0.85415387149999999" green="0.85412830110000004" blue="0.85414278509999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<accessibility key="accessibilityConfiguration" label="ChatRoomName"/>
|
||||
|
|
@ -148,11 +148,11 @@
|
|||
<textInputTraits key="textInputTraits" autocorrectionType="no" returnKeyType="next" enablesReturnKeyAutomatically="YES"/>
|
||||
</textField>
|
||||
<view hidden="YES" tag="8" contentMode="scaleToFill" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="nt8-fb-6Re" userLabel="waitView">
|
||||
<rect key="frame" x="0.0" y="0.0" width="768" height="916"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="628"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<activityIndicatorView opaque="NO" tag="9" contentMode="scaleToFill" fixedFrame="YES" animating="YES" style="gray" translatesAutoresizingMaskIntoConstraints="NO" id="SNK-Vt-iQa" userLabel="activityIndicatorView">
|
||||
<rect key="frame" x="377" y="444" width="20" height="20"/>
|
||||
<rect key="frame" x="199" y="301" width="20" height="20"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
|
||||
</activityIndicatorView>
|
||||
</subviews>
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#import "LinphoneManager.h"
|
||||
#import "ChatConversationTableView.h"
|
||||
#import "ChatConversationImdnView.h"
|
||||
#import "UIChatBubbleTextCell.h"
|
||||
#import "UIChatBubblePhotoCell.h"
|
||||
#import "UIChatNotifiedEventCell.h"
|
||||
|
|
@ -222,18 +223,47 @@
|
|||
}
|
||||
}
|
||||
|
||||
- (void) tableView:(UITableView *)tableView deleteRowAtIndex:(NSIndexPath *)indexPath {
|
||||
[tableView beginUpdates];
|
||||
LinphoneEventLog *event = [[eventList objectAtIndex:indexPath.row] pointerValue];
|
||||
linphone_event_log_delete_from_database(event);
|
||||
[eventList removeObjectAtIndex:indexPath.row];
|
||||
|
||||
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
|
||||
withRowAnimation:UITableViewRowAnimationBottom];
|
||||
[tableView endUpdates];
|
||||
}
|
||||
|
||||
- (NSArray<UITableViewRowAction *> *)tableView:(UITableView *)tableView
|
||||
editActionsForRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
LinphoneEventLog *event = [[eventList objectAtIndex:indexPath.row] pointerValue];
|
||||
UITableViewRowAction *deleteAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive
|
||||
title:NSLocalizedString(@"Delete", nil)
|
||||
handler:^(UITableViewRowAction *action, NSIndexPath *indexPath){
|
||||
[self tableView:tableView deleteRowAtIndex:indexPath];
|
||||
}];
|
||||
|
||||
UITableViewRowAction *imdnAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal
|
||||
title:NSLocalizedString(@"Info", nil)
|
||||
handler:^(UITableViewRowAction *action, NSIndexPath *indexPath){
|
||||
LinphoneChatMessage *msg = linphone_event_log_get_chat_message(event);
|
||||
ChatConversationImdnView *view = VIEW(ChatConversationImdnView);
|
||||
view.msg = msg;
|
||||
[PhoneMainView.instance changeCurrentView:view.compositeViewDescription];
|
||||
}];
|
||||
|
||||
if (linphone_event_log_get_type(event) == LinphoneEventLogTypeConferenceChatMessage &&
|
||||
!(linphone_chat_room_get_capabilities(_chatRoom) & LinphoneChatRoomCapabilitiesOneToOne))
|
||||
return @[deleteAction, imdnAction];
|
||||
else
|
||||
return @[deleteAction];
|
||||
}
|
||||
|
||||
- (void)tableView:(UITableView *)tableView
|
||||
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
|
||||
forRowAtIndexPath:(NSIndexPath *)indexPath {
|
||||
if (editingStyle == UITableViewCellEditingStyleDelete) {
|
||||
[tableView beginUpdates];
|
||||
LinphoneEventLog *event = [[eventList objectAtIndex:indexPath.row] pointerValue];
|
||||
linphone_event_log_delete_from_database(event);
|
||||
[eventList removeObjectAtIndex:indexPath.row];
|
||||
|
||||
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
|
||||
withRowAnimation:UITableViewRowAnimationBottom];
|
||||
[tableView endUpdates];
|
||||
[self tableView:tableView deleteRowAtIndex:indexPath];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
19
Classes/LinphoneUI/ChatConversationImdnTableViewHeader.h
Normal file
19
Classes/LinphoneUI/ChatConversationImdnTableViewHeader.h
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
//
|
||||
// ChatConversationImdnTableViewHeader.h
|
||||
// linphone
|
||||
//
|
||||
// Created by REIS Benjamin on 26/04/2018.
|
||||
//
|
||||
|
||||
#ifndef ChatConversationImdnTableViewHeader_h
|
||||
#define ChatConversationImdnTableViewHeader_h
|
||||
|
||||
@interface ChatConversationImdnTableViewHeader : UITableViewHeaderFooterView
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UILabel *label;
|
||||
@property (weak, nonatomic) IBOutlet UIIconButton *icon;
|
||||
|
||||
- (id)initWithIdentifier:(NSString *)identifier;
|
||||
|
||||
@end
|
||||
#endif /* ChatConversationImdnTableViewHeader_h */
|
||||
27
Classes/LinphoneUI/ChatConversationImdnTableViewHeader.m
Normal file
27
Classes/LinphoneUI/ChatConversationImdnTableViewHeader.m
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
//
|
||||
// ChatConversationImdnTableViewHeader.m
|
||||
// linphone
|
||||
//
|
||||
// Created by REIS Benjamin on 26/04/2018.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
#import "ChatConversationImdnTableViewHeader.h"
|
||||
|
||||
@implementation ChatConversationImdnTableViewHeader
|
||||
|
||||
- (id)initWithIdentifier:(NSString *)identifier {
|
||||
self = [super initWithReuseIdentifier:identifier];
|
||||
if (self != nil) {
|
||||
NSArray *arrayOfViews =
|
||||
[[NSBundle mainBundle] loadNibNamed:NSStringFromClass(self.class) owner:self options:nil];
|
||||
if ([arrayOfViews count] >= 1) {
|
||||
ChatConversationImdnTableViewHeader *sub = ((ChatConversationImdnTableViewHeader *)[arrayOfViews objectAtIndex:0]);
|
||||
self = sub;
|
||||
}
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
@end
|
||||
62
Classes/LinphoneUI/ChatConversationImdnTableViewHeader.xib
Normal file
62
Classes/LinphoneUI/ChatConversationImdnTableViewHeader.xib
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
|
||||
<device id="retina4_7" orientation="portrait">
|
||||
<adaptation id="fullscreen"/>
|
||||
</device>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="ChatConversationImdnTableViewHeader">
|
||||
<connections>
|
||||
<outlet property="icon" destination="mSJ-U1-zgo" id="HcL-Xl-yCb"/>
|
||||
<outlet property="lable" destination="elN-P0-0Pj" id="bpz-Zq-afF"/>
|
||||
</connections>
|
||||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="9Nb-Wp-29K" customClass="UITableViewHeaderFooterView">
|
||||
<rect key="frame" x="0.0" y="0.0" width="360" height="23"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="color_G.png" translatesAutoresizingMaskIntoConstraints="NO" id="s3H-gR-z9X" userLabel="backgroundColor">
|
||||
<rect key="frame" x="-1" y="-12" width="361" height="46"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES"/>
|
||||
</imageView>
|
||||
<button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mSJ-U1-zgo" userLabel="icon" customClass="UIIconButton">
|
||||
<rect key="frame" x="220" y="2" width="18" height="19"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Back"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="14"/>
|
||||
<inset key="titleEdgeInsets" minX="0.0" minY="18" maxX="0.0" maxY="0.0"/>
|
||||
<state key="normal" image="chat_read.png">
|
||||
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
</state>
|
||||
<state key="disabled" image="valid_disabled.png"/>
|
||||
<state key="highlighted" backgroundImage="color_E.png"/>
|
||||
</button>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" tag="5" contentMode="left" fixedFrame="YES" text="Read" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" minimumFontSize="10" translatesAutoresizingMaskIntoConstraints="NO" id="elN-P0-0Pj" userLabel="label">
|
||||
<rect key="frame" x="131" y="0.0" width="97" height="23"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name">
|
||||
<accessibilityTraits key="traits" none="YES"/>
|
||||
</accessibility>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="15"/>
|
||||
<color key="textColor" red="0.13730004430000001" green="0.65545684100000001" blue="0.68543165920000004" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<point key="canvasLocation" x="24" y="57.5"/>
|
||||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="chat_read.png" width="24" height="24"/>
|
||||
<image name="color_E.png" width="2" height="2"/>
|
||||
<image name="color_G.png" width="2" height="2"/>
|
||||
<image name="valid_disabled.png" width="28" height="19"/>
|
||||
</resources>
|
||||
</document>
|
||||
|
|
@ -106,6 +106,7 @@
|
|||
_chatButton.selected = [view equal:ChatsListView.compositeViewDescription] ||
|
||||
[view equal:ChatConversationCreateView.compositeViewDescription] ||
|
||||
[view equal:ChatConversationInfoView.compositeViewDescription] ||
|
||||
[view equal:ChatConversationImdnView.compositeViewDescription] ||
|
||||
[view equal:ChatConversationView.compositeViewDescription];
|
||||
CGRect selectedNewFrame = _selectedButtonImage.frame;
|
||||
if ([self viewIsCurrentlyPortrait]) {
|
||||
|
|
|
|||
19
Classes/LinphoneUI/UIChatConversationImdnTableViewCell.h
Normal file
19
Classes/LinphoneUI/UIChatConversationImdnTableViewCell.h
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
//
|
||||
// UIChatConversationImdnTableViewCell.h
|
||||
// linphone
|
||||
//
|
||||
// Created by REIS Benjamin on 25/04/2018.
|
||||
//
|
||||
|
||||
#ifndef UIChatConversationImdnTableViewCell_h
|
||||
#define UIChatConversationImdnTableViewCell_h
|
||||
|
||||
@interface UIChatConversationImdnTableViewCell : UITableViewCell
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UIRoundedImageView *avatar;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *displayName;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *dateLabel;
|
||||
- (id)initWithIdentifier:(NSString *)identifier;
|
||||
@end
|
||||
|
||||
#endif /* UIChatConversationImdnTableViewCell_h */
|
||||
32
Classes/LinphoneUI/UIChatConversationImdnTableViewCell.m
Normal file
32
Classes/LinphoneUI/UIChatConversationImdnTableViewCell.m
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
//
|
||||
// UIChatConversationInfoTableViewCell.m
|
||||
// linphone
|
||||
//
|
||||
// Created by REIS Benjamin on 23/10/2017.
|
||||
//
|
||||
|
||||
#import "PhoneMainView.h"
|
||||
#import "UIChatConversationImdnTableViewCell.h"
|
||||
|
||||
@implementation UIChatConversationImdnTableViewCell
|
||||
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
}
|
||||
|
||||
- (id)initWithIdentifier:(NSString *)identifier {
|
||||
self = [super initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
|
||||
if (self != nil) {
|
||||
NSArray *arrayOfViews =
|
||||
[[NSBundle mainBundle] loadNibNamed:NSStringFromClass(self.class) owner:self options:nil];
|
||||
if ([arrayOfViews count] >= 1) {
|
||||
UIChatConversationImdnTableViewCell *sub = ((UIChatConversationImdnTableViewCell *)[arrayOfViews objectAtIndex:0]);
|
||||
self = sub;
|
||||
}
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
54
Classes/LinphoneUI/UIChatConversationImdnTableViewCell.xib
Normal file
54
Classes/LinphoneUI/UIChatConversationImdnTableViewCell.xib
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
|
||||
<device id="retina4_7" orientation="portrait">
|
||||
<adaptation id="fullscreen"/>
|
||||
</device>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="UIChatConversationImdnTableViewCell">
|
||||
<connections>
|
||||
<outlet property="avatar" destination="Z2U-vm-azg" id="Axk-1u-SlS"/>
|
||||
<outlet property="dateLabel" destination="hEV-7I-B0v" id="9HA-U6-YeO"/>
|
||||
<outlet property="displayName" destination="f3q-pd-EF5" id="5QP-K0-UHd"/>
|
||||
</connections>
|
||||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="mET-lv-OPg" customClass="UIChatConversationImdnTableViewCell">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="mET-lv-OPg" id="vNe-2x-je8">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="43.5"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="John Doe" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="f3q-pd-EF5" userLabel="displayNameLabel">
|
||||
<rect key="frame" x="51" y="9" width="185" height="16"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" fixedFrame="YES" image="avatar.png" translatesAutoresizingMaskIntoConstraints="NO" id="Z2U-vm-azg" userLabel="avatarImage" customClass="UIRoundedImageView">
|
||||
<rect key="frame" x="8" y="0.0" width="35" height="30"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
</imageView>
|
||||
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" fixedFrame="YES" text="Today - 18h42" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hEV-7I-B0v" userLabel="contactDateLabel">
|
||||
<rect key="frame" x="216" y="11" width="143" height="15"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMinY="YES" heightSizable="YES" flexibleMaxY="YES"/>
|
||||
<accessibility key="accessibilityConfiguration" label="Contact name"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="12"/>
|
||||
<color key="textColor" red="0.084562085568904877" green="0.035078298300504684" blue="0.018339633941650391" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
</tableViewCellContentView>
|
||||
<point key="canvasLocation" x="61.5" y="52"/>
|
||||
</tableViewCell>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="avatar.png" width="259" height="259"/>
|
||||
</resources>
|
||||
</document>
|
||||
|
|
@ -32,6 +32,7 @@
|
|||
#import "CallView.h"
|
||||
#import "ChatConversationCreateView.h"
|
||||
#import "ChatConversationInfoView.h"
|
||||
#import "ChatConversationImdnView.h"
|
||||
#import "ChatConversationView.h"
|
||||
#import "ChatsListView.h"
|
||||
#import "ContactDetailsView.h"
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ tcp_tls_keepalive=30000
|
|||
#by default it is set to 30 by liblinphone
|
||||
history_max_size=-1
|
||||
enable_basic_to_client_group_chat_room_migration=0
|
||||
aggregate_imdn=0
|
||||
|
||||
[sound]
|
||||
dtmf_player_amp=0.007
|
||||
|
|
|
|||
|
|
@ -609,6 +609,8 @@
|
|||
8C2A81961F87B8000012A66B /* chat_group_avatar.png in Resources */ = {isa = PBXBuildFile; fileRef = 8C2A81941F87B8000012A66B /* chat_group_avatar.png */; };
|
||||
8C300D9A1E40E0CC00728EF3 /* lime_ko.png in Resources */ = {isa = PBXBuildFile; fileRef = 8C300D981E40E0CC00728EF3 /* lime_ko.png */; };
|
||||
8C300D9B1E40E0CC00728EF3 /* lime_ko@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 8C300D991E40E0CC00728EF3 /* lime_ko@2x.png */; };
|
||||
8C3100E820921ED900AADD15 /* ChatConversationImdnTableViewHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8C3100E720921ED900AADD15 /* ChatConversationImdnTableViewHeader.xib */; };
|
||||
8C3100EB2092210600AADD15 /* ChatConversationImdnTableViewHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C3100EA2092210600AADD15 /* ChatConversationImdnTableViewHeader.m */; };
|
||||
8C3EA9E31EB892D600B732B6 /* msamr.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8C3EA9E01EB892D600B732B6 /* msamr.framework */; };
|
||||
8C3EA9E41EB892D600B732B6 /* msamr.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 8C3EA9E01EB892D600B732B6 /* msamr.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
8C3EA9E51EB892D600B732B6 /* mscodec2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8C3EA9E11EB892D600B732B6 /* mscodec2.framework */; };
|
||||
|
|
@ -694,6 +696,10 @@
|
|||
8CD99A342090A457008A7CDA /* linphone_user.png in Resources */ = {isa = PBXBuildFile; fileRef = 8CD99A2E2090A456008A7CDA /* linphone_user.png */; };
|
||||
8CD99A372090A824008A7CDA /* splashscreen@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 8CD99A352090A823008A7CDA /* splashscreen@2x.png */; };
|
||||
8CD99A382090A824008A7CDA /* splashscreen.png in Resources */ = {isa = PBXBuildFile; fileRef = 8CD99A362090A824008A7CDA /* splashscreen.png */; };
|
||||
8CD99A3A2090B9CB008A7CDA /* ChatConversationImdnView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8CD99A392090B9CB008A7CDA /* ChatConversationImdnView.xib */; };
|
||||
8CD99A3C2090B9FA008A7CDA /* ChatConversationImdnView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CD99A3B2090B9FA008A7CDA /* ChatConversationImdnView.m */; };
|
||||
8CD99A3F2090CD37008A7CDA /* UIChatConversationImdnTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8CD99A3E2090CD37008A7CDA /* UIChatConversationImdnTableViewCell.xib */; };
|
||||
8CD99A422090CE6F008A7CDA /* UIChatConversationImdnTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CD99A412090CE6F008A7CDA /* UIChatConversationImdnTableViewCell.m */; };
|
||||
8CDC61951F84D89B0087CF7F /* check_selected.png in Resources */ = {isa = PBXBuildFile; fileRef = 8CDC618C1F84D89B0087CF7F /* check_selected.png */; };
|
||||
8CDC61971F84D9270087CF7F /* check_selected@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 8CDC61961F84D9270087CF7F /* check_selected@2x.png */; };
|
||||
8CE24F4B1F8234A30077AC0A /* next_default.png in Resources */ = {isa = PBXBuildFile; fileRef = 8CE24F491F8234A20077AC0A /* next_default.png */; };
|
||||
|
|
@ -1665,6 +1671,9 @@
|
|||
8C2A81941F87B8000012A66B /* chat_group_avatar.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = chat_group_avatar.png; sourceTree = "<group>"; };
|
||||
8C300D981E40E0CC00728EF3 /* lime_ko.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = lime_ko.png; sourceTree = "<group>"; };
|
||||
8C300D991E40E0CC00728EF3 /* lime_ko@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "lime_ko@2x.png"; sourceTree = "<group>"; };
|
||||
8C3100E720921ED900AADD15 /* ChatConversationImdnTableViewHeader.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ChatConversationImdnTableViewHeader.xib; sourceTree = "<group>"; };
|
||||
8C3100E920921FA900AADD15 /* ChatConversationImdnTableViewHeader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ChatConversationImdnTableViewHeader.h; sourceTree = "<group>"; };
|
||||
8C3100EA2092210600AADD15 /* ChatConversationImdnTableViewHeader.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ChatConversationImdnTableViewHeader.m; sourceTree = "<group>"; };
|
||||
8C3EA9E01EB892D600B732B6 /* msamr.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = msamr.framework; path = "liblinphone-sdk/apple-darwin/Frameworks/msamr.framework"; sourceTree = "<group>"; };
|
||||
8C3EA9E11EB892D600B732B6 /* mscodec2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = mscodec2.framework; path = "liblinphone-sdk/apple-darwin/Frameworks/mscodec2.framework"; sourceTree = "<group>"; };
|
||||
8C3EA9E21EB892D600B732B6 /* msopenh264.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = msopenh264.framework; path = "liblinphone-sdk/apple-darwin/Frameworks/msopenh264.framework"; sourceTree = "<group>"; };
|
||||
|
|
@ -1720,6 +1729,12 @@
|
|||
8CD99A2E2090A456008A7CDA /* linphone_user.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = linphone_user.png; path = "../../../nouveau logo/Icons/linphone_user/linphone_user.png"; sourceTree = "<group>"; };
|
||||
8CD99A352090A823008A7CDA /* splashscreen@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "splashscreen@2x.png"; sourceTree = "<group>"; };
|
||||
8CD99A362090A824008A7CDA /* splashscreen.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = splashscreen.png; sourceTree = "<group>"; };
|
||||
8CD99A392090B9CB008A7CDA /* ChatConversationImdnView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ChatConversationImdnView.xib; sourceTree = "<group>"; };
|
||||
8CD99A3B2090B9FA008A7CDA /* ChatConversationImdnView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ChatConversationImdnView.m; sourceTree = "<group>"; };
|
||||
8CD99A3D2090BA24008A7CDA /* ChatConversationImdnView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ChatConversationImdnView.h; sourceTree = "<group>"; };
|
||||
8CD99A3E2090CD37008A7CDA /* UIChatConversationImdnTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UIChatConversationImdnTableViewCell.xib; sourceTree = "<group>"; };
|
||||
8CD99A402090CE25008A7CDA /* UIChatConversationImdnTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UIChatConversationImdnTableViewCell.h; sourceTree = "<group>"; };
|
||||
8CD99A412090CE6F008A7CDA /* UIChatConversationImdnTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UIChatConversationImdnTableViewCell.m; sourceTree = "<group>"; };
|
||||
8CDC618C1F84D89B0087CF7F /* check_selected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = check_selected.png; sourceTree = "<group>"; };
|
||||
8CDC61961F84D9270087CF7F /* check_selected@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "check_selected@2x.png"; sourceTree = "<group>"; };
|
||||
8CE24F491F8234A20077AC0A /* next_default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = next_default.png; sourceTree = "<group>"; };
|
||||
|
|
@ -2054,6 +2069,9 @@
|
|||
8CA70ACF1F9E0ABA00A3D2EB /* ChatConversationInfoView.h */,
|
||||
8CA70AD01F9E0AE100A3D2EB /* ChatConversationInfoView.m */,
|
||||
8CA70AC51F9DEDE000A3D2EB /* ChatConversationInfoView.xib */,
|
||||
8CD99A3D2090BA24008A7CDA /* ChatConversationImdnView.h */,
|
||||
8CD99A3B2090B9FA008A7CDA /* ChatConversationImdnView.m */,
|
||||
8CD99A392090B9CB008A7CDA /* ChatConversationImdnView.xib */,
|
||||
8C9C5E0B1F83B2EF006987FA /* ChatConversationCreateCollectionViewController.h */,
|
||||
8C9C5E0C1F83B2EF006987FA /* ChatConversationCreateCollectionViewController.m */,
|
||||
6341807A1BBC103100F71761 /* ChatConversationCreateTableView.h */,
|
||||
|
|
@ -2200,6 +2218,12 @@
|
|||
8CA70AE11F9E39E400A3D2EB /* UIChatConversationInfoTableViewCell.h */,
|
||||
8CA70AE21F9E39E400A3D2EB /* UIChatConversationInfoTableViewCell.m */,
|
||||
8CA70AE31F9E39E400A3D2EB /* UIChatConversationInfoTableViewCell.xib */,
|
||||
8CD99A402090CE25008A7CDA /* UIChatConversationImdnTableViewCell.h */,
|
||||
8CD99A412090CE6F008A7CDA /* UIChatConversationImdnTableViewCell.m */,
|
||||
8CD99A3E2090CD37008A7CDA /* UIChatConversationImdnTableViewCell.xib */,
|
||||
8C3100E920921FA900AADD15 /* ChatConversationImdnTableViewHeader.h */,
|
||||
8C3100EA2092210600AADD15 /* ChatConversationImdnTableViewHeader.m */,
|
||||
8C3100E720921ED900AADD15 /* ChatConversationImdnTableViewHeader.xib */,
|
||||
8C9C5E0E1F83BD97006987FA /* UIChatCreateCollectionViewCell.h */,
|
||||
8C9C5E0F1F83BD97006987FA /* UIChatCreateCollectionViewCell.m */,
|
||||
8C9C5E101F83BD97006987FA /* UIChatCreateCollectionViewCell.xib */,
|
||||
|
|
@ -3570,6 +3594,7 @@
|
|||
63AADC011B6A0FF200AA16FD /* assistant_linphone_existing.rc in Resources */,
|
||||
633FEE5A1D3CD5590014B822 /* edit_default.png in Resources */,
|
||||
244523B01E8266CC0037A187 /* chat_error.png in Resources */,
|
||||
8CD99A3A2090B9CB008A7CDA /* ChatConversationImdnView.xib in Resources */,
|
||||
633FEDD11D3CD5590014B822 /* call_quality_indicator_2@2x.png in Resources */,
|
||||
633FEDBC1D3CD5590014B822 /* call_audio_start_disabled.png in Resources */,
|
||||
633FEE481D3CD5590014B822 /* delete_default.png in Resources */,
|
||||
|
|
@ -3595,6 +3620,7 @@
|
|||
244523BE1E8D3A6C0037A187 /* chat_unsecure.png in Resources */,
|
||||
633FEE031D3CD5590014B822 /* cancel_edit_default@2x.png in Resources */,
|
||||
633FEDE01D3CD5590014B822 /* call_start_body_over~ipad.png in Resources */,
|
||||
8CD99A3F2090CD37008A7CDA /* UIChatConversationImdnTableViewCell.xib in Resources */,
|
||||
D34F6F9E1594D3FB0095705B /* InAppSettings.bundle in Resources */,
|
||||
633FEE4D1D3CD5590014B822 /* delete_field_default@2x.png in Resources */,
|
||||
639CEB091A1DF4FA004DE38F /* UIChatCell.xib in Resources */,
|
||||
|
|
@ -3806,6 +3832,7 @@
|
|||
633FEEF91D3CD55A0014B822 /* numpad_star_over~ipad@2x.png in Resources */,
|
||||
633FEDCB1D3CD5590014B822 /* call_outgoing@2x.png in Resources */,
|
||||
633FEF501D3CD55A0014B822 /* valid_disabled.png in Resources */,
|
||||
8C3100E820921ED900AADD15 /* ChatConversationImdnTableViewHeader.xib in Resources */,
|
||||
631348321B6FA53300C6BDCB /* rootca.pem in Resources */,
|
||||
633FEEB31D3CD55A0014B822 /* numpad_3_default.png in Resources */,
|
||||
633FEE1C1D3CD5590014B822 /* chat_start_body_default~ipad.png in Resources */,
|
||||
|
|
@ -3980,9 +4007,11 @@
|
|||
files = (
|
||||
63B81A0F1B57DA33009604A6 /* TPKeyboardAvoidingTableView.m in Sources */,
|
||||
1D60589B0D05DD56006BFB54 /* main.m in Sources */,
|
||||
8CD99A3C2090B9FA008A7CDA /* ChatConversationImdnView.m in Sources */,
|
||||
1D3623260D0F684500981E51 /* LinphoneAppDelegate.m in Sources */,
|
||||
22F2508E107141E100AC9B3F /* DialerView.m in Sources */,
|
||||
633756451B67D2B200E21BAD /* SideMenuView.m in Sources */,
|
||||
8CD99A422090CE6F008A7CDA /* UIChatConversationImdnTableViewCell.m in Sources */,
|
||||
22E0A822111C44E100B04932 /* AboutView.m in Sources */,
|
||||
633671611BCBAAD200BFCBDE /* ChatConversationCreateView.m in Sources */,
|
||||
634610061B61330300548952 /* UILabel+Boldify.m in Sources */,
|
||||
|
|
@ -4004,6 +4033,7 @@
|
|||
340751E7150F38FD00B89C47 /* UIVideoButton.m in Sources */,
|
||||
34216F401547EBCD00EA9777 /* VideoZoomHandler.m in Sources */,
|
||||
D3F83EEC1582021700336684 /* CallView.m in Sources */,
|
||||
8C3100EB2092210600AADD15 /* ChatConversationImdnTableViewHeader.m in Sources */,
|
||||
8C2595DD1DEDC92D007A6424 /* ProviderDelegate.m in Sources */,
|
||||
63F1DF4B1BCE983200EDED90 /* CallConferenceTableView.m in Sources */,
|
||||
D3F83F8E15822ABE00336684 /* PhoneMainView.m in Sources */,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue