[gnote] Updated GVFS sync to not use Preferences



commit 2e5d91fe0ecc5d74d316a5a7b974826a43123892
Author: Aurimas Černius <aurisc4 gmail com>
Date:   Sun Dec 13 14:12:24 2020 +0200

    Updated GVFS sync to not use Preferences

 .../gvfssyncservice/gvfssyncservice.desktop.in.in     |  2 +-
 src/addins/gvfssyncservice/gvfssyncserviceaddin.cpp   | 19 +++++++++++--------
 src/addins/gvfssyncservice/gvfssyncserviceaddin.hpp   |  5 ++++-
 3 files changed, 16 insertions(+), 10 deletions(-)
---
diff --git a/src/addins/gvfssyncservice/gvfssyncservice.desktop.in.in 
b/src/addins/gvfssyncservice/gvfssyncservice.desktop.in.in
index 33718220..43666b7a 100644
--- a/src/addins/gvfssyncservice/gvfssyncservice.desktop.in.in
+++ b/src/addins/gvfssyncservice/gvfssyncservice.desktop.in.in
@@ -4,7 +4,7 @@ _Name=Online Directory Sync Service Plugin
 _Description=Synchronize Gnote Notes to an online directory
 _Authors=Aurimas Černius
 Category=Synchronization
-Version=0.2
+Version=0.3
 DefaultEnabled=true
 Module=libgvfssyncservice
 LibgnoteRelease=@LIBGNOTE_RELEASE@
diff --git a/src/addins/gvfssyncservice/gvfssyncserviceaddin.cpp 
b/src/addins/gvfssyncservice/gvfssyncserviceaddin.cpp
index 2437ff58..f5a6fe51 100644
--- a/src/addins/gvfssyncservice/gvfssyncserviceaddin.cpp
+++ b/src/addins/gvfssyncservice/gvfssyncserviceaddin.cpp
@@ -28,7 +28,6 @@
 #include "debug.hpp"
 #include "gvfssyncserviceaddin.hpp"
 #include "ignote.hpp"
-#include "preferences.hpp"
 #include "sharp/directory.hpp"
 #include "sharp/files.hpp"
 #include "synchronization/filesystemsyncserver.hpp"
@@ -36,6 +35,10 @@
 
 namespace gvfssyncservice {
 
+const char *SCHEMA_SYNC_GVFS = "org.gnome.gnote.sync.gvfs";
+const Glib::ustring SYNC_GVFS_URI = "uri";
+
+
 GvfsSyncServiceModule::GvfsSyncServiceModule()
 {
   ADD_INTERFACE_IMPL(GvfsSyncServiceAddin);
@@ -55,6 +58,9 @@ void GvfsSyncServiceAddin::initialize()
 {
   m_initialized = true;
   m_enabled = true;
+  if(!m_gvfs_settings) {
+    m_gvfs_settings = Gio::Settings::create(SCHEMA_SYNC_GVFS);
+  }
 }
 
 void GvfsSyncServiceAddin::shutdown()
@@ -246,7 +252,7 @@ bool GvfsSyncServiceAddin::save_configuration(const sigc::slot<void, bool, Glib:
       unmount_async([this, sync_uri, on_saved, success, error] {
         if(success) {
           m_uri = sync_uri;
-          
ignote().preferences().get_schema_settings(gnote::Preferences::SCHEMA_SYNC_GVFS)->set_string(gnote::Preferences::SYNC_GVFS_URI,
 m_uri);
+          m_gvfs_settings->set_string(SYNC_GVFS_URI, m_uri);
         }
         on_saved(success, error);
       });
@@ -324,15 +330,13 @@ bool GvfsSyncServiceAddin::test_sync_directory(const Glib::RefPtr<Gio::File> & p
 
 void GvfsSyncServiceAddin::reset_configuration()
 {
-  ignote().preferences().get_schema_settings(
-    gnote::Preferences::SCHEMA_SYNC_GVFS)->set_string(gnote::Preferences::SYNC_GVFS_URI, "");
+  m_gvfs_settings->set_string(SYNC_GVFS_URI, "");
 }
 
 
 bool GvfsSyncServiceAddin::is_configured()
 {
-  return ignote().preferences().get_schema_settings(
-    gnote::Preferences::SCHEMA_SYNC_GVFS)->get_string(gnote::Preferences::SYNC_GVFS_URI) != "";
+  return m_gvfs_settings->get_string(SYNC_GVFS_URI) != "";
 }
 
 
@@ -363,8 +367,7 @@ bool GvfsSyncServiceAddin::initialized()
 
 bool GvfsSyncServiceAddin::get_config_settings(Glib::ustring & sync_path)
 {
-  sync_path = ignote().preferences().get_schema_settings(
-    gnote::Preferences::SCHEMA_SYNC_GVFS)->get_string(gnote::Preferences::SYNC_GVFS_URI);
+  sync_path = m_gvfs_settings->get_string(SYNC_GVFS_URI);
 
   return sync_path != "";
 }
diff --git a/src/addins/gvfssyncservice/gvfssyncserviceaddin.hpp 
b/src/addins/gvfssyncservice/gvfssyncserviceaddin.hpp
index f08b6a5e..84cde3b6 100644
--- a/src/addins/gvfssyncservice/gvfssyncserviceaddin.hpp
+++ b/src/addins/gvfssyncservice/gvfssyncserviceaddin.hpp
@@ -1,7 +1,7 @@
 /*
  * gnote
  *
- * Copyright (C) 2019 Aurimas Cernius
+ * Copyright (C) 2019-2020 Aurimas Cernius
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,6 +21,8 @@
 #ifndef _GVFS_SYNC_SERVICE_ADDIN_
 #define _GVFS_SYNC_SERVICE_ADDIN_
 
+#include <giomm/settings.h>
+
 #include "sharp/dynamicmodule.hpp"
 #include "synchronization/syncserviceaddin.hpp"
 
@@ -70,6 +72,7 @@ private:
   void unmount_async(const sigc::slot<void> & completed);
   bool test_sync_directory(const Glib::RefPtr<Gio::File> & path, const Glib::ustring & sync_uri, 
Glib::ustring & error);
 
+  Glib::RefPtr<Gio::Settings> m_gvfs_settings;
   Glib::ustring m_uri;
   Gtk::Entry *m_uri_entry;
   bool m_initialized;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]