From aa881f2a6ee6369894b982505bfc45b1c4d417bc Mon Sep 17 00:00:00 2001 From: Danmei Chen Date: Wed, 17 Oct 2018 16:47:06 +0200 Subject: [PATCH] enable send image with text --- Classes/ChatConversationView.m | 11 ++++++++++- Classes/Utils/FileTransferDelegate.m | 4 +++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Classes/ChatConversationView.m b/Classes/ChatConversationView.m index a1c07ea20..955172b49 100644 --- a/Classes/ChatConversationView.m +++ b/Classes/ChatConversationView.m @@ -524,7 +524,16 @@ static UICompositeViewDescription *compositeDescription = nil; for (i = 0; i < [_imagesArray count] - 1; ++i) { [self startImageUpload:[_imagesArray objectAtIndex:i] assetId:[_assetIdsArray objectAtIndex:i] withQuality:[_qualitySettingsArray objectAtIndex:i].floatValue]; } - [self startImageUpload:[_imagesArray objectAtIndex:i] assetId:[_assetIdsArray objectAtIndex:i] withQuality:[_qualitySettingsArray objectAtIndex:i].floatValue andMessage:[self.messageField text]]; + BOOL isOneToOneChat = linphone_chat_room_get_capabilities(_chatRoom) & LinphoneChatRoomCapabilitiesOneToOne; + if (isOneToOneChat) { + [self startImageUpload:[_imagesArray objectAtIndex:i] assetId:[_assetIdsArray objectAtIndex:i] withQuality:[_qualitySettingsArray objectAtIndex:i].floatValue]; + if ([self.messageField text]) { + [self sendMessage:[_messageField text] withExterlBodyUrl:nil withInternalURL:nil]; + } + } else { + [self startImageUpload:[_imagesArray objectAtIndex:i] assetId:[_assetIdsArray objectAtIndex:i] withQuality:[_qualitySettingsArray objectAtIndex:i].floatValue andMessage:[self.messageField text]]; + } + [self clearMessageView]; return; } diff --git a/Classes/Utils/FileTransferDelegate.m b/Classes/Utils/FileTransferDelegate.m index 08d1b4d20..9b603938f 100644 --- a/Classes/Utils/FileTransferDelegate.m +++ b/Classes/Utils/FileTransferDelegate.m @@ -263,7 +263,9 @@ static LinphoneBuffer *linphone_iphone_file_transfer_send(LinphoneChatMessage *m linphone_content_set_name(content, [name UTF8String]); linphone_content_set_size(content, _data.length); _message = linphone_chat_room_create_file_transfer_message(chatRoom, content); - linphone_chat_message_add_text_content(_message, [_text UTF8String]); + BOOL isOneToOneChat = linphone_chat_room_get_capabilities(chatRoom) & LinphoneChatRoomCapabilitiesOneToOne; + if (!isOneToOneChat) + linphone_chat_message_add_text_content(_message, [_text UTF8String]); linphone_content_unref(content); linphone_chat_message_cbs_set_file_transfer_send(linphone_chat_message_get_callbacks(_message),