}
switch (proxyType) {
- case QNetworkProxy::NoProxy:
- qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
- break;
- case QNetworkProxy::DefaultProxy:
- qCInfo(lcClientProxy) << "Set proxy configuration to use system configuration";
- QNetworkProxyFactory::setUseSystemConfiguration(true);
- break;
- case QNetworkProxy::Socks5Proxy:
- proxy.setType(QNetworkProxy::Socks5Proxy);
- qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(proxy);
- break;
- case QNetworkProxy::HttpProxy:
- proxy.setType(QNetworkProxy::HttpProxy);
- qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(proxy);
- break;
- default:
- break;
+ case QNetworkProxy::NoProxy:
+ qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
+ break;
+ case QNetworkProxy::DefaultProxy:
+ qCInfo(lcClientProxy) << "Set proxy configuration to use the prefered system proxy for http tcp connections";
+ {
+ QNetworkProxyQuery query;
+ query.setProtocolTag("http");
+ query.setQueryType(QNetworkProxyQuery::TcpSocket);
+ auto proxies = QNetworkProxyFactory::proxyForQuery(query);
+ proxy = proxies.first();
+ }
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(proxy);
+ break;
+ case QNetworkProxy::Socks5Proxy:
+ proxy.setType(QNetworkProxy::Socks5Proxy);
+ qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(proxy);
+ break;
+ case QNetworkProxy::HttpProxy:
+ proxy.setType(QNetworkProxy::HttpProxy);
+ qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(proxy);
+ break;
+ default:
+ break;
}
}
connect(_webView, &WebView::urlCatched, this, &WebViewPage::urlCatched);
- _useSystemProxy = QNetworkProxyFactory::usesSystemConfiguration();
+ //_useSystemProxy = QNetworkProxyFactory::usesSystemConfiguration();
}
WebViewPage::~WebViewPage() {
- QNetworkProxyFactory::setUseSystemConfiguration(_useSystemProxy);
+ //QNetworkProxyFactory::setUseSystemConfiguration(_useSystemProxy);
}
void WebViewPage::initializePage() {
- QNetworkProxy::setApplicationProxy(QNetworkProxy::applicationProxy());
+ //QNetworkProxy::setApplicationProxy(QNetworkProxy::applicationProxy());
QString url;
if (_ocWizard->registration()) {