Files
quickshell/modules/bar/widgets/Network.qml
T

54 lines
1.5 KiB
QML

import QtQuick
import Quickshell
import Quickshell.Hyprland
import Quickshell.Io
import "../../../colors"
MouseArea {
id: networkButton
width: bar.height
height: bar.height
hoverEnabled: true
cursorShape: Qt.PointingHandCursor
onClicked: {
networkStatus.running = true
}
Rectangle {
anchors.fill: parent
color: networkButton.containsMouse ? Colors.tertiary : Qt.alpha(Colors.tertiaryContainer, 0.25)
radius: 6
border.width: 2
border.color: networkButton.containsMouse ? Colors.tertiaryContainer_fg
: Colors.secondaryContainer_fg
Text {
id: output
anchors.centerIn: parent
font.pixelSize: 26
font.family: "Nerd Font"
color: networkButton.containsMouse ? Colors.tertiary_fg : output.text === "󰤭 /󱐤" ? Colors.error : Colors.primary
}
Process {
id: networkStatus
command: ["sh", "-c", Quickshell.env("HOME") + "/.config/quickshell/modules/bar/scripts/Network.sh"]
running: true
stdout: StdioCollector {
onStreamFinished: {
output.text = this.text.trim()
console.log("networkScript output:", this.text.trim())
}
}
}
Timer {
interval: 10000
running: true
repeat: true
onTriggered: networkStatus.running = true
}
}
}