From cc72cc361c4ee15f9e7eb7a8c5875a4a84244ae1 Mon Sep 17 00:00:00 2001 From: Claudio Cambra Date: Tue, 7 Mar 2023 23:30:50 +0100 Subject: [PATCH] Keep track of additional details about enumerating item in the FileProviderEnumerator Signed-off-by: Claudio Cambra --- .../FileProviderExt/FileProviderEnumerator.swift | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/FileProviderEnumerator.swift b/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/FileProviderEnumerator.swift index 3ab5470d1..2431d5bf0 100644 --- a/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/FileProviderEnumerator.swift +++ b/shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/FileProviderEnumerator.swift @@ -18,18 +18,28 @@ import NextcloudKit class FileProviderEnumerator: NSObject, NSFileProviderEnumerator { private let enumeratedItemIdentifier: NSFileProviderItemIdentifier + private var enumeratedItemMetadata: NextcloudItemMetadataTable? + private var enumeratingSystemIdentifier: Bool { + return FileProviderEnumerator.isSystemIdentifier(enumeratedItemIdentifier) + } private let anchor = NSFileProviderSyncAnchor(Date().description.data(using: .utf8)!) // TODO: actually use this in NCKit and server requests private static let maxItemsPerFileProviderPage = 100 let ncAccount: NextcloudAccount let ncKit: NextcloudKit var serverUrl: String = "" + + private static func isSystemIdentifier(_ identifier: NSFileProviderItemIdentifier) -> Bool { + return identifier == .rootContainer || + identifier == .trashContainer || + identifier == .workingSet + } init(enumeratedItemIdentifier: NSFileProviderItemIdentifier, ncAccount: NextcloudAccount, ncKit: NextcloudKit) { self.enumeratedItemIdentifier = enumeratedItemIdentifier self.ncAccount = ncAccount self.ncKit = ncKit - if enumeratedItemIdentifier == .rootContainer || enumeratedItemIdentifier == .trashContainer || enumeratedItemIdentifier == .workingSet { + if FileProviderEnumerator.isSystemIdentifier(enumeratedItemIdentifier) { NSLog("Providing enumerator for a system defined container: %@", enumeratedItemIdentifier.rawValue) self.serverUrl = ncAccount.davFilesUrl } else { -- 2.30.2