session: add custom session/lock menu button commands (#292)
* session: add custom menu-buttons commands * lock: use custom session-menu buttons * readme: update config options for custom commands
This commit is contained in:
parent
067b71bcbd
commit
7dc5b65d22
4 changed files with 23 additions and 9 deletions
|
|
@ -223,7 +223,13 @@ All configuration options are in `~/.config/caelestia/shell.json`.
|
|||
"useFahrenheit": false
|
||||
},
|
||||
"session": {
|
||||
"dragThreshold": 30
|
||||
"dragThreshold": 30,
|
||||
"commands": {
|
||||
"logout": ["loginctl", "terminate-user", ""],
|
||||
"shutdown": ["systemctl", "poweroff"],
|
||||
"hibernate": ["systemctl", "hibernate"],
|
||||
"reboot": ["systemctl", "reboot"]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
|
|
|||
|
|
@ -3,7 +3,15 @@ import Quickshell.Io
|
|||
JsonObject {
|
||||
property bool enabled: true
|
||||
property int dragThreshold: 30
|
||||
property Commands commands: Commands{}
|
||||
property Sizes sizes: Sizes {}
|
||||
|
||||
component Commands: JsonObject {
|
||||
property list<string> logout: ["loginctl", "terminate-user", ""]
|
||||
property list<string> shutdown: ["systemctl", "poweroff"]
|
||||
property list<string> hibernate: ["systemctl", "hibernate"]
|
||||
property list<string> reboot: ["systemctl", "reboot"]
|
||||
}
|
||||
|
||||
component Sizes: JsonObject {
|
||||
property int button: 80
|
||||
|
|
|
|||
|
|
@ -50,22 +50,22 @@ Item {
|
|||
|
||||
SessionButton {
|
||||
icon: "logout"
|
||||
command: ["loginctl", "terminate-user", ""]
|
||||
command: Config.session.commands.logout
|
||||
}
|
||||
|
||||
SessionButton {
|
||||
icon: "power_settings_new"
|
||||
command: ["systemctl", "poweroff"]
|
||||
command: Config.session.commands.shutdown
|
||||
}
|
||||
|
||||
SessionButton {
|
||||
icon: "downloading"
|
||||
command: ["systemctl", "hibernate"]
|
||||
command: Config.session.commands.hibernate
|
||||
}
|
||||
|
||||
SessionButton {
|
||||
icon: "cached"
|
||||
command: ["systemctl", "reboot"]
|
||||
command: Config.session.commands.reboot
|
||||
}
|
||||
|
||||
Behavior on anchors.margins {
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ Column {
|
|||
id: logout
|
||||
|
||||
icon: "logout"
|
||||
command: ["loginctl", "terminate-user", ""]
|
||||
command: Config.session.commands.logout
|
||||
|
||||
KeyNavigation.down: shutdown
|
||||
|
||||
|
|
@ -46,7 +46,7 @@ Column {
|
|||
id: shutdown
|
||||
|
||||
icon: "power_settings_new"
|
||||
command: ["systemctl", "poweroff"]
|
||||
command: Config.session.commands.shutdown
|
||||
|
||||
KeyNavigation.up: logout
|
||||
KeyNavigation.down: hibernate
|
||||
|
|
@ -68,7 +68,7 @@ Column {
|
|||
id: hibernate
|
||||
|
||||
icon: "downloading"
|
||||
command: ["systemctl", "hibernate"]
|
||||
command: Config.session.commands.hibernate
|
||||
|
||||
KeyNavigation.up: shutdown
|
||||
KeyNavigation.down: reboot
|
||||
|
|
@ -78,7 +78,7 @@ Column {
|
|||
id: reboot
|
||||
|
||||
icon: "cached"
|
||||
command: ["systemctl", "reboot"]
|
||||
command: Config.session.commands.reboot
|
||||
|
||||
KeyNavigation.up: hibernate
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue