weston/clients
Pekka Paalanen 79346ab3a5 shell: wait for desktop-shell init before fade in
On Raspberry Pi, weston-desktop-shell is so slow to start, that the
compositor has time to run the fade-in before the wallpaper is up. The
user launching Weston sees the screen flipping to black, the fbcon
fading in, and then the desktop popping up.

To fix this, wait for the weston-desktop-shell to draw
everything before starting the initial fade-in. A new request is
added to the private desktop-shell protocol to signal it. If a
desktop-shell client does not support the new request, the fade-in
happens already at bind time.

If weston-desktop-shell crashes, or does not send the 'desktop_ready'
request in 15 seconds, the compositor will fade in anyway. This should
avoid a blocked screen in case weston-desktop-shell malfunction.

shell_fade_startup() does not directly start the fade-in but schedules
an idle callback, so that the compositor can process all pending events
before starting the fade clock. Otherwise (on RPi) we risk skipping part
of the animation. Yes, it is a hack, that should have been done in
window.c and weston-desktop-shell instead.

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
2013-05-22 18:07:30 -04:00
..
.gitignore clients: add subsurfaces demo 2013-05-10 14:35:53 -04:00
Makefile.am clients: add subsurfaces demo 2013-05-10 14:35:53 -04:00
calibrator.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
clickdot.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
cliptest.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
desktop-shell.c shell: wait for desktop-shell init before fade in 2013-05-22 18:07:30 -04:00
dnd.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
editor.c editor: Removed unused utf8_characters() function 2013-05-10 12:51:08 -04:00
eventdemo.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
flower.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
gears.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
glmatrix.c Add signedness warning flag and fix fallout 2012-03-30 11:52:39 -04:00
image.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
keyboard.c keyboard: Fix offsets when deleting text 2013-05-06 20:26:20 -04:00
matrix3.xpm clients: import glmatrix.c and matrix3.xpm 2011-11-18 14:45:04 +02:00
resizor.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
screenshot.c screenshot: Print warning if we're not launched from weston 2013-02-13 13:41:07 -05:00
simple-egl.c simple-egl: Add support for EGL_EXT_swap_buffer_with_damage 2013-05-08 11:39:59 -04:00
simple-shm.c compositor: Only send release event in response to wl_surface.attach 2013-03-05 15:35:47 -05:00
simple-touch.c clients: add global_remove handler stubs 2013-01-24 16:42:38 -05:00
smoke.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
subsurfaces.c clients: add subsurfaces demo 2013-05-10 14:35:53 -04:00
tablet-shell.c config-parser: Honor XDG_CONFIG_DIRS 2013-05-14 14:36:37 -04:00
terminal.c terminal: Handle output transform 2013-05-22 16:18:57 -04:00
transformed.c transformed: Add keyboard shortcuts to change transform 2013-05-22 16:19:01 -04:00
view.c view: g_type_init() is deprecated in glib >= 2.35 2013-05-02 16:22:27 -04:00
weston-info.c clients: add global_remove handler stubs 2013-01-24 16:42:38 -05:00
weston-simple-im.c text: Rename input_method to wl_input_method 2013-05-02 17:18:46 -04:00
window.c window: Add window_get_output_scale() 2013-05-22 16:18:52 -04:00
window.h window: Add window_get_output_scale() 2013-05-22 16:18:52 -04:00
wscreensaver-glue.c screensaver: fix decoding of transparency in xpm files 2012-09-06 21:08:12 -04:00
wscreensaver-glue.h Never include wayland-util.h directly 2011-11-22 09:35:14 -05:00
wscreensaver.c Pass argc pointer to parse_options() 2013-02-20 15:27:49 -05:00
wscreensaver.h Add signedness warning flag and fix fallout 2012-03-30 11:52:39 -04:00