summaryrefslogtreecommitdiff
path: root/src/common/types.h
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-16 13:26:20 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-16 13:26:20 +0300
commit6f017eb4c18ea53cbc2782df10e078f5b939e87c (patch)
tree412b145bf1c9adac770a94e5aba2cd34baf3d742 /src/common/types.h
parent12d2735115528d741ebf47b6738c88b7c182b85b (diff)
End every drag with one eventone-loop
A drag that dropped on no YASL surface, such as one dropped on the desktop or canceled, ended unheard: the public drag start set no end listener. An application then waited for the drag's end forever. The public layer now listens for the end. When no surface got the drop, the origin gets DRAG with the new action YASL_DROP_CANCEL. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'src/common/types.h')
-rw-r--r--src/common/types.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/common/types.h b/src/common/types.h
index 67aaaa3..034e6fd 100644
--- a/src/common/types.h
+++ b/src/common/types.h
@@ -231,6 +231,7 @@ enum yasl_private_drag_event {
YASL_PRIVATE_DRAG_OVER, /**< Surface drag entered or moved over the target. */
YASL_PRIVATE_DRAG_LEAVE, /**< Surface drag left the target. */
YASL_PRIVATE_DRAG_DROP, /**< Surface drag dropped on the target. */
+ YASL_PRIVATE_DRAG_CANCEL, /**< Surface drag ended on no target; sent to its origin. */
};
/** External text/file drag hover notifications; completed data arrives through input. */