Merge branch 'charlesmchen/sendOversizeTextMessages'
This commit is contained in:
commit
72eb632874
|
@ -1098,35 +1098,21 @@ typedef enum : NSUInteger {
|
|||
|
||||
text = [text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
|
||||
|
||||
// Limit outgoing text messages to 64kb.
|
||||
//
|
||||
// TODO: Convert large text messages to attachments
|
||||
// which are presented as normal text messages.
|
||||
const NSUInteger kMaxTextMessageSize = 64 * 1024;
|
||||
if ([text lengthOfBytesUsingEncoding:NSUTF8StringEncoding] > kMaxTextMessageSize) {
|
||||
UIAlertController *controller =
|
||||
[UIAlertController alertControllerWithTitle:NSLocalizedString(@"CONVERSATION_VIEW_TEXT_MESSAGE_TOO_LARGE_ALERT_TITLE",
|
||||
@"The title of the 'text message too large' alert.")
|
||||
message:NSLocalizedString(@"CONVERSATION_VIEW_TEXT_MESSAGE_TOO_LARGE_ALERT_MESSAGE",
|
||||
@"The message of the 'text message too large' alert.")
|
||||
preferredStyle:UIAlertControllerStyleAlert];
|
||||
[controller addAction:[UIAlertAction actionWithTitle:NSLocalizedString(@"OK", nil)
|
||||
style:UIAlertActionStyleDefault
|
||||
handler:nil]];
|
||||
[self presentViewController:controller
|
||||
animated:YES
|
||||
completion:nil];
|
||||
return;
|
||||
}
|
||||
|
||||
if (text.length > 0) {
|
||||
if ([Environment.preferences soundInForeground]) {
|
||||
[JSQSystemSoundPlayer jsq_playMessageSentSound];
|
||||
}
|
||||
|
||||
[ThreadUtil sendMessageWithText:text
|
||||
inThread:self.thread
|
||||
messageSender:self.messageSender];
|
||||
// Limit outgoing text messages to 16kb.
|
||||
//
|
||||
// We convert large text messages to attachments
|
||||
// which are presented as normal text messages.
|
||||
const NSUInteger kOversizeTextMessageSizeThreshold = 16 * 1024;
|
||||
if ([text lengthOfBytesUsingEncoding:NSUTF8StringEncoding] >= kOversizeTextMessageSizeThreshold) {
|
||||
SignalAttachment *attachment = [SignalAttachment oversizeTextAttachmentWithText:text];
|
||||
[ThreadUtil sendMessageWithAttachment:attachment inThread:self.thread messageSender:self.messageSender];
|
||||
} else {
|
||||
[ThreadUtil sendMessageWithText:text inThread:self.thread messageSender:self.messageSender];
|
||||
}
|
||||
if (updateKeyboardState)
|
||||
{
|
||||
[self toggleDefaultKeyboard];
|
||||
|
|
Loading…
Reference in New Issue