removed eww and waybar added quickshell

This commit is contained in:
samantha42
2026-05-18 08:19:40 +02:00
parent f7d6f07e3a
commit 36ee6f35da
36 changed files with 713 additions and 1657 deletions

100
quickshell/SettingsMenu.qml Normal file
View File

@@ -0,0 +1,100 @@
import QtQuick
import QtQuick.Layouts
import Quickshell.Io
// Mirrors eww settings-menu (revealer + toggle button)
Item {
id: root
property string volumeInfo: ""
property string networkInfo: ""
property string themeInfo: ""
// exposed so LogoutMenu can close us
property bool open: false
implicitHeight: 26
implicitWidth: row.implicitWidth
Row {
id: row
spacing: 4
layoutDirection: Qt.RightToLeft // toggle btn on the right, menu slides left
// Toggle button (eww center-btn)
Rectangle {
width: 26; height: 26; radius: 13
color: root.open ? "#89b4fa" : "#313244"
Text {
anchors.centerIn: parent
text: root.open ? "󰅖" : "󰒓"
color: root.open ? "#1e1e2e" : "#cdd6f4"
font.pixelSize: 14
}
MouseArea {
anchors.fill: parent
onClicked: root.open = !root.open
cursorShape: Qt.PointingHandCursor
}
}
// Revealed menu (slides in from right)
Item {
width: menuRow.implicitWidth + 8
height: 26
clip: true
// animate width for slide effect (like :transition slideright)
Behavior on width { NumberAnimation { duration: 200; easing.type: Easing.InOutQuad } }
// Collapsed when closed
states: State {
name: "hidden"
when: !root.open
PropertyChanges { target: menuReveal; width: 0 }
}
Item {
id: menuReveal
width: root.open ? menuRow.implicitWidth + 8 : 0
height: 26
clip: true
Behavior on width { NumberAnimation { duration: 200; easing.type: Easing.InOutQuad } }
Row {
id: menuRow
anchors.verticalCenter: parent.verticalCenter
spacing: 4
x: 4
ThemeWidget { themeInfo: root.themeInfo }
VolumeWidget { volumeInfo: root.volumeInfo }
NetworkWidget { networkInfo: root.networkInfo }
// wdisplays button
Rectangle {
width: 30; height: 22; radius: 11
color: "#313244"
Text {
anchors.centerIn: parent
text: "󰍹"
color: "#cdd6f4"
font.pixelSize: 13
}
MouseArea {
anchors.fill: parent
onClicked: {
root.open = false
Qt.createQmlObject(
'import Quickshell.Io; Process { command: ["wdisplays"]; running: true }',
root)
}
cursorShape: Qt.PointingHandCursor
}
}
}
}
}
}
}