]> git.eshelyaron.com Git - emacs.git/commit
Fix race conditions in handling of unsupported drops on X
authorPo Lu <luangruo@yahoo.com>
Mon, 9 May 2022 01:17:28 +0000 (09:17 +0800)
committerPo Lu <luangruo@yahoo.com>
Mon, 9 May 2022 01:17:28 +0000 (09:17 +0800)
commit3d846efb857c0ace95d6fe026522fcdbffe04dc3
tree888828ca6c4a9f8876d4e8585c5d562271897c5d
parent8d788a195f68bf7451635f7d4dfe86a6dc2bbda5
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.
lisp/x-dnd.el
src/keyboard.c
src/keyboard.h
src/termhooks.h
src/xterm.c
src/xterm.h