diff options
| author | ATMDA <atdma2600@gmail.com> | 2025-11-09 19:17:26 -0500 |
|---|---|---|
| committer | ATMDA <atdma2600@gmail.com> | 2025-11-09 19:17:26 -0500 |
| commit | 81a8157b67c4d2416d9c4550afc5b50c943352e4 (patch) | |
| tree | 344276e5f9610aa5e6bb106441d9dbe524036ef3 /modules/controlcenter/network/Details.qml | |
| parent | fix: window title while keeping new panels (diff) | |
| download | caelestia-shell-81a8157b67c4d2416d9c4550afc5b50c943352e4.tar.gz caelestia-shell-81a8157b67c4d2416d9c4550afc5b50c943352e4.tar.bz2 caelestia-shell-81a8157b67c4d2416d9c4550afc5b50c943352e4.zip | |
fix: panels (i'm debugging)
new file: modules/bar/components/Settings.qml
new file: modules/bar/components/SettingsIcon.qml
new file: modules/controlcenter/audio/AudioPane.qml
new file: modules/controlcenter/network/Details.qml
new file: modules/controlcenter/network/NetworkList.qml
new file: modules/controlcenter/network/NetworkPane.qml
new file: modules/controlcenter/network/Settings.qml
Diffstat (limited to 'modules/controlcenter/network/Details.qml')
| -rw-r--r-- | modules/controlcenter/network/Details.qml | 204 |
1 files changed, 204 insertions, 0 deletions
diff --git a/modules/controlcenter/network/Details.qml b/modules/controlcenter/network/Details.qml new file mode 100644 index 0000000..86164f1 --- /dev/null +++ b/modules/controlcenter/network/Details.qml @@ -0,0 +1,204 @@ +pragma ComponentBehavior: Bound + +import ".." +import qs.components +import qs.components.controls +import qs.components.effects +import qs.components.containers +import qs.services +import qs.config +import QtQuick +import QtQuick.Layouts + +Item { + id: root + + required property Session session + readonly property var network: session.network.active + + StyledFlickable { + anchors.fill: parent + + flickableDirection: Flickable.VerticalFlick + contentHeight: layout.height + + ColumnLayout { + id: layout + + anchors.left: parent.left + anchors.right: parent.right + spacing: Appearance.spacing.normal + + MaterialIcon { + Layout.alignment: Qt.AlignHCenter + animate: true + text: root.network?.isSecure ? "lock" : "wifi" + font.pointSize: Appearance.font.size.extraLarge * 3 + font.bold: true + } + + StyledText { + Layout.alignment: Qt.AlignHCenter + animate: true + text: root.network?.ssid ?? qsTr("Unknown") + font.pointSize: Appearance.font.size.large + font.bold: true + } + + StyledText { + Layout.topMargin: Appearance.spacing.large + text: qsTr("Connection status") + font.pointSize: Appearance.font.size.larger + font.weight: 500 + } + + StyledText { + text: qsTr("Connection settings for this network") + color: Colours.palette.m3outline + } + + StyledRect { + Layout.fillWidth: true + implicitHeight: networkStatus.implicitHeight + Appearance.padding.large * 2 + + radius: Appearance.rounding.normal + color: Colours.tPalette.m3surfaceContainer + + ColumnLayout { + id: networkStatus + + anchors.left: parent.left + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + anchors.margins: Appearance.padding.large + + spacing: Appearance.spacing.larger + + Toggle { + label: qsTr("Connected") + checked: root.network?.active ?? false + toggle.onToggled: { + if (checked) { + if (root.network.isSecure) { + // TODO: Show password dialog + root.session.network.showPasswordDialog = true; + root.session.network.pendingNetwork = root.network; + } else { + Network.connectToNetwork(root.network.ssid, ""); + } + } else { + Network.disconnectFromNetwork(); + } + } + } + } + } + + StyledText { + Layout.topMargin: Appearance.spacing.large + text: qsTr("Network properties") + font.pointSize: Appearance.font.size.larger + font.weight: 500 + } + + StyledText { + text: qsTr("Additional information") + color: Colours.palette.m3outline + } + + StyledRect { + Layout.fillWidth: true + implicitHeight: networkProps.implicitHeight + Appearance.padding.large * 2 + + radius: Appearance.rounding.normal + color: Colours.tPalette.m3surfaceContainer + + ColumnLayout { + id: networkProps + + anchors.left: parent.left + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + anchors.margins: Appearance.padding.large + + spacing: Appearance.spacing.small / 2 + + StyledText { + text: qsTr("SSID") + } + + StyledText { + text: root.network?.ssid ?? qsTr("Unknown") + color: Colours.palette.m3outline + font.pointSize: Appearance.font.size.small + } + + StyledText { + Layout.topMargin: Appearance.spacing.normal + text: qsTr("BSSID") + } + + StyledText { + text: root.network?.bssid ?? qsTr("Unknown") + color: Colours.palette.m3outline + font.pointSize: Appearance.font.size.small + } + + StyledText { + Layout.topMargin: Appearance.spacing.normal + text: qsTr("Signal strength") + } + + StyledText { + text: root.network ? qsTr("%1%").arg(root.network.strength) : qsTr("N/A") + color: Colours.palette.m3outline + font.pointSize: Appearance.font.size.small + } + + StyledText { + Layout.topMargin: Appearance.spacing.normal + text: qsTr("Frequency") + } + + StyledText { + text: root.network ? qsTr("%1 MHz").arg(root.network.frequency) : qsTr("N/A") + color: Colours.palette.m3outline + font.pointSize: Appearance.font.size.small + } + + StyledText { + Layout.topMargin: Appearance.spacing.normal + text: qsTr("Security") + } + + StyledText { + text: root.network ? (root.network.isSecure ? root.network.security : qsTr("Open")) : qsTr("N/A") + color: Colours.palette.m3outline + font.pointSize: Appearance.font.size.small + } + } + } + } + } + + component Toggle: RowLayout { + required property string label + property alias checked: toggle.checked + property alias toggle: toggle + + Layout.fillWidth: true + spacing: Appearance.spacing.normal + + StyledText { + Layout.fillWidth: true + text: parent.label + } + + StyledSwitch { + id: toggle + + cLayer: 2 + } + } +} + |