]> git.eshelyaron.com Git - emacs.git/commit
Redo Haiku DND support
authorPo Lu <luangruo@yahoo.com>
Wed, 16 Mar 2022 13:18:12 +0000 (13:18 +0000)
committerPo Lu <luangruo@yahoo.com>
Wed, 16 Mar 2022 13:28:53 +0000 (13:28 +0000)
commit3de3f12b9402c731aca1a583a15fc6245efea136
treedd0b83c98156cb6aecd01d40bdda7ef20df05844
parent65f92837fa58c943f689fb847edcfd44c8a8a6c1
Redo Haiku DND support

* lisp/term/haiku-win.el (haiku-dnd-handle-drag-n-drop-event):
Update for new DND event format.
* src/haiku_io.c (haiku_len): Handle DRAG_AND_DROP_EVENTs.
* src/haiku_select.cc (be_enum_message, be_get_refs_data)
(be_get_message_data): New function.
* src/haiku_support.cc (class Emacs): Remove `RefsReceived'.
(MessageReceived): Generate new kind of drag-n-drop events.
* src/haiku_support.h (enum haiku_event_type): Rename
`REFS_EVENT' to `DRAG_AND_DROP_EVENT'.
(struct haiku_refs_event): Delete struct.
(struct haiku_drag_and_drop_event): New struct.
* src/haikuselect.c (haiku_message_to_lisp): New function.
(syms_of_haikuselect): New symbols.
* src/haikuselect.h: Update prototypes.
* src/haikuterm.c (haiku_read_socket): Handle new type of
drag-and-drop events by serializing drop message to Lisp and
letting Lisp code do the processing.
* src/haikuterm.h: Update prototypes.
lisp/term/haiku-win.el
src/haiku_io.c
src/haiku_select.cc
src/haiku_support.cc
src/haiku_support.h
src/haikuselect.c
src/haikuselect.h
src/haikuterm.c
src/haikuterm.h