marinofaggiana 5 years ago
parent
commit
abdc14e5cc

+ 2 - 6
File Provider Extension/FileProviderExtension.swift

@@ -134,16 +134,11 @@ class FileProviderExtension: NSFileProviderExtension, CCNetworkingDelegate {
             guard let metadata = fileProviderUtility.sharedInstance.getTableMetadataFromItemIdentifier(identifier) else {
                 throw NSFileProviderError(.noSuchItem)
             }
-            
             guard let parentItemIdentifier = fileProviderUtility.sharedInstance.getParentItemIdentifier(metadata: metadata, homeServerUrl: fileProviderData.sharedInstance.homeServerUrl) else {
                 throw NSFileProviderError(.noSuchItem)
             }
-            
             let item = FileProviderItem(metadata: metadata, parentItemIdentifier: parentItemIdentifier)
             
-            // Update
-            //fileProviderData.sharedInstance.signalEnumerator(for: [parentItemIdentifier, .workingSet])
-            
             return item
         }
     }
@@ -236,9 +231,10 @@ class FileProviderExtension: NSFileProviderExtension, CCNetworkingDelegate {
                 guard let metadataDB = NCManageDatabase.sharedInstance.addMetadata(metadata) else {
                     return
                 }
-                NCManageDatabase.sharedInstance.addLocalFile(metadata: metadata)
+                NCManageDatabase.sharedInstance.addLocalFile(metadata: metadataDB)
                 
                 let item = FileProviderItem(metadata: metadataDB, parentItemIdentifier: parentItemIdentifier)
+                fileProviderData.sharedInstance.fileProviderSignalDeleteItemIdentifier[item.itemIdentifier] = item.itemIdentifier
                 fileProviderData.sharedInstance.fileProviderSignalUpdateItem[item.itemIdentifier] = item
                 fileProviderData.sharedInstance.signalEnumerator(for: [parentItemIdentifier, .workingSet])
                 

+ 5 - 3
File Provider Extension/FileProviderItem.swift

@@ -57,7 +57,7 @@ class FileProviderItem: NSObject, NSFileProviderItem {
 
     // Tracking Versions
     var versionIdentifier: Data?                                    // A data value used to determine when the item changes
-    var isMostRecentVersionDownloaded: Bool = true                 // A Boolean value that indicates whether the item is the most recent version downloaded from the server
+    var isMostRecentVersionDownloaded: Bool = true                  // A Boolean value that indicates whether the item is the most recent version downloaded from the server
 
     // Monitoring File Transfers
     var isUploading: Bool = false                                   // A Boolean value that indicates whether the item is currently uploading to your remote server
@@ -94,9 +94,11 @@ class FileProviderItem: NSObject, NSFileProviderItem {
            
             let tableLocalFile = NCManageDatabase.sharedInstance.getTableLocalFile(predicate: NSPredicate(format: "ocId == %@", metadata.ocId))
             if tableLocalFile == nil {
-                // self.isDownloaded = false
+                self.isDownloaded = false
+                self.isMostRecentVersionDownloaded = false
             } else {
-                // self.isDownloaded = true
+                self.isDownloaded = true
+                self.isMostRecentVersionDownloaded = true
             }
             
             // Download