fix: manually implement repeating keybinds
Apparently Hyprland's repeating keybinds don't work properly with DBus shortcuts, so we have to implement this logic ourselves.
This commit is contained in:
parent
8f085b5c36
commit
b81b90ed7b
2 changed files with 75 additions and 4 deletions
|
|
@ -2,6 +2,7 @@ pragma Singleton
|
|||
|
||||
import qs.config
|
||||
import qs.custom
|
||||
import QtQuick
|
||||
import Quickshell
|
||||
import Quickshell.Services.Pipewire
|
||||
|
||||
|
|
@ -37,15 +38,49 @@ Singleton {
|
|||
}
|
||||
|
||||
CustomShortcut {
|
||||
id: volumeUp
|
||||
name: "volumeUp"
|
||||
description: "Increase volume"
|
||||
onPressed: root.increaseVolume()
|
||||
onPressed: {
|
||||
root.increaseVolume();
|
||||
volumeUpTimer.interval = 800;
|
||||
volumeUpTimer.running = true;
|
||||
}
|
||||
onReleased: {
|
||||
volumeUpTimer.running = false;
|
||||
}
|
||||
}
|
||||
Timer {
|
||||
id: volumeUpTimer
|
||||
interval: 800
|
||||
repeat: true
|
||||
onTriggered: {
|
||||
interval = 200;
|
||||
root.increaseVolume();
|
||||
}
|
||||
}
|
||||
|
||||
CustomShortcut {
|
||||
id: volumeDown
|
||||
name: "volumeDown"
|
||||
description: "Decrease volume"
|
||||
onPressed: root.decreaseVolume()
|
||||
onPressed: {
|
||||
root.decreaseVolume();
|
||||
volumeDownTimer.interval = 800;
|
||||
volumeDownTimer.running = true;
|
||||
}
|
||||
onReleased: {
|
||||
volumeDownTimer.running = false;
|
||||
}
|
||||
}
|
||||
Timer {
|
||||
id: volumeDownTimer
|
||||
interval: 800
|
||||
repeat: true
|
||||
onTriggered: {
|
||||
interval = 200;
|
||||
root.decreaseVolume();
|
||||
}
|
||||
}
|
||||
|
||||
CustomShortcut {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
pragma Singleton
|
||||
pragma ComponentBehavior: Bound
|
||||
|
||||
import qs.config
|
||||
import qs.custom
|
||||
import Quickshell
|
||||
import Quickshell.Io
|
||||
|
|
@ -67,15 +68,50 @@ Singleton {
|
|||
}
|
||||
|
||||
CustomShortcut {
|
||||
id: brightnessUp
|
||||
name: "brightnessUp"
|
||||
description: "Increase brightness"
|
||||
onPressed: root.increaseBrightness()
|
||||
onPressed: {
|
||||
console.log("a")
|
||||
root.increaseBrightness();
|
||||
brightnessUpTimer.interval = 800;
|
||||
brightnessUpTimer.running = true;
|
||||
}
|
||||
onReleased: {
|
||||
brightnessUpTimer.running = false;
|
||||
}
|
||||
}
|
||||
Timer {
|
||||
id: brightnessUpTimer
|
||||
interval: 800
|
||||
repeat: true
|
||||
onTriggered: {
|
||||
interval = 200;
|
||||
root.increaseBrightness();
|
||||
}
|
||||
}
|
||||
|
||||
CustomShortcut {
|
||||
id: brightnessDown
|
||||
name: "brightnessDown"
|
||||
description: "Decrease brightness"
|
||||
onPressed: root.decreaseBrightness()
|
||||
onPressed: {
|
||||
root.decreaseBrightness();
|
||||
brightnessDownTimer.interval = 800;
|
||||
brightnessDownTimer.running = true;
|
||||
}
|
||||
onReleased: {
|
||||
brightnessDownTimer.running = false;
|
||||
}
|
||||
}
|
||||
Timer {
|
||||
id: brightnessDownTimer
|
||||
interval: 800
|
||||
repeat: true
|
||||
onTriggered: {
|
||||
interval = 200;
|
||||
root.decreaseBrightness();
|
||||
}
|
||||
}
|
||||
|
||||
component Monitor: QtObject {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue