diff options
author | Po Lu <luangruo@yahoo.com> | 2022-03-23 14:15:22 +0000 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-03-23 14:16:15 +0000 |
commit | 7fa5d6c87d43926008c15a7f7ddc924bbf8d2e76 (patch) | |
tree | 10291262a55f8d78e81c7e1f2d98b754cbe4cc71 /src/haikuselect.h | |
parent | 36810a8164db12766f532f268f322afe1e601b6a (diff) | |
download | emacs-7fa5d6c87d43926008c15a7f7ddc924bbf8d2e76.tar.gz |
Improvements to Haiku selection handling
* lisp/term/haiku-win.el (haiku-selection-targets): Implement in Lisp.
* src/haiku_select.cc (be_get_message_type):
(be_set_message_type):
(be_get_message_message):
(be_add_message_message): New functions.
* src/haiku_support.cc (MessageReceived): Fix typo.
* src/haikuselect.c (haiku_selection_data_1)
(Fhaiku_selection_targets): Delete functions.
(haiku_message_to_lisp, lisp_to_type_code)
(haiku_lisp_to_message): Correctly decode and encode nested
messages, and fix encoding specially decoded types via numeric
names. Also store and decode message types inside Lisp
messages.
(Fhaiku_drag_message): Update doc string.
(syms_of_haikuselect): Update subrs.
* src/haikuselect.h: Update prototypes.
Diffstat (limited to 'src/haikuselect.h')
-rw-r--r-- | src/haikuselect.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/haikuselect.h b/src/haikuselect.h index 42789949182..01e4ca327da 100644 --- a/src/haikuselect.h +++ b/src/haikuselect.h @@ -94,12 +94,18 @@ extern "C" ssize_t *size_return); extern int be_get_refs_data (void *message, const char *name, int32 index, char **path_buffer); + extern uint32 be_get_message_type (void *message); + extern void be_set_message_type (void *message, uint32 what); + extern void *be_get_message_message (void *message, const char *name, + int32 index); extern void *be_create_simple_message (void); extern int be_add_message_data (void *message, const char *name, int32 type_code, const void *buf, ssize_t buf_size); extern int be_add_refs_data (void *message, const char *name, const char *filename); + extern int be_add_message_message (void *message, const char *name, + void *data); extern int be_lock_clipboard_message (enum haiku_clipboard clipboard, void **message_return); extern void be_unlock_clipboard (enum haiku_clipboard clipboard); |