diff --git a/src/core/basenetworkaccessmanager.cpp b/src/core/basenetworkaccessmanager.cpp index 18a396083..12be6c299 100644 --- a/src/core/basenetworkaccessmanager.cpp +++ b/src/core/basenetworkaccessmanager.cpp @@ -26,6 +26,10 @@ void BaseNetworkAccessManager::loadSettings() { setProxy(QNetworkProxy::NoProxy); return; } + else if (selected_proxy_type == QNetworkProxy::DefaultProxy) { + setProxy(QNetworkProxy::applicationProxy()); + return; + } Settings *settings = Settings::instance(); diff --git a/src/gui/formsettings.cpp b/src/gui/formsettings.cpp index 7868e281f..03d7c7216 100755 --- a/src/gui/formsettings.cpp +++ b/src/gui/formsettings.cpp @@ -283,7 +283,7 @@ void FormSettings::saveSettings() { void FormSettings::onProxyTypeChanged(int index) { QNetworkProxy::ProxyType selected_type = static_cast(m_ui->m_cmbProxyType->itemData(index).toInt()); - bool is_proxy_selected = selected_type != QNetworkProxy::NoProxy; + bool is_proxy_selected = selected_type != QNetworkProxy::NoProxy && selected_type != QNetworkProxy::DefaultProxy; m_ui->m_txtProxyHost->setEnabled(is_proxy_selected); m_ui->m_txtProxyPassword->setEnabled(is_proxy_selected); @@ -350,6 +350,7 @@ void FormSettings::saveBrowser() { void FormSettings::loadProxy() { m_ui->m_cmbProxyType->addItem(tr("No proxy"), QNetworkProxy::NoProxy); + m_ui->m_cmbProxyType->addItem(tr("System proxy"), QNetworkProxy::DefaultProxy); m_ui->m_cmbProxyType->addItem(tr("Socks5"), QNetworkProxy::Socks5Proxy); m_ui->m_cmbProxyType->addItem(tr("Http"), QNetworkProxy::HttpProxy); diff --git a/src/gui/formsettings.ui b/src/gui/formsettings.ui index bff35ae35..cd7b1522d 100644 --- a/src/gui/formsettings.ui +++ b/src/gui/formsettings.ui @@ -286,8 +286,8 @@ Authors of this application are NOT responsible for lost data. 0 0 - 564 - 363 + 100 + 30 @@ -364,8 +364,8 @@ Authors of this application are NOT responsible for lost data. 0 0 - 558 - 337 + 209 + 245 @@ -633,7 +633,7 @@ Authors of this application are NOT responsible for lost data. - 0 + 2 @@ -916,10 +916,13 @@ Authors of this application are NOT responsible for lost data. - + - Password is stored in plain string in RSS Guard configuration file. + Note that these settings are applied only on newly established connections. + + + Qt::AlignCenter true