fix: volume-osd popup

This commit is contained in:
kossLAN 2025-10-15 15:47:35 -04:00
parent 29658fa910
commit c48aca3d0c
Signed by: kossLAN
SSH key fingerprint: SHA256:bdV0x+wdQHGJ6LgmstH3KV8OpWY+OOFmJcPcB0wQPV8
3 changed files with 21 additions and 22 deletions

View file

@ -40,18 +40,20 @@ Variants {
// Left side of bar
RowLayout {
spacing: 15
Layout.fillWidth: true
Layout.fillHeight: true
Layout.alignment: Qt.AlignLeft
Workspaces {
screen: root.screen
Layout.fillHeight: true
Layout.preferredWidth: height
}
ActiveWindow {
id: activeWindow
Layout.preferredWidth: 400
}
// ActiveWindow {
// id: activeWindow
// Layout.preferredWidth: 400
// }
}
// PowerMenu {

View file

@ -6,7 +6,7 @@ import qs
RowLayout {
spacing: 6
visible: Hyprland.monitors.values.length != 0
visible: Hyprland.workspaces.values.some(ws => ws.monitor === Hyprland.monitorFor(screen))
required property var screen

View file

@ -6,7 +6,8 @@ import Qt5Compat.GraphicalEffects
import Quickshell
import Quickshell.Widgets
import Quickshell.Services.Pipewire
import ".."
import qs
import qs.widgets
Scope {
id: root
@ -20,6 +21,7 @@ Scope {
target: Pipewire.defaultAudioSink?.audio
function onVolumeChanged() {
console.log("Volume Changed, showing OSD.");
root.shouldShowOsd = true;
hideTimer.restart();
}
@ -36,21 +38,19 @@ Scope {
LazyLoader {
active: root.shouldShowOsd
PopupWindow {
implicitWidth: 50
implicitHeight: 275
PanelWindow {
implicitWidth: 250
implicitHeight: 50
color: "transparent"
// An empty click mask prevents the window from blocking mouse events.
exclusiveZone: 0
visible: true
mask: Region {}
anchors.bottom: true
margins.bottom: screen.height / 10
Rectangle {
StyledRectangle {
anchors.fill: parent
radius: 8
color: {
let color = ShellSettings.colors["surface"];
return Qt.rgba(color.r, color.g, color.b, 0.8);
}
// radius: 8
RowLayout {
anchors {
@ -69,10 +69,7 @@ Scope {
Layout.fillWidth: true
implicitHeight: 10
radius: 20
color: {
let color = ShellSettings.colors["inverse_surface"];
return Qt.rgba(color.r, color.g, color.b, 0.5);
}
color: ShellSettings.colors.inactive
layer.enabled: true
layer.effect: OpacityMask {
@ -85,7 +82,7 @@ Scope {
}
Rectangle {
color: ShellSettings.colors["primary"]
color: ShellSettings.colors.active
anchors {
left: parent.left
top: parent.top