diff --git a/src/controller.cpp b/src/controller.cpp
index f6746ecb9..0e5ca69c8 100644
--- a/src/controller.cpp
+++ b/src/controller.cpp
@@ -743,11 +743,15 @@ void Controller::setApplicationProxy()
proxy.setType(QNetworkProxy::HttpProxy);
proxy.setHostName(cfg->proxyHost());
proxy.setPort(cfg->proxyPort());
+ proxy.setUser(cfg->proxyUser());
+ proxy.setPassword(cfg->proxyPassword());
break;
case 2: // SOCKS 5
proxy.setType(QNetworkProxy::Socks5Proxy);
proxy.setHostName(cfg->proxyHost());
proxy.setPort(cfg->proxyPort());
+ proxy.setUser(cfg->proxyUser());
+ proxy.setPassword(cfg->proxyPassword());
break;
case 0: // System Default
default:
diff --git a/src/neochatconfig.kcfg b/src/neochatconfig.kcfg
index 1d6db884a..3f6f101a6 100644
--- a/src/neochatconfig.kcfg
+++ b/src/neochatconfig.kcfg
@@ -133,6 +133,14 @@
1080
+
+
+
+
+
+
+
+
diff --git a/src/qml/Settings/NetworkProxyPage.qml b/src/qml/Settings/NetworkProxyPage.qml
index 7b117a038..4f7b9b691 100644
--- a/src/qml/Settings/NetworkProxyPage.qml
+++ b/src/qml/Settings/NetworkProxyPage.qml
@@ -93,6 +93,25 @@ Kirigami.ScrollablePage {
}
}
}
+ MobileForm.FormTextFieldDelegate {
+ id: userField
+ label: i18n("User")
+ text: Config.proxyUser
+ inputMethodHints: Qt.ImhUrlCharactersOnly
+ onEditingFinished: {
+ proxyConfigChanged = true
+ }
+ }
+ MobileForm.FormTextFieldDelegate {
+ id: passwordField
+ label: i18n("Password")
+ text: Config.proxyPassword
+ echoMode: TextInput.Password
+ inputMethodHints: Qt.ImhUrlCharactersOnly
+ onEditingFinished: {
+ proxyConfigChanged = true
+ }
+ }
}
}
}
@@ -111,6 +130,8 @@ Kirigami.ScrollablePage {
Config.proxyType = currentType
Config.proxyHost = hostField.text
Config.proxyPort = portField.value
+ Config.proxyUser = userField.text
+ Config.proxyPassword = passwordField.text
Config.save()
proxyConfigChanged = false
Controller.setApplicationProxy()