Marino Faggiana 6 년 전
부모
커밋
359ec69840

+ 1 - 1
iOSClient/Brand/File_Provider_Extension.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<string>2.22.6</string>
 	<key>CFBundleVersion</key>
-	<string>2</string>
+	<string>3</string>
 	<key>NSExtension</key>
 	<dict>
 		<key>NSExtensionFileProviderDocumentGroup</key>

+ 1 - 1
iOSClient/Brand/Notification_Service_Extension.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<string>2.22.6</string>
 	<key>CFBundleVersion</key>
-	<string>2</string>
+	<string>3</string>
 	<key>NSExtension</key>
 	<dict>
 		<key>NSExtensionPointIdentifier</key>

+ 1 - 1
iOSClient/Brand/Share.plist

@@ -19,7 +19,7 @@
 	<key>CFBundleShortVersionString</key>
 	<string>2.22.6</string>
 	<key>CFBundleVersion</key>
-	<string>2</string>
+	<string>3</string>
 	<key>NSAppTransportSecurity</key>
 	<dict>
 		<key>NSAllowsArbitraryLoads</key>

+ 1 - 1
iOSClient/Brand/iOSClient.plist

@@ -69,7 +69,7 @@
 		</dict>
 	</array>
 	<key>CFBundleVersion</key>
-	<string>2</string>
+	<string>3</string>
 	<key>FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED</key>
 	<true/>
 	<key>Fabric</key>

+ 3 - 3
iOSClient/Database/NCDatabase.swift

@@ -208,6 +208,7 @@ class tableMetadata: Object {
     @objc dynamic var fileID = ""
     @objc dynamic var fileName = ""
     @objc dynamic var fileNameView = ""
+    @objc dynamic var hasPreview: Int = -1
     @objc dynamic var iconName = ""
     @objc dynamic var permissions = ""
     @objc dynamic var session = ""
@@ -216,7 +217,6 @@ class tableMetadata: Object {
     @objc dynamic var sessionTaskIdentifier: Int = 0
     @objc dynamic var size: Double = 0
     @objc dynamic var status: Int = 0
-    @objc dynamic var thumbnailExists: Bool = false
     @objc dynamic var typeFile = ""
     
     override static func primaryKey() -> String {
@@ -241,6 +241,7 @@ class tablePhotos: Object {
     @objc dynamic var fileID = ""
     @objc dynamic var fileName = ""
     @objc dynamic var fileNameView = ""
+    @objc dynamic var hasPreview: Int = -1
     @objc dynamic var iconName = ""
     @objc dynamic var permissions = ""
     @objc dynamic var session = ""
@@ -249,7 +250,6 @@ class tablePhotos: Object {
     @objc dynamic var sessionTaskIdentifier: Int = 0
     @objc dynamic var size: Double = 0
     @objc dynamic var status: Int = 0
-    @objc dynamic var thumbnailExists: Bool = false
     @objc dynamic var typeFile = ""
     
     override static func primaryKey() -> String {
@@ -299,9 +299,9 @@ class tableTrash: Object {
     @objc dynamic var fileID = ""
     @objc dynamic var fileName = ""
     @objc dynamic var filePath = ""
+    @objc dynamic var hasPreview: Int = -1
     @objc dynamic var iconName = ""
     @objc dynamic var size: Double = 0
-    @objc dynamic var thumbnailExists: Bool = false
     @objc dynamic var typeFile = ""
     @objc dynamic var trashbinFileName = ""
     @objc dynamic var trashbinOriginalLocation = ""

+ 2 - 1
iOSClient/Database/NCManageDatabase.swift

@@ -57,7 +57,7 @@ class NCManageDatabase: NSObject {
         let config = Realm.Configuration(
         
             fileURL: dirGroup?.appendingPathComponent("\(k_appDatabaseNextcloud)/\(k_databaseDefault)"),
-            schemaVersion: 30,
+            schemaVersion: 31,
             
             // 10 : Version 2.18.0
             // 11 : Version 2.18.2
@@ -80,6 +80,7 @@ class NCManageDatabase: NSObject {
             // 28 : Version 2.22.3.5
             // 29 : Version 2.22.5.2
             // 30 : Version 2.22.6.0
+            // 31 : Version 2.22.6.3
             
             migrationBlock: { migration, oldSchemaVersion in
                 // We haven’t migrated anything yet, so oldSchemaVersion == 0

+ 3 - 3
iOSClient/Favorites/CCFavorites.m

@@ -269,7 +269,7 @@
 }
 
 #pragma --------------------------------------------------------------------------------------------
-#pragma mark ==== Download Thumbnail ====
+#pragma mark ==== Download Preview ====
 #pragma --------------------------------------------------------------------------------------------
 
 - (void)downloadThumbnail:(tableMetadata *)metadata serverUrl:(NSString *)serverUrl indexPath:(NSIndexPath *)indexPath
@@ -627,8 +627,8 @@
     
     tableMetadata *metadataFolder = [[NCManageDatabase sharedInstance] getMetadataWithPredicate:[NSPredicate predicateWithFormat:@"fileID == %@", directory.fileID]];
     
-    // Download thumbnail
-    if (metadata.thumbnailExists && !metadataFolder.e2eEncrypted && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
+    // Download Preview
+    if (metadata.hasPreview == 1 && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
         [self downloadThumbnail:metadata serverUrl:serverUrl indexPath:indexPath];
     }
     

+ 4 - 4
iOSClient/Main/CCMain.m

@@ -988,7 +988,7 @@
     NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:convertedLocation];
     tableMetadata *metadata = [[NCMainCommon sharedInstance] getMetadataFromSectionDataSourceIndexPath:indexPath sectionDataSource:sectionDataSource];
     
-    if (metadata.thumbnailExists && _metadataFolder.e2eEncrypted == NO) {
+    if (metadata.hasPreview == 1) {
         CCCellMain *cell = [self.tableView cellForRowAtIndexPath:indexPath];
         
         if (cell) {
@@ -1014,7 +1014,7 @@
 
 #pragma mark -
 #pragma --------------------------------------------------------------------------------------------
-#pragma mark ==== Download Thumbnail ====
+#pragma mark ==== Download Preview ====
 #pragma --------------------------------------------------------------------------------------------
 
 - (void)downloadThumbnail:(tableMetadata *)metadata serverUrl:(NSString *)serverUrl indexPath:(NSIndexPath *)indexPath
@@ -4189,8 +4189,8 @@
         return [CCCellMain new];
     }
     
-    // Download thumbnail
-    if (metadata.thumbnailExists && !_metadataFolder.e2eEncrypted && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
+    // Download Preview
+    if (metadata.hasPreview == 1 && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
         [self downloadThumbnail:metadata serverUrl:serverUrl indexPath:indexPath];
     }
     

+ 1 - 1
iOSClient/Media/CCMedia.m

@@ -945,7 +945,7 @@
         
             imageView.image = [UIImage imageNamed:@"file_photo"];
 
-            if (metadata.thumbnailExists && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
+            if (metadata.hasPreview == 1 && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
                 [self downloadThumbnail:metadata indexPath:indexPath];
             }
         }

+ 1 - 1
iOSClient/Offline/NCOffline.swift

@@ -561,7 +561,7 @@ class NCOffline: UIViewController ,UICollectionViewDataSource, UICollectionViewD
             image = UIImage.init(contentsOfFile: CCUtility.getDirectoryProviderStorageIconFileID(metadata.fileID, fileNameView: metadata.fileName))
             imagePreview = true
         } else {
-            if metadata.thumbnailExists && !CCUtility.fileProviderStorageIconExists(metadata.fileID, fileNameView: metadata.fileName) {
+            if metadata.hasPreview == 1 && !CCUtility.fileProviderStorageIconExists(metadata.fileID, fileNameView: metadata.fileName) {
                 downloadThumbnail(with: metadata, indexPath: indexPath)
             }
         }

+ 1 - 1
iOSClient/Shares/NCShares.m

@@ -330,7 +330,7 @@
 
             if (cell.fileImageView.image == nil) {
                 
-                if (metadata.thumbnailExists && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
+                if (metadata.hasPreview == 1 && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
                     [self downloadThumbnail:metadata serverUrl:table.serverUrl indexPath:indexPath];
                 } else {
                     cell.fileImageView.image = [UIImage imageNamed:metadata.iconName];

+ 1 - 1
iOSClient/Transfers/CCTransfers.m

@@ -465,7 +465,7 @@
     tableMetadata *metadataFolder = [[NCManageDatabase sharedInstance] getMetadataWithPredicate:[NSPredicate predicateWithFormat:@"fileID == %@", directory.fileID]];
     
     // Download thumbnail
-    if (metadata.thumbnailExists && !metadataFolder.e2eEncrypted && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
+    if (metadata.hasPreview == 1 && ![CCUtility fileProviderStorageIconExists:metadata.fileID fileNameView:metadata.fileNameView]) {
         [self downloadThumbnail:metadata serverUrl:serverUrl indexPath:indexPath];
     }
   

+ 1 - 1
iOSClient/Trash/NCTrash.swift

@@ -603,7 +603,7 @@ class NCTrash: UIViewController ,UICollectionViewDataSource, UICollectionViewDel
         if FileManager().fileExists(atPath: CCUtility.getDirectoryProviderStorageIconFileID(tableTrash.fileID, fileNameView: tableTrash.fileName)) {
             image = UIImage.init(contentsOfFile: CCUtility.getDirectoryProviderStorageIconFileID(tableTrash.fileID, fileNameView: tableTrash.fileName))
         } else {
-            if tableTrash.thumbnailExists && !CCUtility.fileProviderStorageIconExists(tableTrash.fileID, fileNameView: tableTrash.fileName) {
+            if tableTrash.hasPreview == 1 && !CCUtility.fileProviderStorageIconExists(tableTrash.fileID, fileNameView: tableTrash.fileName) {
                 downloadThumbnail(with: tableTrash, indexPath: indexPath)
             }
         }

+ 8 - 7
iOSClient/Utility/CCUtility.m

@@ -1199,6 +1199,7 @@
     metadata.directoryID = directoryID;
     metadata.fileName = fileName;
     metadata.fileNameView = fileNameView;
+    metadata.hasPreview = itemDto.hasPreview;
     metadata.iconName = @"";
     metadata.permissions = itemDto.permissions;
     metadata.etag = itemDto.etag;
@@ -1258,12 +1259,13 @@
         ext = ext.uppercaseString;
         fileUTI = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, fileExtension, NULL);
 
-        // thumbnailExists
-            
-        if ([ext isEqualToString:@"JPG"] || [ext isEqualToString:@"PNG"] || [ext isEqualToString:@"JPEG"] || [ext isEqualToString:@"GIF"] || [ext isEqualToString:@"BMP"] || [ext isEqualToString:@"MP3"]  || [ext isEqualToString:@"MOV"]  || [ext isEqualToString:@"MP4"]  || [ext isEqualToString:@"M4V"] || [ext isEqualToString:@"3GP"])
-            metadata.thumbnailExists = YES;
-        else
-            metadata.thumbnailExists = NO;
+        // hasPreview
+        if (metadata.hasPreview == -1) {
+            if ([ext isEqualToString:@"JPG"] || [ext isEqualToString:@"PNG"] || [ext isEqualToString:@"JPEG"] || [ext isEqualToString:@"GIF"] || [ext isEqualToString:@"BMP"] || [ext isEqualToString:@"MP3"]  || [ext isEqualToString:@"MOV"]  || [ext isEqualToString:@"MP4"]  || [ext isEqualToString:@"M4V"] || [ext isEqualToString:@"3GP"])
+                metadata.hasPreview = 1;
+            else
+                metadata.hasPreview = 0;
+        }
         
         // Type image
         if (UTTypeConformsTo(fileUTI, kUTTypeImage)) {
@@ -1344,7 +1346,6 @@
     
     metadata.date = attributes[NSFileModificationDate];
     metadata.size = [attributes[NSFileSize] longValue];
-    metadata.thumbnailExists = false;
     
     [self insertTypeFileIconName:metadata.fileNameView metadata:metadata];