From 4e9d51e487081d3bddeccab2ae38a9be0332f3fc Mon Sep 17 00:00:00 2001 From: Claudio Cambra Date: Sat, 11 Mar 2023 00:00:25 +0100 Subject: [PATCH] Add method to private FileProviderDomainManager to signal enumerator Signed-off-by: Claudio Cambra --- .../macOS/fileproviderdomainmanager_mac.mm | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/gui/macOS/fileproviderdomainmanager_mac.mm b/src/gui/macOS/fileproviderdomainmanager_mac.mm index 3b0ae2d38..526107695 100644 --- a/src/gui/macOS/fileproviderdomainmanager_mac.mm +++ b/src/gui/macOS/fileproviderdomainmanager_mac.mm @@ -124,6 +124,26 @@ class FileProviderDomainManager::Private { }]; } + void signalEnumeratorChanged(const Account * const account) + { + const auto accountId = account->id(); + qCDebug(lcMacFileProviderDomainManager) << "Signalling enumerator changed in file provider domain for account with id: " << accountId; + + if(!_registeredDomains.contains(accountId)) { + qCDebug(lcMacFileProviderDomainManager) << "File provider domain not found for id: " << accountId; + return; + } + + NSFileProviderDomain * const fileProviderDomain = _registeredDomains[accountId]; + NSFileProviderManager * const fpManager = [NSFileProviderManager managerForDomain:fileProviderDomain]; + [fpManager signalEnumeratorForContainerItemIdentifier:NSFileProviderWorkingSetContainerItemIdentifier completionHandler:^(NSError *error) { + if (error != nil) { + qCDebug(lcMacFileProviderDomainManager) << "Error signalling enumerator changed for working set:" + << error.localizedDescription; + } + }]; + } + private: QHash _registeredDomains; }; -- 2.30.2