From 7c31da5a957cdc5b1295a1d24ef15d03770d49c4 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Wed, 12 Apr 2017 15:25:26 +0200 Subject: [PATCH] AccountSettings: Sync with clean discovery on Ctrl-F6 #5666 --- src/gui/accountsettings.cpp | 14 ++++++++++++++ src/gui/accountsettings.h | 1 + 2 files changed, 15 insertions(+) diff --git a/src/gui/accountsettings.cpp b/src/gui/accountsettings.cpp index 2a43653de..2c09a0ebf 100644 --- a/src/gui/accountsettings.cpp +++ b/src/gui/accountsettings.cpp @@ -114,6 +114,11 @@ AccountSettings::AccountSettings(AccountState *accountState, QWidget *parent) : connect(syncNowAction, SIGNAL(triggered()), SLOT(slotScheduleCurrentFolder())); addAction(syncNowAction); + QAction *syncNowWithRemoteDiscovery = new QAction(this); + syncNowWithRemoteDiscovery->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_F6)); + connect(syncNowWithRemoteDiscovery, SIGNAL(triggered()), SLOT(slotScheduleCurrentFolderForceRemoteDiscovery())); + addAction(syncNowWithRemoteDiscovery); + connect(ui->_folderList, SIGNAL(clicked(const QModelIndex &)), this, SLOT(slotFolderListClicked(const QModelIndex&))); @@ -480,6 +485,15 @@ void AccountSettings::slotScheduleCurrentFolder() } } +void AccountSettings::slotScheduleCurrentFolderForceRemoteDiscovery() +{ + FolderMan *folderMan = FolderMan::instance(); + if (auto folder = folderMan->folder(selectedFolderAlias())) { + folder->journalDb()->forceRemoteDiscoveryNextSync(); + folderMan->scheduleFolder(folder); + } +} + void AccountSettings::slotForceSyncCurrentFolder() { FolderMan *folderMan = FolderMan::instance(); diff --git a/src/gui/accountsettings.h b/src/gui/accountsettings.h index 2bd462852..e5729409d 100644 --- a/src/gui/accountsettings.h +++ b/src/gui/accountsettings.h @@ -72,6 +72,7 @@ protected slots: void slotAddFolder(); void slotEnableCurrentFolder(); void slotScheduleCurrentFolder(); + void slotScheduleCurrentFolderForceRemoteDiscovery(); void slotForceSyncCurrentFolder(); void slotRemoveCurrentFolder(); void slotOpenCurrentFolder(); -- 2.30.2