Properly set cancellation, pausing, and resuming handlers on FileProviderExtension...
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Wed, 15 Mar 2023 11:37:14 +0000 (12:37 +0100)
committerClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 12 May 2023 05:28:46 +0000 (13:28 +0800)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/FileProviderExtension.swift

index 3a10b993fc77781928b97d6ddc6b2f95b7444201..892d1619d8d06fa1a7474fce8deaffe4d11255c3 100644 (file)
@@ -157,8 +157,8 @@ class FileProviderExtension: NSObject, NSFileProviderReplicatedExtension, NKComm
 
                 self.ncKit.download(serverUrlFileName: serverUrlFileName,
                                     fileNameLocalPath: fileNameLocalPath.path,
-                                    requestHandler: { _ in
-
+                                    requestHandler: { request in
+                    progress.setHandlersFromAfRequest(request)
                 }, taskHandler: { task in
                     NSFileProviderManager(for: self.domain)?.register(task, forItemWithIdentifier: itemIdentifier, completionHandler: { _ in })
                 }, progressHandler: { downloadProgress in
@@ -294,7 +294,8 @@ class FileProviderExtension: NSObject, NSFileProviderReplicatedExtension, NKComm
 
         self.ncKit.upload(serverUrlFileName: newServerUrlFileName,
                           fileNameLocalPath: fileNameLocalPath,
-                          requestHandler: { _ in
+                          requestHandler: { request in
+            progress.setHandlersFromAfRequest(request)
         }, taskHandler: { task in
             NSFileProviderManager(for: self.domain)?.register(task, forItemWithIdentifier: itemTemplate.itemIdentifier, completionHandler: { _ in })
         }, progressHandler: { uploadProgress in
@@ -483,7 +484,8 @@ class FileProviderExtension: NSObject, NSFileProviderReplicatedExtension, NKComm
 
                 self.ncKit.upload(serverUrlFileName: newServerUrlFileName,
                                   fileNameLocalPath: fileNameLocalPath,
-                                  requestHandler: { _ in
+                                  requestHandler: { request in
+                    progress.setHandlersFromAfRequest(request)
                 }, taskHandler: { task in
                     NSFileProviderManager(for: self.domain)?.register(task, forItemWithIdentifier: item.itemIdentifier, completionHandler: { _ in })
                 }, progressHandler: { uploadProgress in