Parallelize the QtWayland build.

Remove CONFIG += ordered and specify explicit dependencies to allow the
Compositor and Client modules to be built in parallel.

Change-Id: Ifc7ccbdb6fe6623609ad050ede1cbc995499e524
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
QWaylandDecoration: Remove some unused members

Change-Id: Ia98190adbd3f710de6734c10062792ce3f4547d9
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
Fix window decorations being leaked.

Change-Id: If0483f5e81a033b275ddc14eb1e44ff82fa1ce65
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
Do not request the highest color buffer size

That third parameter is dangerous and should never be set to true,
unless you know what you are doing. eglfs does not set this flag either.
Do the same in wayland-egl, otherwise certain context/window creation
patterns (in particular with QOffscrenSurface, which is often created with
an existing context's format()) will end up with incompatible contexts
and surfaces on systems that offer both 565 and 888 configs.

Long story short, setting the flag ignores the extra check in the EGL config
selection logic that ensures that you get a config you asked for, i.e. that
a 888 config will not be returned (unless there is no other choice) if 565
was explicitly requested in the input QSurfaceFormat.

The result is that we may get a 888 config even when explicitly asking for 565.
However asking for unspecified will give 565. In the QOffscreenSurface case
this means having an 565 context and a 888 window -> bad match.

Not setting the flag brings the expected behavior: not specifying the color buffer
sizes chooses the lower buffer size (565), explicitly specifying 565 chooses 565,
while explicitly specifying 888 prioritizes 888 configs.

Change-Id: Ia78086a9f255f2933cda7de4f5787d71d58a1356
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
QWindowCompositor: Prevent double delete.

With a SHM client, if a null attach happened, then the old buffer would be
deleted but left with a dangling pointer which would be deleted again on the
destructor.

This was revealed by tst_dialog.

Change-Id: I89e22487e7ec982789a4b7dfd45e5db7db3222d1
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
QWlSurface: Remove unused static.

This went away in the buffer queue removal in
666f597ccd2ced23ecc71ba497981d1a88c34d77.

Change-Id: I9706f52026eb10e4ec17290262dfbfe52c14719f
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>