Compare commits
5 commits
6b87dc8006
...
c5ac7fe773
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c5ac7fe773 | ||
|
|
24f932f8d1 | ||
|
|
23fa99ed4c | ||
|
|
4171cc8d56 | ||
|
|
a3931d8aec |
4 changed files with 27 additions and 34 deletions
|
|
@ -11,25 +11,35 @@ 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: 16
|
font.pixelSize: 18
|
||||||
radius: 8
|
radius: 8
|
||||||
padding: 8
|
padding: 6
|
||||||
|
|
||||||
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.hovered ? Theme.palette.primarycontent : Theme.palette.basecontent
|
color: control.color
|
||||||
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 {
|
||||||
|
|
|
||||||
|
|
@ -1,27 +1,17 @@
|
||||||
import qs.config
|
import qs.components
|
||||||
import qs.constants
|
import qs.constants
|
||||||
import qs.widgets
|
|
||||||
import QtQuick
|
import QtQuick
|
||||||
import Quickshell.Io
|
import Quickshell.Io
|
||||||
|
|
||||||
StyledButton {
|
StyledIconButton {
|
||||||
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"]
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,12 @@
|
||||||
import qs.config
|
import qs.components
|
||||||
import qs.constants
|
import qs.constants
|
||||||
import qs.widgets
|
|
||||||
|
|
||||||
StyledButton {
|
StyledIconButton {
|
||||||
id: root
|
id: root
|
||||||
|
|
||||||
onClicked: popup.toggle()
|
|
||||||
|
|
||||||
content: StyledText {
|
|
||||||
id: text
|
|
||||||
|
|
||||||
font.family: Theme.lucide.font.family
|
|
||||||
font.pixelSize: Dimensions.bluetooth.fontSize
|
|
||||||
font.bold: true
|
|
||||||
text: Icons.bluetooth
|
text: Icons.bluetooth
|
||||||
|
|
||||||
color: root.containsMouse ? Theme.palette.base300 : Theme.palette.basecontent
|
onClicked: popup.toggle()
|
||||||
}
|
|
||||||
|
|
||||||
BluetoothMenu {
|
BluetoothMenu {
|
||||||
id: popup
|
id: popup
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
pragma ComponentBehavior: Bound
|
||||||
|
|
||||||
import qs.config
|
import qs.config
|
||||||
import qs.constants
|
import qs.constants
|
||||||
import qs.widgets
|
import qs.widgets
|
||||||
|
|
@ -5,6 +7,7 @@ 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
|
||||||
|
|
@ -13,7 +16,7 @@ Loader {
|
||||||
property Component workspace: StyledButton {
|
property Component workspace: StyledButton {
|
||||||
id: clickable
|
id: clickable
|
||||||
|
|
||||||
onClicked: modelData.activate()
|
onClicked: root.modelData.activate()
|
||||||
|
|
||||||
content: Text {
|
content: Text {
|
||||||
id: icon
|
id: icon
|
||||||
|
|
@ -28,7 +31,7 @@ Loader {
|
||||||
states: [
|
states: [
|
||||||
State {
|
State {
|
||||||
name: "focused"
|
name: "focused"
|
||||||
when: modelData.focused
|
when: root.modelData.focused
|
||||||
PropertyChanges {
|
PropertyChanges {
|
||||||
icon {
|
icon {
|
||||||
rotation: 180
|
rotation: 180
|
||||||
|
|
@ -38,7 +41,7 @@ Loader {
|
||||||
},
|
},
|
||||||
State {
|
State {
|
||||||
name: "active"
|
name: "active"
|
||||||
when: modelData.active
|
when: root.modelData.active
|
||||||
PropertyChanges {
|
PropertyChanges {
|
||||||
icon {
|
icon {
|
||||||
text: Icons.triangleDashed
|
text: Icons.triangleDashed
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue