Skip to content

Draft: Allow to freeze/thaw processes that don't have focus

Guido Günther requested to merge guidog/phosh:freezer into main

This is a slightly cleaned up variant from a quick hack I did last year to be able to have firefox frozen in the background as I needed to refresh a page every now and then that and that page did an animation draining the battery.

All apps listed in the sm.puri.phosh throttled-apps gsetting will be frozen when going out of focus and thawed when getting it back. For this to work you need phoc from this branch: https://gitlab.gnome.org/guidog/phoc/-/tree/pid

TODOs:

  • track DBus activated apps too
  • cleanup process list
  • make Subscribe call async (if we end up using that)

Looking at this again it would be easier to track pid toplevel mappings on the compositor side (which we alrady do) and simply send the foreground pid to phosh for freeze/unfreeze (or even to that on the compositor side too (as we wouldn't need to care about DBus activation, etc)).

Edited by Guido Günther

Merge request reports