Skip to content

popover: Deactivate settings button when lock screen is on

dcz requested to merge saver into master

This won't work if the lock screen activates while the popover is active, but solving that would be a bunch of work again.

It won't compile on Byzantium due to zbus being several versions behind. It should compile on Crimson, because bookworm carries a sufficient version.

This MR contains a couple of themes:

  • try to make the loop/actor idea clearer, more loosely coupled, and/or more consistently applied (actors::external, popover state rework, Void type, Destination trait)
  • add a dbus listener actor
  • add a thread-safe wrapper for Rust objects in C (we can hopefully drop that once we bypass C)

Most commits are tiny (yay), and add a new function that stands alone.

I wanted to add a test binary to have the screensaver listener actor run standalone, but it's hassle to have it between Cargo and having to conditionally compile it. It's simple enough that it can be rewritten as needed.

Draft because it actually relies on an interface that doesn't work.

No draft: still useful even if not in effect yet.

Edited by dcz

Merge request reports