From 2a9ac87568d4dd86720acf87071788b0f3868162 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Tue, 18 Apr 2017 16:22:15 -0400 Subject: [PATCH] Fix paste of text. // FREEBIE --- .../src/ViewControllers/MessagesViewController.m | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/Signal/src/ViewControllers/MessagesViewController.m b/Signal/src/ViewControllers/MessagesViewController.m index ce0eb5775..1f675a2dc 100644 --- a/Signal/src/ViewControllers/MessagesViewController.m +++ b/Signal/src/ViewControllers/MessagesViewController.m @@ -111,10 +111,24 @@ typedef enum : NSUInteger { return YES; } +- (BOOL)pasteBoardHasText +{ + if ([UIPasteboard generalPasteboard].numberOfItems < 1) { + return NO; + } + NSIndexSet *itemSet = [NSIndexSet indexSetWithIndex:0]; + NSSet *utiTypes = + [NSSet setWithArray:[[UIPasteboard generalPasteboard] pasteboardTypesForItemSet:itemSet][0]]; + return ([utiTypes containsObject:(NSString *)kUTTypeText] || [utiTypes containsObject:(NSString *)kUTTypePlainText] + || + [utiTypes containsObject:(NSString *)kUTTypeUTF8PlainText] || + [utiTypes containsObject:(NSString *)kUTTypeUTF16PlainText]); +} + - (BOOL)pasteBoardHasPossibleAttachment { // We don't want to load/convert images more than once so we // only do a cursory validation pass at this time. - return [SignalAttachment pasteboardHasPossibleAttachment]; + return ([SignalAttachment pasteboardHasPossibleAttachment] && ![self pasteBoardHasText]); } - (BOOL)canPerformAction:(SEL)action withSender:(id)sender {