summaryrefslogtreecommitdiff
path: root/src/termhooks.h
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-05-09 09:17:28 +0800
committerPo Lu <luangruo@yahoo.com>2022-05-09 09:17:28 +0800
commit3d846efb857c0ace95d6fe026522fcdbffe04dc3 (patch)
tree888828ca6c4a9f8876d4e8585c5d562271897c5d /src/termhooks.h
parent8d788a195f68bf7451635f7d4dfe86a6dc2bbda5 (diff)
downloademacs-3d846efb857c0ace95d6fe026522fcdbffe04dc3.tar.gz
Fix race conditions in handling of unsupported drops on X
* lisp/x-dnd.el (x-dnd-handle-unsupported-drop): Adjust for new parameters. * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr): Export variables. (kbd_buffer_get_event): Ignore already handled unsupported drops. * src/keyboard.h: Update prototypes. * src/termhooks.h (enum event_kind): Document meaning of `modifiers' in UNSUPPORTED_DROP_EVENTs. * src/xterm.c (x_dnd_send_unsupported_drop): Set event modifiers to current level. (x_toggle_visible_pointer): Fix fixes fallback. (x_dnd_begin_drag_and_drop): Handle UNSUPPORTED_DROP_EVENTs already in the keyboard buffer before starting DND. (syms_of_xterm): Give timestamp to unsupported drop function. * src/xterm.h: Update prototypes.
Diffstat (limited to 'src/termhooks.h')
-rw-r--r--src/termhooks.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/termhooks.h b/src/termhooks.h
index 8c193914ba8..08bde0aec0d 100644
--- a/src/termhooks.h
+++ b/src/termhooks.h
@@ -223,6 +223,11 @@ enum event_kind
gives the timestamp where the drop
happened.
+ .modifiers gives a number that
+ determines if an event was already
+ handled by
+ `x_dnd_begin_drag_and_drop'.
+
.x and .y give the coordinates of
the drop originating from the root
window. */