diff --git a/src/gui/folder.cpp b/src/gui/folder.cpp
index 6079edb28..1d6b3ac58 100644
--- a/src/gui/folder.cpp
+++ b/src/gui/folder.cpp
@@ -104,7 +104,8 @@ Folder::Folder(const FolderDefinition& definition,
connect(_engine.data(), SIGNAL(transmissionProgress(ProgressInfo)), this, SLOT(slotTransmissionProgress(ProgressInfo)));
connect(_engine.data(), SIGNAL(itemCompleted(const SyncFileItem &, const PropagatorJob &)),
this, SLOT(slotItemCompleted(const SyncFileItem &, const PropagatorJob &)));
- connect(_engine.data(), SIGNAL(newBigFolder(QString)), this, SLOT(slotNewBigFolderDiscovered(QString)));
+ connect(_engine.data(), SIGNAL(newBigFolder(QString,bool)),
+ this, SLOT(slotNewBigFolderDiscovered(QString,bool)));
connect(_engine.data(), SIGNAL(seenLockedFile(QString)), FolderMan::instance(), SLOT(slotSyncOnceFileUnlocks(QString)));
connect(_engine.data(), SIGNAL(aboutToPropagate(SyncFileItemVector&)),
SLOT(slotLogPropagationStart()));
@@ -930,7 +931,7 @@ void Folder::slotItemCompleted(const SyncFileItem &item, const PropagatorJob& jo
emit ProgressDispatcher::instance()->itemCompleted(alias(), item, job);
}
-void Folder::slotNewBigFolderDiscovered(const QString &newF)
+void Folder::slotNewBigFolderDiscovered(const QString &newF, bool isExternal)
{
auto newFolder = newF;
if (!newFolder.endsWith(QLatin1Char('/'))) {
@@ -955,9 +956,11 @@ void Folder::slotNewBigFolderDiscovered(const QString &newF)
journal->setSelectiveSyncList(SyncJournalDb::SelectiveSyncUndecidedList, undecidedList);
emit newBigFolderDiscovered(newFolder);
}
- QString message = tr("A new folder larger than %1 MB has been added: %2.\n"
- "Please go in the settings to select it if you wish to download it.")
- .arg(ConfigFile().newBigFolderSizeLimit().second).arg(newF);
+ QString message = !isExternal ?
+ (tr("A new folder larger than %1 MB has been added: %2.\n")
+ .arg(ConfigFile().newBigFolderSizeLimit().second).arg(newF))
+ : (tr("A folder from an external storage has been added.\n"));
+ message += tr("Please go in the settings to select it if you wish to download it.");
auto logger = Logger::instance();
logger->postOptionalGuiLog(Theme::instance()->appNameGUI(), message);
diff --git a/src/gui/folder.h b/src/gui/folder.h
index b44f5799b..57a618b00 100644
--- a/src/gui/folder.h
+++ b/src/gui/folder.h
@@ -290,7 +290,7 @@ private slots:
void slotEmitFinishedDelayed();
- void slotNewBigFolderDiscovered(const QString &);
+ void slotNewBigFolderDiscovered(const QString &, bool isExternal);
void slotLogPropagationStart();
diff --git a/src/gui/generalsettings.ui b/src/gui/generalsettings.ui
index 06b7aa034..5a035a592 100644
--- a/src/gui/generalsettings.ui
+++ b/src/gui/generalsettings.ui
@@ -52,34 +52,32 @@
Advanced
-
- -
-
-
- Qt::Horizontal
-
-
-
- 555
- 20
-
-
-
+
+
-
+
+
-
+
+
+ Edit &Ignored Files
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 555
+ 20
+
+
+
+
+
- -
-
-
-
- 0
- 0
-
-
-
- S&how crash reporter
-
-
-
- -
+
-
-
@@ -123,37 +121,26 @@
- -
-
-
-
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
-
-
- -
-
-
- Edit &Ignored Files
-
-
-
- -
+
-
Ask for confirmation before synchronizing external storages
+ -
+
+
+
+ 0
+ 0
+
+
+
+ S&how crash reporter
+
+
+
diff --git a/src/libsync/discoveryphase.cpp b/src/libsync/discoveryphase.cpp
index 79b476d09..faa7c0b07 100644
--- a/src/libsync/discoveryphase.cpp
+++ b/src/libsync/discoveryphase.cpp
@@ -99,7 +99,7 @@ bool DiscoveryJob::checkSelectiveSyncNewFolder(const QString& path, const char *
return false;
}
- emit newBigFolder(path);
+ emit newBigFolder(path, true);
return true;
}
@@ -125,7 +125,7 @@ bool DiscoveryJob::checkSelectiveSyncNewFolder(const QString& path, const char *
if (result >= limit) {
// we tell the UI there is a new folder
- emit newBigFolder(path);
+ emit newBigFolder(path, false);
return true;
} else {
// it is not too big, put it in the white list (so we will not do more query for the children)
diff --git a/src/libsync/discoveryphase.h b/src/libsync/discoveryphase.h
index e521c1fab..43c292e7e 100644
--- a/src/libsync/discoveryphase.h
+++ b/src/libsync/discoveryphase.h
@@ -229,7 +229,7 @@ signals:
void doGetSizeSignal(const QString &path, qint64 *result);
// A new folder was discovered and was not synced because of the confirmation feature
- void newBigFolder(const QString &folder);
+ void newBigFolder(const QString &folder, bool isExternal);
};
}
diff --git a/src/libsync/syncengine.cpp b/src/libsync/syncengine.cpp
index b6c347fe3..26ffecbe9 100644
--- a/src/libsync/syncengine.cpp
+++ b/src/libsync/syncengine.cpp
@@ -835,8 +835,8 @@ void SyncEngine::startSync()
connect(discoveryJob, SIGNAL(folderDiscovered(bool,QString)),
this, SIGNAL(folderDiscovered(bool,QString)));
- connect(discoveryJob, SIGNAL(newBigFolder(QString)),
- this, SIGNAL(newBigFolder(QString)));
+ connect(discoveryJob, SIGNAL(newBigFolder(QString,bool)),
+ this, SIGNAL(newBigFolder(QString,bool)));
// This is used for the DiscoveryJob to be able to request the main thread/
diff --git a/src/libsync/syncengine.h b/src/libsync/syncengine.h
index 927c7ad5b..f998790ba 100644
--- a/src/libsync/syncengine.h
+++ b/src/libsync/syncengine.h
@@ -143,7 +143,7 @@ signals:
void aboutToRestoreBackup(bool *restore);
// A new folder was discovered and was not synced because of the confirmation feature
- void newBigFolder(const QString &folder);
+ void newBigFolder(const QString &folder, bool isExternal);
/** Emitted when propagation has problems with a locked file.
*