Skip to main content
1 of 3

I think you have figured this out yourself, but here's the answer

VLC calls (from your example):

  • Inhibit method of the org.freedesktop.ScreenSaver interface & service.

Chrome calls (from your example):

  • Inhibit method of the org.freedesktop.ScreenSaver interface & service.
  • Something else (xfce related) which makes also a call to org.freedesktop.ScreenSaver.Inhibit
  • Inhibit method of the org.freedesktop.PowerManagement.Inhibit interface of org.freedesktop.PowerManagement.Inhibit service.

So, effectively Chrome takes three inhibitor locks from two different interfaces (ScreenSaver and PowerManagement), and VLC only gets the inhibitor lock from the ScreenSaver interface. Those two interfaces are from two completely different services. Assuming the services have been implemented correctly, these work with completely different set of inhibitor locks.

The (now deprecated) org.freedesktop.PowerManagement inhibits only suspend (CPU stopping), whereas org.freedesktop.ScreenSaver inhibits your system from going idle, which in practice inhibits the idle action, which usually means screensaver kicking in (usually locking and blanking the screen) and the suspend (CPU stopping).