List available proxies on start
This commit is contained in:
parent
f39a83edc6
commit
8cd6604e40
42
MultiMC.cpp
42
MultiMC.cpp
@ -152,6 +152,46 @@ MultiMC::MultiMC(int &argc, char **argv) : QApplication(argc, argv)
|
||||
// set up a basic autodetected proxy (system default)
|
||||
QNetworkProxyFactory::setUseSystemConfiguration(true);
|
||||
|
||||
QLOG_INFO() << "Detecting system proxy settings...";
|
||||
auto proxies = QNetworkProxyFactory::systemProxyForQuery();
|
||||
if (proxies.size() == 1 && proxies[0].type() == QNetworkProxy::NoProxy)
|
||||
{
|
||||
QLOG_INFO() << "No proxy found.";
|
||||
}
|
||||
else for (auto proxy : proxies)
|
||||
{
|
||||
QString proxyDesc;
|
||||
if (proxy.type() == QNetworkProxy::NoProxy)
|
||||
{
|
||||
QLOG_INFO() << "Using no proxy is an option!";
|
||||
continue;
|
||||
}
|
||||
switch (proxy.type())
|
||||
{
|
||||
case QNetworkProxy::DefaultProxy:
|
||||
proxyDesc = "Default proxy: ";
|
||||
break;
|
||||
case QNetworkProxy::Socks5Proxy:
|
||||
proxyDesc = "Socks5 proxy: ";
|
||||
break;
|
||||
case QNetworkProxy::HttpProxy:
|
||||
proxyDesc = "HTTP proxy: ";
|
||||
break;
|
||||
case QNetworkProxy::HttpCachingProxy:
|
||||
proxyDesc = "HTTP caching: ";
|
||||
break;
|
||||
case QNetworkProxy::FtpCachingProxy:
|
||||
proxyDesc = "FTP caching: ";
|
||||
break;
|
||||
}
|
||||
proxyDesc += QString("%3@%1:%2 pass %4")
|
||||
.arg(proxy.hostName())
|
||||
.arg(proxy.port())
|
||||
.arg(proxy.user())
|
||||
.arg(proxy.password());
|
||||
QLOG_INFO() << proxyDesc;
|
||||
}
|
||||
|
||||
// create the global network manager
|
||||
m_qnam.reset(new QNetworkAccessManager(this));
|
||||
|
||||
@ -354,7 +394,7 @@ std::shared_ptr<JavaVersionList> MultiMC::javalist()
|
||||
return m_javalist;
|
||||
}
|
||||
|
||||
int main_gui(MultiMC & app)
|
||||
int main_gui(MultiMC &app)
|
||||
{
|
||||
// show main window
|
||||
MainWindow mainWin;
|
||||
|
Loading…
Reference in New Issue
Block a user