13 lines
1.2 KiB
Markdown
13 lines
1.2 KiB
Markdown
## What?
|
|
KDE Plasma (as of 5.19.4) lacks the funcionality of hybernating your display after locking your computer.
|
|
|
|
This hack implements Gnome-like lockscreen behaviour: it hybernates your display after a given timeout if the computer is locked. It also makes sure that the display won't turn off while you are typing your password to unlock your machine.
|
|
|
|
## How?
|
|
This whole started as a simple bash script (`proof-of-concept.sh`) using `qdbus` and `xset` to implement this functionality.
|
|
However, it had an annoying defect: the screen would hybernate after the timeout no matter what (i.e. the display could turn off while you were typing your password to unlock the machine).
|
|
To remedy this defect I've decided to monitor keypresses via `/dev/input` and rewrite the whole thing in golang to provide proper debouncing (i.e. the timeout resets if you start typing).
|
|
|
|
Beware this is a quick&dirty hack. Instead of calling `qdbus` and `xset` from golang, the proper dbus API should be used.
|
|
Instead of registering a go binary to execute once the lockscreen is active (`System Settings -> Notifications -> Application Settings -> Screen Saver`) the whole thing should probably be rewritten in C++ and contributed to KDE instead.
|