|
|
|
|
@ -1992,14 +1992,25 @@ typedef enum : NSUInteger {
|
|
|
|
|
|
|
|
|
|
- (void)conversationCellDidLongpressText:(ConversationViewCell *)cell viewItem:(ConversationViewItem *)viewItem
|
|
|
|
|
{
|
|
|
|
|
MessageActionsViewController *messageActionsViewController =
|
|
|
|
|
[[MessageActionsViewController alloc] initWithFocusedView:cell];
|
|
|
|
|
// TODO Interpolate from 0->0.3 depending on distance to make visible.
|
|
|
|
|
NSTimeInterval animationDuration = 0.3;
|
|
|
|
|
|
|
|
|
|
// Instead of animating manually we could use `scrollRectToVisible:animated:YES`, but then we'd need to juggle a
|
|
|
|
|
// completion handler into scrollDidEnd
|
|
|
|
|
[UIView animateWithDuration:animationDuration
|
|
|
|
|
animations:^{
|
|
|
|
|
[self.collectionView scrollRectToVisible:cell.frame animated:NO];
|
|
|
|
|
}
|
|
|
|
|
completion:^(BOOL finished) {
|
|
|
|
|
MessageActionsViewController *messageActionsViewController =
|
|
|
|
|
[[MessageActionsViewController alloc] initWithFocusedView:cell];
|
|
|
|
|
|
|
|
|
|
messageActionsViewController.delegate = self;
|
|
|
|
|
messageActionsViewController.delegate = self;
|
|
|
|
|
|
|
|
|
|
[[OWSWindowManager sharedManager] showMessageActionsWindow:messageActionsViewController];
|
|
|
|
|
[[OWSWindowManager sharedManager] showMessageActionsWindow:messageActionsViewController];
|
|
|
|
|
|
|
|
|
|
[self updateShouldObserveDBModifications];
|
|
|
|
|
[self updateShouldObserveDBModifications];
|
|
|
|
|
}];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (NSAttributedString *)attributedContactOrProfileNameForPhoneIdentifier:(NSString *)recipientId
|
|
|
|
|
|