xwayland: clear pixmaps after creation

When a pixmap is created with a backing FBO, the FBO should be cleared
to avoid rendering uninitialized memory. This could happen when the
pixmap is rendered without being filled in its entirety.

One example is when Xwayland is rootless and a top-level window is
resized. The pixmap would be reallocated to prepare for more pixels,
but uninitialized memory would be rendered in the resize offset until
the client sends a frame that fills these additional pixels.

Another example is when Xwayland is rootless and a new top-level window
is created. Uninitialized memory would be rendered after the pixmap is
allocated and before the client sends its first frame.

This issue is only apparent in OpenGL implementations that don't zero
the VRAM of allocated buffers by default, such as RadeonSI.

Signed-off-by: Dor Askayo <dor.askayo@gmail.com>
3 jobs for clear_pixmap in 6 minutes and 21 seconds (queued for 16 seconds)
Status Job ID Name Coverage
  Docker Image
passed #750773
debian-testing

00:00:38

 
  Build And Test
passed #750774
autotools-build-and-test

00:05:42

passed #750775
meson-build-and-test

00:01:46