Merge branch 'charlesmchen/editMenuConflicts'

This commit is contained in:
Matthew Chen 2017-04-21 15:39:36 -04:00
commit 8e332395db
3 changed files with 29 additions and 9 deletions

View File

@ -60,6 +60,7 @@
@property (nonatomic) id<OWSMessageData> messageItem;
@property (nonatomic) UIToolbar *footerBar;
@property (nonatomic) NSArray *oldMenuItems;
@end
@ -257,6 +258,9 @@
[[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_SHARE_ACTION", @"Short name for edit menu item to share contents of media message.")
action:@selector(shareAttachment:)],
];
if (!self.oldMenuItems) {
self.oldMenuItems = [UIMenuController sharedMenuController].menuItems;
}
[UIMenuController sharedMenuController].menuItems = menuItems;
CGPoint location = [sender locationInView:self.view];
CGRect targetRect = CGRectMake(location.x,
@ -342,6 +346,12 @@
}
- (void)dismiss {
// Restore the edit menu items if necessary.
if (self.oldMenuItems) {
[UIMenuController sharedMenuController].menuItems = self.oldMenuItems;
}
self.view.userInteractionEnabled = NO;
[UIView animateWithDuration:0.25f
delay:0

View File

@ -556,13 +556,20 @@ typedef enum : NSUInteger {
// need to set them every time we enter this view.
SEL saveSelector = NSSelectorFromString(@"save:");
SEL shareSelector = NSSelectorFromString(@"share:");
[UIMenuController sharedMenuController].menuItems = @[ [[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_SAVE_ACTION",
@"Short name for edit menu item to save contents of media message.")
action:saveSelector],
[[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_SHARE_ACTION",
@"Short name for edit menu item to share contents of media message.")
action:shareSelector],
];
[UIMenuController sharedMenuController].menuItems = @[
[[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_SAVE_ACTION",
@"Short name for edit menu item to save contents of media message.")
action:saveSelector],
[[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_SHARE_ACTION",
@"Short name for edit menu item to share contents of media message.")
action:shareSelector],
[[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_COPY_ACTION",
@"Short name for edit menu item to copy contents of media message.")
action:@selector(copy:)],
[[UIMenuItem alloc] initWithTitle:NSLocalizedString(@"EDIT_ITEM_DELETE_ACTION",
@"Short name for edit menu item to delete contents of media message.")
action:@selector(delete:)],
];
[self ensureBlockStateIndicator];
@ -1720,7 +1727,7 @@ typedef enum : NSUInteger {
messageItem:messageItem
isAnimated:NO];
[vc presentFromViewController:self.navigationController];
[vc presentFromViewController:self];
}
}
} else if ([[messageItem media] isKindOfClass:[TSAnimatedAdapter class]]) {
@ -1749,7 +1756,7 @@ typedef enum : NSUInteger {
forInteraction:interaction
messageItem:messageItem
isAnimated:YES];
[vc presentFromViewController:self.navigationController];
[vc presentFromViewController:self];
}
}
} else if ([[messageItem media] isKindOfClass:[TSVideoAttachmentAdapter class]]) {

View File

@ -319,6 +319,9 @@
/* Short name for edit menu item to copy contents of media message. */
"EDIT_ITEM_COPY_ACTION" = "Copy";
/* Short name for edit menu item to delete contents of media message. */
"EDIT_ITEM_DELETE_ACTION" = "Delete";
/* Short name for edit menu item to save contents of media message. */
"EDIT_ITEM_SAVE_ACTION" = "Save";