add networking info in bar

This commit is contained in:
lucy 2026-08-26 19:01:48 +02:00
commit 1f06bf5ee4
13 changed files with 179 additions and 78 deletions

View file

@ -1,3 +1,4 @@
pragma ComponentBehavior: Bound
import qs
import qs.settings
import Quickshell
@ -6,8 +7,7 @@ import qs.widgets
import qs.modules.Services
import QtQuick.Layouts
import QtQuick.Controls
import Quickshell.Widgets
import QtQuick.Effects
PopupWindow {
implicitWidth: 400
@ -16,19 +16,20 @@ PopupWindow {
anchor.gravity: Edges.Bottom | Edges.Left
anchor.margins.top: 40
color: 'transparent'
grabFocus: true
Rectangle {
id: test
id: root
anchors.fill: parent
color: Colors.moduleBg
radius: Config.rounding
ColumnLayout {
id: audioLayout
anchors.fill: parent
anchors.centerIn: parent
anchors.centerIn: parent
anchors.margins: 10
spacing: 8
Repeater {
model: Audio.sinks
delegate: Rectangle {
id: audioDelContainer
@ -46,45 +47,29 @@ PopupWindow {
StyledText {
text: audioDelContainer.modelData.nickname
Layout.leftMargin: 10
Layout.leftMargin: 10
Layout.fillWidth: true
}
IconImage {
source: Quickshell.iconPath(Audio.getVolumeIcon(audioDelContainer.modelData))
implicitSize: 16
layer.enabled: true
layer.effect: MultiEffect {
colorization: 1.0
colorizationColor: Colors.text
}
StyledIcon {
iconName: Audio.getVolumeIcon(audioDelContainer.modelData)
MouseArea {
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
acceptedButtons: Qt.LeftButton
onClicked: {
audioDelContainer.modelData.audio.muted = !audioDelContainer.modelData.audio.muted
}
onClicked: {
audioDelContainer.modelData.audio.muted = !audioDelContainer.modelData.audio.muted;
}
}
}
IconImage {
source: Quickshell.iconPath(audioDelContainer.modelData === Audio.preferredAudio ? "radio-checked-symbolic" : "radio-symbolic")
implicitSize: 16
layer.enabled: true
layer.effect: MultiEffect {
colorization: 1.0
colorizationColor: Colors.text
brightness: 0.5
}
StyledIcon {
iconName: audioDelContainer.modelData === Audio.preferredAudio ? "radio-checked-symbolic" : "radio-symbolic"
MouseArea {
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
acceptedButtons: Qt.LeftButton
onClicked: {
Audio.setDefaultSink(audioDelContainer.modelData)
}
onClicked: {
Audio.setDefaultSink(audioDelContainer.modelData);
}
}
}
Slider {