From 520e0cf2c6b78fb6d94687d7d2078c36e80947ae Mon Sep 17 00:00:00 2001 From: Claudio Cambra Date: Mon, 13 Mar 2023 16:28:49 +0100 Subject: [PATCH] Add readdFileProviderDomain convenience method to fileproviderdomainmanager Signed-off-by: Claudio Cambra --- .../macOS/fileproviderdomainmanager_mac.mm | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/gui/macOS/fileproviderdomainmanager_mac.mm b/src/gui/macOS/fileproviderdomainmanager_mac.mm index 33c8f0ef0..4ee11b74d 100644 --- a/src/gui/macOS/fileproviderdomainmanager_mac.mm +++ b/src/gui/macOS/fileproviderdomainmanager_mac.mm @@ -253,6 +253,34 @@ class FileProviderDomainManager::Private { } } + void readdFileProviderDomain(NSFileProviderDomain * const domain) + { + dispatch_async(dispatch_get_main_queue(), ^{ + // Wait for this to finish + dispatch_group_t dispatchGroup = dispatch_group_create(); + dispatch_group_notify(dispatchGroup, dispatch_get_main_queue(), ^{ + [NSFileProviderManager addDomain:domain completionHandler:^(NSError * const error) { + if(error) { + qCDebug(lcMacFileProviderDomainManager) << "Error adding file provider domain: " + << error.code + << error.localizedDescription; + } + }]; + }); + + dispatch_group_enter(dispatchGroup); + [NSFileProviderManager removeDomain:domain completionHandler:^(NSError * const error) { + if(error) { + qCDebug(lcMacFileProviderDomainManager) << "Error removing file provider domain: " + << error.code + << error.localizedDescription; + } + + dispatch_group_leave(dispatchGroup); + }]; + }); + } + void disconnectFileProviderDomainForAccount(const AccountState * const accountState, const QString &message) { Q_ASSERT(accountState); -- 2.30.2