weston/clients
Carlos Garnacho 9c93179023 data-device: Implement DnD actions
The policy in weston in order to determine the chosen DnD action is
deliberately simple, and is probably the minimals that any compositor
should be doing here.

Besides honoring the set_actions requests on both wl_data_source and
wl_data_offer, weston now will emit the newly added "action" events
notifying both source and dest of the chosen action.

The "dnd" client has been updated too (although minimally), so it
notifies the compositor of a "move" action on both sides.

Changes since v8:
  - Add back wl_data_offer.source_actions emission, gone during last
    code shuffling. Fix nits found in review.

Changes since v7:
  - Fixes spotted during review. Add client-side version checks.
    Implement .action emission as specified in protocol patch v11.

Changes since v6:
  - Emit errors as defined in DnD actions patch v10.

Changes since v5:
  - Use enum types and values for not-a-bitfield stored values.
    handle errors when finding unexpected dnd_actions values.

Changes since v4:
  - Added compositor-side version checks. Spaces vs tabs fixes.
    Fixed resource versioning. Initialized new weston_data_source/offer
    fields.

Changes since v3:
  - Put data_source.action to use in the dnd client, now updates
    the dnd surface like data_source.target events do.

Changes since v2:
  - Split from DnD progress notification changes.

Changes since v1:
  - Updated to v2 of DnD actions protocol changes, implement
    wl_data_offer.source_actions.
  - Fixed coding style issues.

Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
Reviewed-by: Michael Catanzaro <mcatanzaro@igalia.com>
Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
2016-01-19 12:34:35 +08:00
..
calibrator.c Moved helper macro to a discrete include file. 2015-06-15 17:11:45 -07:00
clickdot.c Unified multiple definitions of container_of() macro. 2015-06-15 17:11:58 -07:00
cliptest.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
desktop-shell.c desktop-shell: Rename protocol weston_desktop_shell 2015-11-19 14:58:58 +02:00
dnd.c data-device: Implement DnD actions 2016-01-19 12:34:35 +08:00
editor.c Use text input protocol from wayland-protocols 2015-11-19 13:07:10 +02:00
eventdemo.c Support axis source, axis discrete, frame and axis stop events 2016-01-19 12:33:26 +08:00
flower.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
fullscreen.c Use fullscreen-shell.xml from wayland-protocols 2015-11-19 12:50:56 +02:00
gears.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
image.c cosmetic: Remove a few double semicolons 2015-10-07 11:22:03 -07:00
ivi-shell-user-interface.c hmi-controller: allocate background surfaces for multi-screen 2015-12-14 13:16:11 +02:00
keyboard.c Use input method protocol from wayland-protocols 2015-11-19 13:17:59 +02:00
multi-resource.c Remove redundant #include path component. 2015-06-15 17:11:09 -07:00
nested-client.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
nested.c Moved the MIN() macro to the helper include. 2015-06-15 17:11:52 -07:00
presentation-shm.c presentation-shm: Allow setting of delay before surface.commit 2015-07-16 13:51:03 +03:00
resizor.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
scaler.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
screenshot.c Rename screenshooter protocol to weston_screenshooter 2015-11-19 15:07:24 +02:00
simple-damage.c clients: Fix compositor version check for WL_SURFACE_DAMAGE_BUFFER_SINCE_VERSION 2016-01-14 16:36:21 -06:00
simple-dmabuf-intel.c clients: Fix a few issues in simple-dmabuf-intel 2016-01-11 13:31:48 -06:00
simple-dmabuf-v4l.c clients: fix build on Linux 2016-01-14 13:50:23 -06:00
simple-egl.c Use xdg_shell protocol from wayland-protocols 2015-11-19 14:49:52 +02:00
simple-shm.c Use xdg_shell protocol from wayland-protocols 2015-11-19 14:49:52 +02:00
simple-touch.c Moved helper macro to a discrete include file. 2015-06-15 17:11:45 -07:00
smoke.c smoke: Don't post extra damage 2015-11-20 15:27:55 +02:00
stacking.c clients: Correct drawing glitch in stacking demo 2015-10-21 16:57:47 -05:00
subsurfaces.c Use [x]zalloc instead of [x]malloc + memset 2015-08-07 11:59:10 -07:00
terminal.c terminal: allow copy-paste when selection is scrolled out 2015-09-22 18:37:19 -07:00
transformed.c clients: Update boilerplate from MIT X11 license to MIT Expat licenses 2015-06-15 13:04:18 -07:00
weston-info.c weston-info: display output scale 2015-12-18 17:45:30 +02:00
weston-simple-im.c Use input method protocol from wayland-protocols 2015-11-19 13:17:59 +02:00
window.c data-device: Implement DnD actions 2016-01-19 12:34:35 +08:00
window.h data-device: Implement DnD actions 2016-01-19 12:34:35 +08:00