
When accumulating damage in the repaint loop, the opaque region of surfaces in other planes is added to the overall opaque region. This causes surface->clip to contain the areas obscured by surfaces in other planes. Change it to contain only the opaque region of surfaces in the primary plane This fixes a bug where moving a window that was just moved from the primary plane to another would leave artifacts on the screen. The problem was that the damage generated by weston_surface_move_to_plane() would be clipped on weston_surface_redraw(), leaving the contets below it unchanged. Moving the overlaid surface would no longer generate damage on the primary plane, so the contents would remain unchanged (i.e. wrong) indefinitely.
…
…
Weston Weston is the reference implementation of a Wayland compositor, and a useful compositor in its own right. Weston has various backends that lets it run on Linux kernel modesetting and evdev input as well as under X11. Weston ships with a few example clients, from simple clients that demonstrate certain aspects of the protocol to more complete clients and a simplistic toolkit. There is also a quite capable terminal emulator (weston-terminal) and an toy/example desktop shell. Finally, weston also provides integration with the Xorg server and can pull X clients into the Wayland desktop and act as a X window manager. Refer to http://wayland.freedesktop.org/building.html for buiding weston and its dependencies.
Description
Languages
C
98.1%
Meson
1.3%
GLSL
0.3%
Shell
0.2%