Skip to content

sailfishos/nemo-keepalive

Repository files navigation

DisplayBlanking
===============

While <preventBlanking> == true in any DisplayBlanking object, keeps the
system from automatically blanking the display.

The application must set <preventBlanking> = false when blanking
is again to be allowed.

Example use case: Video player

* the display is on due to user activity
* video playback is started
* video player sets <preventBlanking> = true
* video playback is paused/stopped
* video player sets <preventBlanking> = false

The current visibility of the display is given by DisplayBlanking.status
and can be one of:
 - DisplayBlanking.On
 - DisplayBlanking.Dimmed
 - DisplayBlanking.Off
 - DisplayBlanking.Unknown

This can be used to disable updates while the display is off, for example.


PeriodicBackgroundProcessing
============================

When <enabled> == true, wakes the process every <interval> seconds - even if
the system has entered late suspend.

The application can specify the wakeup <interval>, but do note that it is
subject to rounding done at the IPHB daemon (currently part of DSME).

Application is notified of the wakeup via <activeChanged> signal.

NOTE: The <activeChanged> signal handler must not block.

The application must check that <active> == true before starting processing,
and must set it back to false after finishing to allow normal suspend policy
to take effect.

Example use case: RSS reader

* sets the <interval> = 600 [10 minutes]
* sets <enabled> = true
* at the next 10 global wakeup slot time the <activeChanged> is signaled
  and the system is blocked from going in to late suspend
* after finishing the RSS feed updating the app sets <active> = false
* the system can suspend (unless some other policy is blocking it)
* at the next 10 global wakeup slot time the cycle repeats