forked from Shinonome/dots-hyprland
bar: volume mute indicator
This commit is contained in:
@@ -164,15 +164,45 @@ Scope {
|
|||||||
RowLayout {
|
RowLayout {
|
||||||
id: indicatorsRowLayout
|
id: indicatorsRowLayout
|
||||||
anchors.centerIn: parent
|
anchors.centerIn: parent
|
||||||
spacing: 15
|
property real realSpacing: 15
|
||||||
|
spacing: 0
|
||||||
|
|
||||||
MaterialSymbol {
|
Revealer {
|
||||||
visible: Audio.source?.audio?.muted
|
reveal: Audio.sink?.audio?.muted
|
||||||
text: "mic_off"
|
Layout.fillHeight: true
|
||||||
iconSize: Appearance.font.pixelSize.larger
|
Layout.rightMargin: reveal ? indicatorsRowLayout.realSpacing : 0
|
||||||
color: Appearance.colors.colOnLayer0
|
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 {
|
MaterialSymbol {
|
||||||
|
Layout.rightMargin: indicatorsRowLayout.realSpacing
|
||||||
text: (Network.networkName.length > 0 && Network.networkName != "lo") ? (
|
text: (Network.networkName.length > 0 && Network.networkName != "lo") ? (
|
||||||
Network.networkStrength > 80 ? "signal_wifi_4_bar" :
|
Network.networkStrength > 80 ? "signal_wifi_4_bar" :
|
||||||
Network.networkStrength > 60 ? "network_wifi_3_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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user