If you make a X application running on Weston and Xwayland a fullscreen, it displays black screen.
I bisected and the first bad commit seems to be:
6458ec3410b5ce3daa3c3af9c4d19248817e244a is the first bad commit
Author: Jasper St. Pierre <email@example.com>
Date: Fri Apr 11 16:00:31 2014 -0700
shell: Centralize management of sending configure requests
Currently, there's a giant bug in how xdg-shell state management
is done. If a client calls set_fullscreen and then set_maximized,
it will get two configure events:
<= configure(800, 600, [STATE_FULLSCREEN])
<= configure(800, 560, [STATE_FULLSCREEN, STATE_MAXIMIZED])
Since fullscreen takes precedence over maximized, the client will
render full-screen at 800x600 first, and then 800x560 next. As
a result, the surface gets the wrong size.
This is because the code that sends out configure requests is
"immediate" -- when an app calls set_maximized, we immediately
send out the configure event that would have happened if we
transitioned immediately into maximized mode.
In wl_shell, this is correct behavior. However, in xdg-shell,
this is wrong. State needs to be more carefully managed in
xdg-shell, as states aren't exclusive.
Pull all the code that sends out configure events out and send
them centrally, based on Weston's on surface state management.
This should work with both wl_shell and xdg_shell's strategies.
:040000 040000 4d1b2ccda8fac9dd6bcf12ac4631646ca08b860e a22d3b0d75a9bed09beace451d3e890f0b705650 M desktop-shell
I originally encountered this bug with chromium and evince.
1.5.0 is fine at least.
This is happening for me under weston 1.6.0 and Xwayland 1.16.1.
Posted a fix for this bug:
Author: Marek Chalupa <firstname.lastname@example.org>
Date: Wed Oct 29 13:44:44 2014 +0100
xwayland: fix fullscreening
Marking as fixed.