Compare commits

..

No commits in common. "c5ac7fe773d989990dda1c23d8752bd71f41a6bd" and "6b87dc80069c2fb3a257543029ac222fa62d4936" have entirely different histories.

4 changed files with 34 additions and 27 deletions

View file

@ -11,35 +11,25 @@ RoundButton {
} }
property alias border: rect.border property alias border: rect.border
property color color: hovered ? Theme.palette.primarycontent : Theme.palette.basecontent
property int rotation: 0
font.family: loader.font.family font.family: loader.font.family
font.pixelSize: 18 font.pixelSize: 16
radius: 8 radius: 8
padding: 6 padding: 8
HoverHandler { HoverHandler {
cursorShape: Qt.PointingHandCursor cursorShape: Qt.PointingHandCursor
} }
contentItem: Text { contentItem: Text {
id: icon
font: control.font font: control.font
text: control.text text: control.text
color: control.color color: control.hovered ? Theme.palette.primarycontent : Theme.palette.basecontent
Behavior on color { Behavior on color {
ColorAnimation { ColorAnimation {
duration: 100 duration: 100
} }
} }
rotation: control.rotation
Behavior on rotation {
RotationAnimation {
duration: 200
easing.type: Easing.InOutCubic
}
}
} }
background: Rectangle { background: Rectangle {

View file

@ -1,17 +1,27 @@
import qs.components import qs.config
import qs.constants import qs.constants
import qs.widgets
import QtQuick import QtQuick
import Quickshell.Io import Quickshell.Io
StyledIconButton { StyledButton {
id: clickable id: clickable
text: Icons.brickWall
onClicked: { onClicked: {
process.running = true; process.running = true;
} }
content: StyledText {
id: text
font.family: Theme.lucide.font.family
font.pixelSize: Dimensions.caffeine.fontSize
font.bold: true
text: Icons.brickWall
color: clickable.containsMouse ? Theme.palette.base300 : Theme.palette.basecontent
}
Process { Process {
id: process id: process
command: ["sh", "-c", "~/dotfiles/.scripts/pywal-swww.sh"] command: ["sh", "-c", "~/dotfiles/.scripts/pywal-swww.sh"]

View file

@ -1,13 +1,23 @@
import qs.components import qs.config
import qs.constants import qs.constants
import qs.widgets
StyledIconButton { StyledButton {
id: root id: root
text: Icons.bluetooth
onClicked: popup.toggle() onClicked: popup.toggle()
content: StyledText {
id: text
font.family: Theme.lucide.font.family
font.pixelSize: Dimensions.bluetooth.fontSize
font.bold: true
text: Icons.bluetooth
color: root.containsMouse ? Theme.palette.base300 : Theme.palette.basecontent
}
BluetoothMenu { BluetoothMenu {
id: popup id: popup

View file

@ -1,5 +1,3 @@
pragma ComponentBehavior: Bound
import qs.config import qs.config
import qs.constants import qs.constants
import qs.widgets import qs.widgets
@ -7,7 +5,6 @@ import QtQuick
import Quickshell.Hyprland import Quickshell.Hyprland
Loader { Loader {
id: root
required property HyprlandWorkspace modelData required property HyprlandWorkspace modelData
active: modelData.id > 0 active: modelData.id > 0
@ -16,7 +13,7 @@ Loader {
property Component workspace: StyledButton { property Component workspace: StyledButton {
id: clickable id: clickable
onClicked: root.modelData.activate() onClicked: modelData.activate()
content: Text { content: Text {
id: icon id: icon
@ -31,7 +28,7 @@ Loader {
states: [ states: [
State { State {
name: "focused" name: "focused"
when: root.modelData.focused when: modelData.focused
PropertyChanges { PropertyChanges {
icon { icon {
rotation: 180 rotation: 180
@ -41,7 +38,7 @@ Loader {
}, },
State { State {
name: "active" name: "active"
when: root.modelData.active when: modelData.active
PropertyChanges { PropertyChanges {
icon { icon {
text: Icons.triangleDashed text: Icons.triangleDashed