Prechádzať zdrojové kódy

fix [_UIDocumentInteractionControllerOpenWithAppActivity performActivity]

Marino Faggiana 6 rokov pred
rodič
commit
b153d294c8

+ 3 - 1
iOSClient/Favorites/CCFavorites.m

@@ -35,6 +35,8 @@
     NSString *autoUploadFileName;
     NSString *autoUploadDirectory;
     
+    UIDocumentInteractionController *docController;
+    
     // Datasource
     CCSectionDataSourceMetadata *sectionDataSource;
 }
@@ -297,7 +299,7 @@
 {
     NSURL *url = [NSURL fileURLWithPath:[CCUtility getDirectoryProviderStorageFileID:metadata.fileID fileNameView:metadata.fileNameView]];
         
-    UIDocumentInteractionController *docController = [UIDocumentInteractionController interactionControllerWithURL:url];
+    docController = [UIDocumentInteractionController interactionControllerWithURL:url];
     docController.delegate = self;
         
     NSIndexPath *indexPath = [sectionDataSource.fileIDIndexPath objectForKey:metadata.fileID];

+ 1 - 4
iOSClient/Main/CCDetail.h

@@ -33,7 +33,7 @@
 
 @class tableMetadata;
 
-@interface CCDetail : UIViewController <UIDocumentInteractionControllerDelegate, MWPhotoBrowserDelegate, ReaderViewControllerDelegate>
+@interface CCDetail : UIViewController <MWPhotoBrowserDelegate, ReaderViewControllerDelegate>
 
 @property (nonatomic, strong) tableMetadata *metadataDetail;
 @property (nonatomic, strong) NSDate *dateFilterQuery;
@@ -53,9 +53,6 @@
 @property (nonatomic, strong) ReaderViewController *readerPDFViewController;
 @property (nonatomic, strong) NSString *passwordPDF;
 
-// Action
-@property (nonatomic, strong) UIDocumentInteractionController *docController;
-
 @property(nonatomic, weak) IBOutlet UIImageView *imageBackground;
 
 - (void)changeToDisplayMode;

+ 12 - 10
iOSClient/Main/CCDetail.m

@@ -34,10 +34,12 @@
 
 #define alertRequestPasswordPDF 1
 
-@interface CCDetail () <NCTextDelegate>
+@interface CCDetail () <NCTextDelegate, UIDocumentInteractionControllerDelegate>
 {
     AppDelegate *appDelegate;
-        
+    
+    UIDocumentInteractionController *docController;
+    
     UIBarButtonItem *buttonModifyTxt;
     UIBarButtonItem *buttonAction;
     UIBarButtonItem *buttonShare;
@@ -723,14 +725,14 @@
     tableMetadata *metadata = [self.photoDataSource objectAtIndex:index];
     if (metadata == nil) return;
 
-    self.docController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:[CCUtility getDirectoryProviderStorageFileID:metadata.fileID fileNameView:metadata.fileNameView]]];
+    docController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:[CCUtility getDirectoryProviderStorageFileID:metadata.fileID fileNameView:metadata.fileNameView]]];
     
-    self.docController.delegate = self;
+    docController.delegate = self;
     
     if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
-        [self.docController presentOptionsMenuFromRect:photoBrowser.view.frame inView:photoBrowser.view animated:YES];
+        [docController presentOptionsMenuFromRect:photoBrowser.view.frame inView:photoBrowser.view animated:YES];
     
-    [self.docController presentOptionsMenuFromBarButtonItem:photoBrowser.actionButton animated:YES];
+    [docController presentOptionsMenuFromBarButtonItem:photoBrowser.actionButton animated:YES];
 }
 
 - (void)photoBrowser:(MWPhotoBrowser *)photoBrowser shareButtonPressedForPhotoAtIndex:(NSUInteger)index
@@ -1135,14 +1137,14 @@
     
     NSString *filePath = [CCUtility getDirectoryProviderStorageFileID:self.metadataDetail.fileID fileNameView:self.metadataDetail.fileNameView];
 
-    self.docController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filePath]];
+    docController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filePath]];
 
-    self.docController.delegate = self;
+    docController.delegate = self;
     
     if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
-        [self.docController presentOptionsMenuFromRect:self.view.frame inView:self.view animated:YES];
+        [docController presentOptionsMenuFromRect:self.view.frame inView:self.view animated:YES];
     
-    [self.docController presentOptionsMenuFromBarButtonItem:sender animated:YES];
+    [docController presentOptionsMenuFromBarButtonItem:sender animated:YES];
 }
 
 - (void)shareButtonPressed:(UIBarButtonItem *)sender

+ 2 - 1
iOSClient/Main/CCMain.m

@@ -57,6 +57,7 @@
     NSDate *_lockUntilDate;
 
     UIRefreshControl *_refreshControl;
+    UIDocumentInteractionController *docController;
 
     CCHud *_hud;
     
@@ -2335,7 +2336,7 @@
 {
     NSURL *url = [NSURL fileURLWithPath:[CCUtility getDirectoryProviderStorageFileID:metadata.fileID fileNameView:metadata.fileNameView]];
     
-    UIDocumentInteractionController *docController = [UIDocumentInteractionController interactionControllerWithURL:url];
+    docController = [UIDocumentInteractionController interactionControllerWithURL:url];
     docController.delegate = self;
     
     NSIndexPath *indexPath = [sectionDataSource.fileIDIndexPath objectForKey:metadata.fileID];