Add config entry for file provider module enabling
authorClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 12 May 2023 04:04:05 +0000 (12:04 +0800)
committerClaudio Cambra <claudio.cambra@nextcloud.com>
Fri, 12 May 2023 08:02:39 +0000 (16:02 +0800)
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
src/libsync/configfile.cpp
src/libsync/configfile.h

index 84803dcfc98dc7e58f8c3c2e0d873981ee59d223..ae9b1260b3f5ccff4d31664adcb52394ab6ca064 100644 (file)
@@ -106,6 +106,10 @@ static constexpr char certPath[] = "http_certificatePath";
 static constexpr char certPasswd[] = "http_certificatePasswd";
 
 static const QSet validUpdateChannels { QStringLiteral("stable"), QStringLiteral("beta") };
+
+#ifdef Q_OS_MACOS
+static constexpr auto macFileProviderModuleEnabledC = "macFileProviderModuleEnabled";
+#endif
 }
 
 namespace OCC {
@@ -1171,4 +1175,20 @@ void ConfigFile::setDiscoveredLegacyConfigPath(const QString &discoveredLegacyCo
     _discoveredLegacyConfigPath = discoveredLegacyConfigPath;
 }
 
+#ifdef Q_OS_MACOS
+
+bool ConfigFile::macFileProviderModuleEnabled() const
+{
+    QSettings settings(configFile(), QSettings::IniFormat);
+    return settings.value(macFileProviderModuleEnabledC, false).toBool();
+}
+
+void ConfigFile::setMacFileProviderModuleEnabled(const bool moduleEnabled)
+{
+    QSettings settings(configFile(), QSettings::IniFormat);
+    settings.setValue(QLatin1String(macFileProviderModuleEnabledC), moduleEnabled);
+}
+
+#endif
+
 }
index 3fc7f5e4fa35961ef909ca170a530b0691848a3d..b6a249d6c597a7c603bf211c797a6a191d26211c 100644 (file)
@@ -223,6 +223,11 @@ public:
     [[nodiscard]] static QString discoveredLegacyConfigPath();
     static void setDiscoveredLegacyConfigPath(const QString &discoveredLegacyConfigPath);
 
+#ifdef Q_OS_MACOS
+    [[nodiscard]] bool macFileProviderModuleEnabled() const;
+    void setMacFileProviderModuleEnabled(const bool moduleEnabled);
+#endif
+
 protected:
     [[nodiscard]] QVariant getPolicySetting(const QString &policy, const QVariant &defaultValue = QVariant()) const;
     void storeData(const QString &group, const QString &key, const QVariant &value);
@@ -237,7 +242,6 @@ private:
 
     [[nodiscard]] QString keychainProxyPasswordKey() const;
 
-private:
     using SharedCreds = QSharedPointer<AbstractCredentials>;
 
     static QString _confDir;