Make sure to have a hardware integration when creating windows

We need to do a full roundtrip and wait for the qt_hardware_integration
global before returning from QWaylandDisplay constructor. Waiting
for the screen is not enough, since there is no guarantee it will come
after the hardware integration global.

Change-Id: I34cb50b830632db7e5d5c7a502eeef778599b267
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Bind the globals with the highest version available

Change-Id: I639b124f15416905c17665755b3288c905880f39
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Wait to get wl_output's events before creating surfaces

Change-Id: I2eb4b40a4b8b1de7990d06b57b0d7a7b04ee9657
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Add a way to have out of source shell integrations

Some platforms (especially non-desktop ones) may use a custom
Wayland shell extension, more tailored to the form factor than
the generic and desktoppy wl_shell or xdg_shell. Instead of stuffing
N protocol implementations in the QPA plugin use a plugin architecture
to allow them to live out of tree.
When creating a shell surface the QT_WAYLAND_SHELL_INTEGRATION env
variable will be checked, and if it points to a valid plugin that
will be used to create the shell surface, falling back to wl_shell
or xdg_shell if no plugin is specified.

Change-Id: I05019174bb915199dd726f5fdcc0385ef846e8de
Reviewed-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Philippe Coval <rzr@gna.org>
Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Fix namespaced build

Change-Id: Id73f8ddffe00359f38c634fc88b1f81ac5638653
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Do not list a non-existing file in the project

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

Change-Id: Ice3cf6329f2dea88b58e7a6b61223394e98dcfb1
Bump version

Change-Id: I6563bb51fcb021ebe86d330a64aea7d79bf36ba5
Make the expose region local

Change-Id: I570bbe77185637ebe621e6c915eef2f4442fdd84
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Fix license test.

Add missing copyright headers and fix existing (bad) ones.

Change-Id: Ibbc6f3e996105305c8a2ed7d81ccee79795ee531
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reset the wl_keyboard/wl_pointer resource pointers if destroyed

Change-Id: I8693f845817d2dd4b0e0b54352c374f6a0e643d3
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Add support for setMask to set input region

Also fix input region handling in compositor.

Change-Id: If88ad6a03443526eddee045d7af54daf5057373a
Done-with: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
Fix compositor tests

The test compositor was not updated after recent QtCompositor changes.
Make sure to create and use wl_shell and fix the "repaint" loop in the
frameCallback test

Change-Id: I06515f114a3b7b755c22aef7d193d48fda94d7af
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Flush the wayland events on the dispatcher's awake signal

This is not normally needed, but it is when an app, like our client test,
needs to have the requests flushed out by a QCoreApplication::processEvents
call.

Change-Id: Id821eaf5b612dc44281141181a09718f409e7eb6
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Fix client tests

Change-Id: I6511dfb826c522db3d8bd01c5670c06f187abff2
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Fix possible crash of the test client

The cursor surface is not in the surfaces list when destroyed

Change-Id: Ie29224679776d0abec7862d2976be892c63521a7
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Don't include wayland-server.h in public headers

Fix the cmake test

Change-Id: If610b26b43df50c7df4e796e08a16dbf0ba27e5c
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Remove left-over wayland include

Change-Id: Id436f5d327408db63b2b5a8c183f4d484410669c
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Remove QWaylandResourceCollection.

Dead code, apparently previously related to clipboard.

Change-Id: I7b29a8d1730d7b28365cb293df95c6b71b8fdbc0
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
Merge remote-tracking branch 'origin/5.4' into dev

Change-Id: Ie82592f160ebf545fac7b864db5e38c9ce9bb41f