[qtwayland] Allow key events to be delivered to unfocused windows.
Use generic UNIX platform services instead of relaying open URL calls over Wayland
Avoid dereferencing a null pointer when QMimeData is 0

QClipboard's QPA implementation of clear() calls setMimeData(0, mode),
which means mimeData can be dereferenced when it is null. Prevent this
from happening.
Merge pull request #28 from rburchell/master

Revert EGL workaround causing visual regression.
Merge pull request #23 from adenexter/master

[qtwayland] Allow key events to be delivered to unfocused windows.
Merge pull request #27 from xknight/master

Avoid dereferencing a null pointer when QMimeData is 0
Merge pull request #26 from Vesuri/master

Use generic UNIX platform services instead of relaying open URL calls over Wayland
[qtwayland] Do not send visibility notification on creation
Ping/Pong API

Add a ping() method and a pong() signal to QWaylandSurface which provides
access to wayland_shell_surface::ping/pong
[qtwayland] Add an extension for sending keys to specific windows.
Merge pull request #29 from mikkoharju/clientRendering

[qtwayland] Do not send visibility notification on creation
Merge pull request #30 from xknight/master

Ping/Pong API
Merge pull request #31 from adenexter/master

[qtwayland] Add an extension for sending keys to specific windows.
Compositor: provide a way to update the clipboard on a client

Clipboard synchronization happens when a client is keyboard-focused, but
some clients may require clipboard access even when not in focus. Add
an updateSelection() slot to QWaylandSurface so that the compositor
implementor can synchronize the clipboard manually or through a
signal-slot connection.
Merge pull request #33 from xknight/master

Compositor: provide a way to update the clipboard on a client
Compositor: Extend QWaylandSurfaceNode from QSGSimpleTextureNode

Use the convenience base class to remove replicated code and make use
of QSGTextureMaterial's internal optimizations.
Merge pull request #34 from xknight/master

Compositor: Extend QWaylandSurfaceNode from QSGSimpleTextureNode
Clipboard: perform non-blocking reads from compositor

Since the compositor recycles file descriptors when offering data to
clients, it is possible that a client (or multiple clients) can attempt
to read from the same FD simultaneously, creating a situation where one
read can wait indefinitely for data. By making the pipe non-blocking,
the client can gracefully time-out if data doesn't arrive in a timely
manner.

This commit also ensures that only one FD is open per client per offered
mime type.
Set surface title on platform window creation

When creating the platform window, the surface title should be set to the
value in the associated QWindow otherwise the compositor won't know it
until setWindowTitle() is called.

Change-Id: I5d0e16c78bf5dd7c9dde47254809d18cf77f0a82
Reviewed-by: Laszlo Agocs
Merge pull request #36 from xknight/master

Clipboard: perform non-blocking reads from compositor