ソースを参照

Add listUpdateItems

Marino Faggiana 6 年 前
コミット
8422432acd

+ 5 - 2
PickerFileProvider/FileProvider.swift

@@ -41,7 +41,7 @@ var importDocumentURL: URL?
 var changeDocumentURL: URL?
 
 // Item for refresh
-var updateItem: NSFileProviderItem?
+var listUpdateItems = [NSFileProviderItem]()
 
 class FileProvider: NSFileProviderExtension, OCNetworkingDelegate, CCNetworkingDelegate {
     
@@ -879,7 +879,10 @@ class FileProvider: NSFileProviderExtension, OCNetworkingDelegate, CCNetworkingD
             return
         }
         
-        updateItem = try? self.item(for: identifier)
+        let item = try? self.item(for: identifier)
+        if item != nil {
+            listUpdateItems.append(item!)
+        }
        
         if serverUrl == homeServerUrl {
             NSFileProviderManager.default.signalEnumerator(for: .rootContainer, completionHandler: { (error) in

+ 1 - 3
PickerFileProvider/FileProviderEnumerator.swift

@@ -129,9 +129,7 @@ class FileProviderEnumerator: NSObject, NSFileProviderEnumerator {
     }
     
     func enumerateChanges(for observer: NSFileProviderChangeObserver, from anchor: NSFileProviderSyncAnchor) {
-        if updateItem != nil {
-            observer.didUpdate([updateItem!])
-        }
+        observer.didUpdate(listUpdateItems)
         observer.finishEnumeratingChanges(upTo: anchor, moreComing: false)
     }
     

+ 1 - 3
PickerFileProvider/FileProviderEnumeratorFile.swift

@@ -57,9 +57,7 @@ class FileProviderEnumeratorFile: NSObject, NSFileProviderEnumerator {
     }
     
     func enumerateChanges(for observer: NSFileProviderChangeObserver, from anchor: NSFileProviderSyncAnchor) {
-        if updateItem != nil {
-            observer.didUpdate([updateItem!])
-        }
+        observer.didUpdate(listUpdateItems)
         observer.finishEnumeratingChanges(upTo: anchor, moreComing: false)
     }
     

+ 1 - 3
PickerFileProvider/FileProviderEnumeratorWorkingSet.swift

@@ -73,9 +73,7 @@ class FileProviderEnumeratorWorkingSet: NSObject, NSFileProviderEnumerator {
     }
     
     func enumerateChanges(for observer: NSFileProviderChangeObserver, from anchor: NSFileProviderSyncAnchor) {
-        if updateItem != nil {
-            observer.didUpdate([updateItem!])
-        }
+        observer.didUpdate(listUpdateItems)
         observer.finishEnumeratingChanges(upTo: anchor, moreComing: false)
     }