idlemonitor: inhibit when audio playing

This commit is contained in:
2 * r + 2 * t 2025-09-17 23:39:09 +10:00
parent 24922be5e9
commit e723af3293
3 changed files with 6 additions and 0 deletions

View file

@ -254,6 +254,7 @@ default, you must create it manually.
"audio": ["pavucontrol"]
},
"idle": {
"inhibitWhenAudio": true,
"lockTimeout": 180,
"dpmsTimeout": 300,
"sleepTimeout": 600

View file

@ -12,6 +12,7 @@ JsonObject {
}
component Idle: JsonObject {
property bool inhibitWhenAudio: true
property real lockTimeout: 180 // 3 mins
property real dpmsTimeout: 300 // 5 mins
property real sleepTimeout: 600 // 10 mins

View file

@ -8,8 +8,10 @@ Scope {
id: root
required property Lock lock
readonly property bool enabled: !Config.general.idle.inhibitWhenAudio || !Players.list.some(p => p.isPlaying)
IdleMonitor {
enabled: root.enabled
timeout: Config.general.idle.lockTimeout
onIsIdleChanged: {
if (isIdle)
@ -18,6 +20,7 @@ Scope {
}
IdleMonitor {
enabled: root.enabled
timeout: Config.general.idle.dpmsTimeout
onIsIdleChanged: {
if (isIdle)
@ -28,6 +31,7 @@ Scope {
}
IdleMonitor {
enabled: root.enabled
timeout: Config.general.idle.sleepTimeout
onIsIdleChanged: {
if (isIdle)