mirror of
https://github.com/nextcloud/desktop.git
synced 2024-11-26 06:55:59 +03:00
Reconfigure the proxy when needed
This commit is contained in:
parent
8bfb44fd28
commit
c15de69156
5 changed files with 13 additions and 2 deletions
|
@ -519,6 +519,9 @@ void Application::slotSetupProxy()
|
|||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
FolderMan::instance()->setDirtyProxy(true);
|
||||
FolderMan::instance()->slotScheduleAllFolders();
|
||||
}
|
||||
|
||||
void Application::slotRefreshQuotaDisplay( qint64 total, qint64 used )
|
||||
|
|
|
@ -498,6 +498,8 @@ void Folder::setProxy()
|
|||
csync_set_module_property(_csync_ctx, "proxy_port", &proxyPort );
|
||||
csync_set_module_property(_csync_ctx, "proxy_user", proxy.user().toUtf8().data() );
|
||||
csync_set_module_property(_csync_ctx, "proxy_pwd" , proxy.password().toUtf8().data() );
|
||||
|
||||
FolderMan::instance()->setDirtyProxy(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -536,6 +538,8 @@ void Folder::startSync(const QStringList &pathList)
|
|||
QMetaObject::invokeMethod(this, "slotCSyncFinished", Qt::QueuedConnection);
|
||||
return;
|
||||
}
|
||||
} else if (FolderMan::instance()->isDirtyProxy()) {
|
||||
setProxy();
|
||||
}
|
||||
|
||||
if (_thread && _thread->isRunning()) {
|
||||
|
|
|
@ -37,7 +37,8 @@ FolderMan* FolderMan::_instance = 0;
|
|||
|
||||
FolderMan::FolderMan(QObject *parent) :
|
||||
QObject(parent),
|
||||
_syncEnabled( true )
|
||||
_syncEnabled( true ),
|
||||
_dirtyProxy( true )
|
||||
{
|
||||
// if QDir::mkpath would not be so stupid, I would not need to have this
|
||||
// duplication of folderConfigPath() here
|
||||
|
|
|
@ -109,6 +109,9 @@ public slots:
|
|||
|
||||
void slotScheduleAllFolders();
|
||||
|
||||
bool isDirtyProxy() { return _dirtyProxy; }
|
||||
void setDirtyProxy(bool value = true) { _dirtyProxy = value; }
|
||||
|
||||
private slots:
|
||||
// slot to add a folder to the syncing queue
|
||||
void slotScheduleSync( const QString & );
|
||||
|
@ -136,6 +139,7 @@ private:
|
|||
QString _currentSyncFolder;
|
||||
bool _syncEnabled;
|
||||
QQueue<QString> _scheduleQueue;
|
||||
bool _dirtyProxy; // If the proxy need to be re-configured
|
||||
|
||||
explicit FolderMan(QObject *parent = 0);
|
||||
static FolderMan *_instance;
|
||||
|
|
|
@ -66,7 +66,6 @@ SettingsDialog::SettingsDialog(Application *app, QWidget *parent) :
|
|||
NetworkSettings *networkSettings = new NetworkSettings;
|
||||
_ui->stack->addWidget(networkSettings);
|
||||
connect(networkSettings, SIGNAL(proxySettingsChanged()), app, SLOT(slotSetupProxy()));
|
||||
connect(networkSettings, SIGNAL(proxySettingsChanged()), FolderMan::instance(), SLOT(slotScheduleAllFolders()));
|
||||
|
||||
//connect(generalSettings, SIGNAL(resizeToSizeHint()), SLOT(resizeToSizeHint()));
|
||||
|
||||
|
|
Loading…
Reference in a new issue