bar: volume mute indicator

This commit is contained in:
end-4
2025-05-11 11:06:19 +02:00
parent 64ec9bdfe4
commit 39594baa46
2 changed files with 69 additions and 6 deletions
+36 -6
View File
@@ -164,15 +164,45 @@ Scope {
RowLayout {
id: indicatorsRowLayout
anchors.centerIn: parent
spacing: 15
property real realSpacing: 15
spacing: 0
MaterialSymbol {
visible: Audio.source?.audio?.muted
text: "mic_off"
iconSize: Appearance.font.pixelSize.larger
color: Appearance.colors.colOnLayer0
Revealer {
reveal: Audio.sink?.audio?.muted
Layout.fillHeight: true
Layout.rightMargin: reveal ? indicatorsRowLayout.realSpacing : 0
Behavior on Layout.rightMargin {
NumberAnimation {
duration: Appearance.animation.elementMoveFast.duration
easing.type: Appearance.animation.elementMoveFast.type
easing.bezierCurve: Appearance.animation.elementMoveFast.bezierCurve
}
}
MaterialSymbol {
text: "volume_off"
iconSize: Appearance.font.pixelSize.larger
color: Appearance.colors.colOnLayer0
}
}
Revealer {
reveal: Audio.source?.audio?.muted
Layout.fillHeight: true
Layout.rightMargin: reveal ? indicatorsRowLayout.realSpacing : 0
Behavior on Layout.rightMargin {
NumberAnimation {
duration: Appearance.animation.elementMoveFast.duration
easing.type: Appearance.animation.elementMoveFast.type
easing.bezierCurve: Appearance.animation.elementMoveFast.bezierCurve
}
}
MaterialSymbol {
text: "mic_off"
iconSize: Appearance.font.pixelSize.larger
color: Appearance.colors.colOnLayer0
}
}
MaterialSymbol {
Layout.rightMargin: indicatorsRowLayout.realSpacing
text: (Network.networkName.length > 0 && Network.networkName != "lo") ? (
Network.networkStrength > 80 ? "signal_wifi_4_bar" :
Network.networkStrength > 60 ? "network_wifi_3_bar" :
@@ -0,0 +1,33 @@
import "root:/modules/common"
import QtQuick
import Quickshell
/**
* Recreation of GTK revealer. Expects one single child.
*/
Item {
id: root
property bool reveal
property bool vertical: false
clip: true
implicitWidth: (reveal || vertical) ? childrenRect.width : 0
implicitHeight: (reveal || !vertical) ? childrenRect.height : 0
Behavior on implicitWidth {
enabled: !vertical
NumberAnimation {
duration: Appearance.animation.elementMoveFast.duration
easing.type: Appearance.animation.elementMoveFast.type
easing.bezierCurve: Appearance.animation.elementMoveFast.bezierCurve
}
}
Behavior on implicitHeight {
enabled: vertical
NumberAnimation {
duration: Appearance.animation.elementMoveFast.duration
easing.type: Appearance.animation.elementMoveFast.type
easing.bezierCurve: Appearance.animation.elementMoveFast.bezierCurve
}
}
}