summaryrefslogtreecommitdiffstats
path: root/src/settingsui
diff options
context:
space:
mode:
Diffstat (limited to 'src/settingsui')
-rw-r--r--src/settingsui/network/NetworkListView.qml8
-rw-r--r--src/settingsui/network/NetworkSettings.qml21
-rw-r--r--src/settingsui/network/PassphraseEnter.qml34
-rw-r--r--src/settingsui/settingsuiplugin/SettingsHeader.qml26
4 files changed, 82 insertions, 7 deletions
diff --git a/src/settingsui/network/NetworkListView.qml b/src/settingsui/network/NetworkListView.qml
index cbad890..d18a793 100644
--- a/src/settingsui/network/NetworkListView.qml
+++ b/src/settingsui/network/NetworkListView.qml
@@ -37,8 +37,14 @@ ListView {
clip: true
property var connectingService: null
property bool retryConnectAfterIdle: false
+ function connectBySsid() {
+ passphraseEnter.showSsid = true
+ passphraseEnter.visible = true
+ }
- Component.onCompleted: NetworkSettingsManager.services.type = NetworkSettingsType.Unknown;
+ Component.onCompleted: {
+ NetworkSettingsManager.services.type = NetworkSettingsType.Unknown;
+ }
model: NetworkSettingsManager.services
delegate: Item {
diff --git a/src/settingsui/network/NetworkSettings.qml b/src/settingsui/network/NetworkSettings.qml
index c357671..58d51b7 100644
--- a/src/settingsui/network/NetworkSettings.qml
+++ b/src/settingsui/network/NetworkSettings.qml
@@ -30,6 +30,7 @@ import QtQuick 2.6
import QtQuick.Layouts 1.3
import QtQuick.Controls 2.2
import QtDeviceUtilities.NetworkSettings 1.0
+import QtDeviceUtilities.QtButtonImageProvider 1.0
import "../common"
Item {
@@ -84,6 +85,26 @@ Item {
running: false
}
}
+ QtButton {
+ id: manualConnect
+ visible: true
+ height: pluginMain.buttonHeight
+ text: qsTr("Connect manually")
+ onClicked: {
+ networkList.connectBySsid()
+ }
+ }
+ QtButton {
+ id: manualDisconnect
+ visible: true
+ height: pluginMain.buttonHeight
+ text: qsTr("Disconnect wireless")
+ onClicked: {
+ if (NetworkSettingsManager.currentWifiConnection) {
+ NetworkSettingsManager.currentWifiConnection.disconnectService();
+ }
+ }
+ }
}
Text {
diff --git a/src/settingsui/network/PassphraseEnter.qml b/src/settingsui/network/PassphraseEnter.qml
index 1881866..1ed8d92 100644
--- a/src/settingsui/network/PassphraseEnter.qml
+++ b/src/settingsui/network/PassphraseEnter.qml
@@ -38,6 +38,7 @@ Rectangle {
color: viewSettings.backgroundColor
opacity: 0.9
property string extraInfo: ""
+ property bool showSsid: false
Rectangle {
id: frame
@@ -54,6 +55,27 @@ Rectangle {
spacing: viewSettings.spacing
Text {
+ visible: showSsid
+ font.pixelSize: pluginMain.subTitleFontSize
+ font.family: appFont
+ color: "white"
+ text: qsTr("Enter SSID")
+ }
+
+ TextField {
+ id: ssidField
+ visible: showSsid
+ width: root.width * 0.4
+ height: root.height * 0.075
+ color: "white"
+ background: Rectangle{
+ color: "transparent"
+ border.color: ssidField.focus ? viewSettings.buttonGreenColor : viewSettings.buttonGrayColor
+ border.width: ssidField.focus ? width * 0.01 : 2
+ }
+ }
+
+ Text {
font.pixelSize: pluginMain.subTitleFontSize
font.family: appFont
color: "white"
@@ -87,7 +109,12 @@ Rectangle {
id: setButton
text: qsTr("SET")
onClicked: {
- NetworkSettingsManager.userAgent.setPassphrase(passField.text)
+ if (showSsid) {
+ NetworkSettingsManager.connectBySsid(ssidField.text, passField.text)
+ showSsid = false
+ } else {
+ NetworkSettingsManager.userAgent.setPassphrase(passField.text)
+ }
passphrasePopup.visible = false;
}
}
@@ -97,7 +124,10 @@ Rectangle {
borderColor: "transparent"
fillColor: viewSettings.buttonGrayColor
onClicked: {
- NetworkSettingsManager.userAgent.cancelInput()
+ if (!showSsid) {
+ NetworkSettingsManager.userAgent.cancelInput()
+ }
+ showSsid = false
passphrasePopup.visible = false;
}
}
diff --git a/src/settingsui/settingsuiplugin/SettingsHeader.qml b/src/settingsui/settingsuiplugin/SettingsHeader.qml
index 9432789..37469e2 100644
--- a/src/settingsui/settingsuiplugin/SettingsHeader.qml
+++ b/src/settingsui/settingsuiplugin/SettingsHeader.qml
@@ -54,7 +54,7 @@ Item {
break;
}
}
- ipItem.text = qsTr("Device IP: ") + ipAddress;
+ ipItem.text = qsTr("Wired IP: ") + ipAddress;
}
Image {
@@ -90,8 +90,8 @@ Item {
Text {
id: ipItem
width: parent.width * 0.25
- height: parent.height
- anchors.verticalCenter: settingsText.verticalCenter
+ height: parent.height/2
+ anchors.top: settingsText.top
anchors.right: parent.right
anchors.rightMargin: pluginMain.margin
horizontalAlignment: Text.AlignRight
@@ -100,7 +100,7 @@ Item {
color: "white"
font.family: appFont
font.styleName: "SemiBold"
- text: qsTr("Device IP: ")
+ text: qsTr("Wired IP: ")
MouseArea {
anchors.fill: parent
@@ -108,6 +108,24 @@ Item {
}
}
+ Text {
+ id: wifiIpItem
+ width: parent.width * 0.25
+ height: parent.height/2
+ anchors.top: ipItem.bottom
+ anchors.right: parent.right
+ anchors.rightMargin: pluginMain.margin
+ horizontalAlignment: Text.AlignRight
+ verticalAlignment: Text.AlignVCenter
+ font.pixelSize: parent.height * 0.3
+ color: "white"
+ font.family: appFont
+ font.styleName: "SemiBold"
+ text: qsTr((NetworkSettingsManager.currentWifiConnection ?
+ "Wireless IP: " +
+ NetworkSettingsManager.currentWifiConnection.ipv4.address : ""))
+ }
+
Component.onCompleted: {
var networkCount = NetworkSettingsManager.services.sourceModel.rowCount();
for (var i = 0; i < networkCount; ++i) {