shell: let screensaver wake up the compositor

Screensavers become visible the first time only after the compositor has
gone to sleep state. Therefore, to see screensaver in the start, wake up
the compositor. After a second idle timeout, the compositor will stay
sleeping.

We could also not apply this patch. It would mean the screensavers would
be visible only with the unlock dialog, and not become visible
automatically.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
dev
Pekka Paalanen 13 years ago
parent 77346a66ec
commit baeb6a1dc1
  1. 7
      compositor/shell.c

@ -859,6 +859,9 @@ lock(struct wlsc_shell *base)
wl_list_for_each(shsurf, &shell->screensaver.surfaces, link)
show_screensaver(shell, shsurf);
if (!wl_list_empty(&shell->screensaver.surfaces))
wlsc_compositor_wake(shell->compositor);
/* reset pointer foci */
wlsc_compositor_repick(shell->compositor);
@ -968,8 +971,10 @@ map(struct wlsc_shell *base,
break;
case SHELL_SURFACE_SCREENSAVER:
/* If locked, show it. */
if (shell->locked)
if (shell->locked) {
show_screensaver(shell, shsurf);
wlsc_compositor_wake(compositor);
}
do_configure = 0;
break;
default:

Loading…
Cancel
Save