From 0a75b475096821484546e780387dccaa016e3bca Mon Sep 17 00:00:00 2001 From: ckieschnick Date: Thu, 5 Sep 2019 04:57:37 +0200 Subject: [PATCH] Connect ShareObserver to group signals (#3441) Connected ShareObserver to allow to import from a share before an export happens. --- src/keeshare/ShareObserver.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/keeshare/ShareObserver.cpp b/src/keeshare/ShareObserver.cpp index 7247db52b..8aa2dcb8e 100644 --- a/src/keeshare/ShareObserver.cpp +++ b/src/keeshare/ShareObserver.cpp @@ -41,6 +41,10 @@ ShareObserver::ShareObserver(QSharedPointer db, QObject* parent) { connect(KeeShare::instance(), SIGNAL(activeChanged()), SLOT(handleDatabaseChanged())); + connect(m_db.data(), SIGNAL(groupDataChanged(Group*)), SLOT(handleDatabaseChanged())); + connect(m_db.data(), SIGNAL(groupAdded()), SLOT(handleDatabaseChanged())); + connect(m_db.data(), SIGNAL(groupRemoved()), SLOT(handleDatabaseChanged())); + connect(m_db.data(), SIGNAL(databaseModified()), SLOT(handleDatabaseChanged())); connect(m_db.data(), SIGNAL(databaseSaved()), SLOT(handleDatabaseSaved())); @@ -109,10 +113,12 @@ void ShareObserver::reinitialize() } if (update.newReference.isExporting()) { exported[update.newReference.path] << update.group->name(); + // export is only on save } if (update.newReference.isImporting()) { imported[update.newReference.path] << update.group->name(); + // import has to occur immediately const auto result = this->importShare(update.newReference.path); if (!result.isValid()) { // tolerable result - blocked import or missing source