Use surfaceBuffer's image to get image for shm surface

Allowing to get same image instance if the surface is not
damaged, TextureCahche can get same hash key for unchanged
source image. Also saves instructions for constructing QImage.

Change-Id: Iba8df32c9c2bf735e31819db9adaa4f704ab6d22
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Adapted Surface and Region to use the qtwaylandscanner.

This requires some slight additions to the qtwaylandscanner to handle
the pattern of the wl_resource not being owned by the generated class.

Change-Id: Ia49c8129cee3a203ca9a727e83fafd3dfc653e75
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fixed client being blocked in xcomposite integrations.

There's no need to wait for a sync until a frame has been rendered. As
it was the client ended up waiting for a sync that never came.

Change-Id: I41828d76ae62f1fa13f15bc050a16dd8e384fff4
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fixed / cleaned up xcomposite integrations.

Compile fix and adaptation after qtwaylandscanner changes.

Change-Id: I3dbaaaf6c01e1b5d5a7a36fedc036d3b0d20a4bc
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fixed EGL_BAD_MATCH error with xcomposite-egl.

Context and surface need to be created with the same EGLConfig.

Change-Id: I5ffd148d61ae67ca5ebd2d8382e635be7babc2df
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fixed hellowindow with multiple windows in xcomposite-egl.

Multiple contexts are calling blockingReadEvents() from multiple
threads, while the window belongs to one thread. So the
mWaitingForFrameSync might get set to false by another thread while the
current thread is stuck in blockingReadEvents(). This leads to animating
blocking until something else puts events on the wayland event queue,
for example mouse move events.

Change-Id: Id76a82e500753c5817d25298662851c4a6505553
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Made egl and wayland_egl config.tests require GLES2 configured Qt.

Otherwise the platform native interfaces won't return a valid
"EGLDisplay" handle, which is required for all the EGL based
integrations to work.

Change-Id: I9d5031878da5bf87e1366150f75d000a2f5fc280
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fixed build issue due to not finding "wayland-client.h".

We need to use pkg-config to add the proper include path to the CXXFLAGS.

Change-Id: I51c388a3dd050514758997492c1fb1efb87b2837
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fixed rendering stalling in qml-compositor.

We need to emit the textureChanged() signal on the QSGTextureProvider
class for scene graph to mark the shader effect as dirty and for
rendering of a new frame to be triggered.

Change-Id: I57f625a154c5215e83b5e93b613463e97e9b8f77
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Fix qtwaylandscanner build

Header doesn't exist.

Change-Id: I15f33e667382f7adca3c85bc874f3e88c73f6083
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>