[PATCH weston 3/5] client: Add DnD cursors to the managed cursors list

Carlos Garnacho carlosg at gnome.org
Fri Jan 15 12:14:25 PST 2016


That way we'll be able to set the corresponding pointer surface to
a current DnD operation.

Signed-off-by: Carlos Garnacho <carlosg at gnome.org>
Reviewed-by: Jonas Ã…dahl <jadahl at gmail.com>
---
 clients/window.c | 16 ++++++++++++++++
 clients/window.h |  3 +++
 2 files changed, 19 insertions(+)

diff --git a/clients/window.c b/clients/window.c
index 3e5885e..e9e8de9 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -1261,6 +1261,19 @@ static const char *watches[] = {
 	"0426c94ea35c87780ff01dc239897213"
 };
 
+static const char *move_draggings[] = {
+	"dnd-move"
+};
+
+static const char *copy_draggings[] = {
+	"dnd-copy"
+};
+
+static const char *forbidden_draggings[] = {
+	"dnd-none",
+	"dnd-no-drop"
+};
+
 struct cursor_alternatives {
 	const char **names;
 	size_t count;
@@ -1280,6 +1293,9 @@ static const struct cursor_alternatives cursors[] = {
 	{xterms, ARRAY_LENGTH(xterms)},
 	{hand1s, ARRAY_LENGTH(hand1s)},
 	{watches, ARRAY_LENGTH(watches)},
+	{move_draggings, ARRAY_LENGTH(move_draggings)},
+	{copy_draggings, ARRAY_LENGTH(copy_draggings)},
+	{forbidden_draggings, ARRAY_LENGTH(forbidden_draggings)},
 };
 
 static void
diff --git a/clients/window.h b/clients/window.h
index 74a2c72..d54bf79 100644
--- a/clients/window.h
+++ b/clients/window.h
@@ -192,6 +192,9 @@ enum cursor_type {
 	CURSOR_IBEAM,
 	CURSOR_HAND1,
 	CURSOR_WATCH,
+	CURSOR_DND_MOVE,
+	CURSOR_DND_COPY,
+	CURSOR_DND_FORBIDDEN,
 
 	CURSOR_BLANK
 };
-- 
2.5.0



More information about the wayland-devel mailing list