compositor: add IDLE state
authorPekka Paalanen <ppaalanen@gmail.com>
Fri, 2 Dec 2011 11:07:27 +0000 (13:07 +0200)
committerPekka Paalanen <ppaalanen@gmail.com>
Wed, 14 Dec 2011 11:44:29 +0000 (13:44 +0200)
commitbce2d3f9a742c67f5485886b655a2d50d491e096
treee52ee9d7c91c2204032d23052a718080d5a0ba81
parentaf0e34ce368ad3aabb366871d5e415fa33e7c54d
compositor: add IDLE state

Add WLSC_COMPOSITOR_IDLE state to the possible compositor internal
states, and fix the drm backend to restore the previous state instead of
forcing ACTIVE.

Normally, the compositor only uses the ACTIVE and SLEEPING states. The
IDLE state is another active state, reserved for the shell, when the
shell wants to have unlock() calls on activity, but the compositor cannot
be SLEEPING.

Use the IDLE state to fix exposing the unlock dialog while a screensaver
is animating. Without this fix, is it impossible to activate the unlock
dialog without waiting for a second idle timeout that really puts the
compositor into SLEEPING.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
compositor/compositor-drm.c
compositor/compositor.c
compositor/compositor.h
compositor/shell.c