From 1d63e6755496e2d8c6db22426f8160d12a2717b4 Mon Sep 17 00:00:00 2001 From: inorishio Date: Sat, 13 Jun 2026 18:22:03 +0200 Subject: [PATCH] removed network module and moved it to tray, have a popout window without content! everything still in wi.i.p. --- Helpers/Network.qml | 16 +++++++++ Modules/Bar/Bar.qml | 10 ------ Modules/Bar/BarLoader.qml | 1 - Modules/Content.qml | 1 - Modules/Network/NetworkPopout.qml | 36 -------------------- Modules/Network/NetworkWidget.qml | 25 -------------- Modules/SysTray/Popouts/NetworkPopout.qml | 41 +++++++++++++++++++++++ Modules/SysTray/TrayWidget.qml | 9 +++++ Modules/SysTray/Widgets/NetworkWidget.qml | 24 +++++++++++++ 9 files changed, 90 insertions(+), 73 deletions(-) create mode 100644 Helpers/Network.qml delete mode 100644 Modules/Network/NetworkPopout.qml delete mode 100644 Modules/Network/NetworkWidget.qml create mode 100644 Modules/SysTray/Popouts/NetworkPopout.qml create mode 100644 Modules/SysTray/Widgets/NetworkWidget.qml diff --git a/Helpers/Network.qml b/Helpers/Network.qml new file mode 100644 index 0000000..97f7c8f --- /dev/null +++ b/Helpers/Network.qml @@ -0,0 +1,16 @@ +pragma ComponentBehavior: Bound + +import Quickshell +import Quickshell.Networking +import qs.Components +import qs.Config +import qs.Modules +import qs.Helpers as Helpers + +item { + id: root + + function networkScan() { + Networking.scanForNetworks(); + } +} diff --git a/Modules/Bar/Bar.qml b/Modules/Bar/Bar.qml index 9ac299b..5f2f687 100644 --- a/Modules/Bar/Bar.qml +++ b/Modules/Bar/Bar.qml @@ -9,7 +9,6 @@ import qs.Config import qs.Helpers import qs.Modules.SysTray import qs.Modules.SysTray.Widgets -import qs.Modules.Network import qs.Modules.Updates RowLayout { @@ -176,15 +175,6 @@ RowLayout { } } - DelegateChoice { - roleValue: "network" - - delegate: WrappedLoader { - sourceComponent: NetworkWidget { - } - } - } - DelegateChoice { roleValue: "media" diff --git a/Modules/Bar/BarLoader.qml b/Modules/Bar/BarLoader.qml index b5e0d75..914d64a 100644 --- a/Modules/Bar/BarLoader.qml +++ b/Modules/Bar/BarLoader.qml @@ -10,7 +10,6 @@ import qs.Config import qs.Helpers import qs.Modules.SysTray import qs.Modules.SysTray.Widgets -import qs.Modules.Network Item { id: root diff --git a/Modules/Content.qml b/Modules/Content.qml index f3035d3..77c5fa0 100644 --- a/Modules/Content.qml +++ b/Modules/Content.qml @@ -6,7 +6,6 @@ import QtQuick import qs.Config import qs.Components import qs.Modules.WSOverview -import qs.Modules.Network import qs.Modules.SysTray.Popouts import qs.Modules.Updates diff --git a/Modules/Network/NetworkPopout.qml b/Modules/Network/NetworkPopout.qml deleted file mode 100644 index 519bc6c..0000000 --- a/Modules/Network/NetworkPopout.qml +++ /dev/null @@ -1,36 +0,0 @@ -pragma ComponentBehavior: Bound - -import Quickshell -import Quickshell.Networking -import QtQuick -import QtQuick.Layouts -import qs.Components -import qs.Config -import qs.Modules -import qs.Helpers as Helpers - -Item { - id: root - - required property var wrapper - - ColumnLayout { - id: layout - - spacing: 8 - - Repeater { - model: Helpers.Network.devices - - CustomRadioButton { - id: network - - required property NetworkDevice modelData - - checked: Helpers.Network.activeDevice?.name === modelData.name - text: modelData.description - visible: modelData.name !== "lo" - } - } - } -} diff --git a/Modules/Network/NetworkWidget.qml b/Modules/Network/NetworkWidget.qml deleted file mode 100644 index 53463ee..0000000 --- a/Modules/Network/NetworkWidget.qml +++ /dev/null @@ -1,25 +0,0 @@ -import Quickshell -import QtQuick -import QtQuick.Layouts -import qs.Components -import qs.Modules - -Item { - id: root - - anchors.bottom: parent.bottom - anchors.top: parent.top - implicitWidth: layout.implicitWidth - - RowLayout { - id: layout - - anchors.bottom: parent.bottom - anchors.top: parent.top - - MaterialIcon { - Layout.alignment: Qt.AlignVCenter - text: "android_wifi_4_bar" - } - } -} diff --git a/Modules/SysTray/Popouts/NetworkPopout.qml b/Modules/SysTray/Popouts/NetworkPopout.qml new file mode 100644 index 0000000..65a7127 --- /dev/null +++ b/Modules/SysTray/Popouts/NetworkPopout.qml @@ -0,0 +1,41 @@ +pragma ComponentBehavior: Bound + +import Quickshell +import Quickshell.Networking +import QtQuick +import QtQuick.Layouts +import qs.Components +import qs.Config +import qs.Modules +import qs.Helpers as Helpers + +Item { + id: root + + required property var wrapper + + implicitHeight: networkPop.implicitHeight + implicitWidth: networkPop.implicitWidth + + CustomRect { + id: networkPop + + anchors.horizontalCenter: parent.horizontalCenter + color: DynamicColors.tPalette.m3surfaceContainer + implicitHeight: 500 + 5 * 2 + implicitWidth: 500 + 8 * 2 + radius: (20 - Appearance.padding.small) * Appearance.rounding.scale + + Item { + id: networkPopContent + + anchors.fill: parent + anchors.margins: Appearance.padding.small + + // text { + // font.pixelSize: 20 + // text: qsTr("Network Settings") + // } + } + } +} diff --git a/Modules/SysTray/TrayWidget.qml b/Modules/SysTray/TrayWidget.qml index 2d3a768..f6fd3ea 100644 --- a/Modules/SysTray/TrayWidget.qml +++ b/Modules/SysTray/TrayWidget.qml @@ -28,6 +28,11 @@ RowLayout { id: "audio", item: child }; + if (child.objectName === "networkWidget" && Config.barConfig.popouts.network) + return { + id: "network", + item: child + }; if (child.objectName === "upowerWidget" && Config.barConfig.popouts.upower) return { id: "upower", @@ -113,6 +118,10 @@ RowLayout { objectName: "audioWidget" } + NetworkWidget { + objectName: "networkWidget" + } + UPowerWidget { height: parent.height objectName: "upowerWidget" diff --git a/Modules/SysTray/Widgets/NetworkWidget.qml b/Modules/SysTray/Widgets/NetworkWidget.qml new file mode 100644 index 0000000..b03f9c0 --- /dev/null +++ b/Modules/SysTray/Widgets/NetworkWidget.qml @@ -0,0 +1,24 @@ +import QtQuick +import QtQuick.Layouts +import Quickshell.Io +import Quickshell.Services.Pipewire +import qs.Daemons +import qs.Modules +import qs.Config +import qs.Components + +RowLayout { + id: root + + // property color barColor: DynamicColors.palette.m3primary + property color textColor: DynamicColors.palette.m3onSurface + + MaterialIcon { + Layout.alignment: Qt.AlignVCenter + animate: true + color: root.textColor // Network.connected ? root.textColor : DynamicColors.palette.m3error + fill: 1 + font.pointSize: Appearance.font.size.larger + text: "android_wifi_4_bar" + } +}