Compare commits

...

5 commits

Author SHA1 Message Date
Benjamin Palko
f687e17c94 limit volume 2025-09-15 22:05:02 -04:00
Benjamin Palko
b0d9342e1d forward control spacing 2025-09-15 22:04:46 -04:00
Benjamin Palko
1c30ea270f alias panel window background 2025-09-15 20:43:24 -04:00
Benjamin Palko
ebb66dee21 add audio volume slider 2025-09-15 20:37:53 -04:00
Benjamin Palko
141c64a0bb alias rectangle radius on tab button 2025-09-15 20:37:20 -04:00
5 changed files with 26 additions and 6 deletions

View file

@ -7,11 +7,13 @@ PanelWindow {
id: window
required property string name
property alias background: background
WlrLayershell.namespace: `lux-${name}`
color: "transparent"
Rectangle {
id: background
anchors.fill: parent
radius: Styling.theme.radiusBox
Behavior on radius {

View file

@ -1,4 +1,3 @@
import qs.config
import QtQuick
import QtQuick.Controls.Basic
@ -11,10 +10,10 @@ TabBar {
id: view
model: control.contentModel
currentIndex: control.currentIndex
spacing: control.spacing
orientation: ListView.Horizontal
boundsBehavior: Flickable.StopAtBounds
}
background: Rectangle {
color: Styling.theme.base200
}
background: Item {}
}

View file

@ -5,6 +5,8 @@ import QtQuick.Controls.Basic
TabButton {
id: control
property alias radius: rectangle.radius
contentItem: Text {
font.pixelSize: Styling.typography.textSize.base
font.family: Styling.typography.fontFamily

View file

@ -23,7 +23,7 @@ ColumnLayout {
StyledText {
Layout.column: 1
Layout.row: 1
text: "Speakers"
text: "Device"
}
StyledComboBox {
@ -36,6 +36,23 @@ ColumnLayout {
Pipewire.setSink(Pipewire.sinks[index]);
}
}
StyledText {
Layout.column: 1
Layout.row: 2
text: "Volume"
}
StyledSlider {
Layout.column: 2
Layout.row: 2
from: 0.0
to: 1.0
value: Pipewire.volume
onMoved: {
Pipewire.setVolume(value);
}
}
}
}

View file

@ -19,7 +19,7 @@ Singleton {
function setVolume(volume: real): void {
if (sink?.ready && sink?.audio) {
sink.audio.muted = false;
sink.audio.volume = volume;
sink.audio.volume = Math.min(volume, 1.0);
}
}