dnd: Turn into a full blown example
dnd: Turn into a full blown example

In order to keep things simple, weston-dnd made a few choices that
turn out to be unrealistic, a few tweaks have been done to make it
less of a playground demo:

- It now caters for copy/move operations, instead of just move,
  which still remains the default nonetheless.
- As "move" operations are no longer assumed, the item isn't removed
  on start_drag, instead it is made translucent until the drag
  operation finishes (and we know whether the item is to be
  removed after transfer or left as is)
- For the same reasons, "Drop nowhere to delete item" no longer
  happens. Drag-and-drop is a failable operation and must not result
  in data loss.
- As multiple actions are now allowed, we set the pointer icon
  surface accordingly to the current operation.

This makes weston-dnd a better example of what applications usually
want to do here.

Changes since v2:
  - Updated to behave alright-ish with version < 3.

Changes since v1:
  - Remove unneeded include. Remove extra newlines. Other minor
    code fixes.

Signed-off-by: Carlos Garnacho <8aa797d77d86809a7bc4a8544e3c327451cf6b4f@gnome.org>
Reviewed-by: Jonas Ådahl <67dcd8a17e758192e0cbb577ce1d62cc7da6cf49@gmail.com>

sir-murray/weston,giucam/weston,krezovic/weston,giucam/weston,Fantu/compositor-spice,sir-murray/weston,Gnurou/weston,krezovic/weston,Gnurou/weston,Fantu/compositor-spice,Fantu/compositor-spice