fix: remove share button (MESSENGER-8137)

This commit is contained in:
Jan Niklas Grabowski
2026-03-31 14:30:32 +02:00
parent 56e02e7136
commit c92ef3961e

View File

@@ -9,7 +9,10 @@ Please see LICENSE in the repository root for full details.
#import "MXKPreviewViewController.h"
@import QuickLook;
@interface MXKPreviewViewController () <QLPreviewControllerDataSource>
@interface MXKPreviewViewController () <QLPreviewControllerDataSource> {
// BWI #8137 remove share button
NSTimer *removeShareButtonTimer;
}
/// A specialized view controller for previewing an item.
@property (nonatomic, weak) QLPreviewController *previewController;
@@ -63,6 +66,30 @@ Please see LICENSE in the repository root for full details.
if (!self.allowActions)
{
// BWI #8137 remove share button
[removeShareButtonTimer invalidate];
removeShareButtonTimer = [NSTimer scheduledTimerWithTimeInterval:1.0 repeats:YES block:^(NSTimer * _Nonnull timer) {
[self removeShareButtons];
}];
}
}
- (IBAction)doneAction:(id)sender
{
// BWI #8137 remove share button
[removeShareButtonTimer invalidate];
removeShareButtonTimer = nil;
[self dismissViewControllerAnimated:YES completion:^{
if ([self.previewDelegate respondsToSelector:@selector(previewViewControllerDidEndPreview:)]) {
[self.previewDelegate previewViewControllerDidEndPreview:self];
}
}];
}
// BWI #8137 remove share button
- (void)removeShareButtons
{
NSMutableArray *items = [NSMutableArray arrayWithArray: self.previewController.navigationItem.rightBarButtonItems];
if (items.count > 0)
{
@@ -73,17 +100,6 @@ Please see LICENSE in the repository root for full details.
self.previewController.toolbarItems = nil;
// bwi: no title to disallow sharing/printing
self.previewController.navigationItem.title = @"";
}
}
- (IBAction)doneAction:(id)sender
{
[self dismissViewControllerAnimated:YES completion:^{
if ([self.previewDelegate respondsToSelector:@selector(previewViewControllerDidEndPreview:)]) {
[self.previewDelegate previewViewControllerDidEndPreview:self];
}
}];
}
#pragma mark - QLPreviewControllerDataSource