Setup NSTextAttachmentViewProvider

This commit is contained in:
aringenbach
2022-04-27 11:55:23 +02:00
parent 7c3eb8d5a0
commit 2a5c2b6938
12 changed files with 235 additions and 98 deletions
@@ -1391,23 +1391,7 @@ static NSMutableDictionary *childClasses;
{
UITextView *textView = self.messageTextView;
CGPoint tapLocation = [sender locationInView:textView];
UITextPosition *textPosition = [textView closestPositionToPoint:tapLocation];
NSDictionary *attributes = [textView textStylingAtPosition:textPosition inDirection:UITextStorageDirectionForward];
// The value of `NSLinkAttributeName` attribute could be an NSURL or an NSString object.
id tappedURLObject = attributes[NSLinkAttributeName];
if (tappedURLObject)
{
if ([tappedURLObject isKindOfClass:[NSURL class]])
{
tappedUrl = (NSURL*)tappedURLObject;
}
else if ([tappedURLObject isKindOfClass:[NSString class]])
{
tappedUrl = [NSURL URLWithString:(NSString*)tappedURLObject];
}
}
tappedUrl = [textView urlForLinkAtLocation:tapLocation];
}
MXKRoomBubbleComponent *tappedComponent = [self closestBubbleComponentForGestureRecognizer:sender locationInView:sender.view];
@@ -1652,7 +1636,7 @@ static NSMutableDictionary *childClasses;
UITextView *textView = (UITextView*)touchedView;
CGPoint touchLocation = [touch locationInView:textView];
return [textView isThereALinkNearPoint:touchLocation] == NO;
return [textView isThereALinkNearLocation:touchLocation] == NO;
}
}