]> git.eshelyaron.com Git - emacs.git/commit
Port `x-lost-selection-functions' to Haiku
authorPo Lu <luangruo@yahoo.com>
Thu, 7 Jul 2022 02:48:19 +0000 (02:48 +0000)
committerPo Lu <luangruo@yahoo.com>
Thu, 7 Jul 2022 02:48:19 +0000 (02:48 +0000)
commitfd016ea99724f7abedfddbb470ab96ece6ddf4ae
treee874e42b2a69d1c22411e2a78c1fa9d2a4270284
parent8575962d46d1f1d08836bf00cb74ccd344953bcb
Port `x-lost-selection-functions' to Haiku

* src/haiku_io.c (haiku_len): Add `CLIPBOARD_CHANGED_EVENT'.
* src/haiku_select.cc (be_update_clipboard_count): Set ownership
flags.
(be_handle_clipboard_changed_message):
(be_start_watching_selection): New functions.

* src/haiku_support.cc (class Emacs): Handle
B_CLIPBOARD_CHANGED.

* src/haiku_support.h (enum haiku_event_type): New event
`CLIPBOARD_CHANGED_EVENT'.
(struct haiku_clipboard_changed_event): New struct.

* src/haikuselect.c (haiku_handle_selection_clear)
(haiku_selection_disowned, haiku_start_watching_selections): New
functions.
(syms_of_haikuselect): New defsym and defvar.

* src/haikuselect.h: Update prototypes.
* src/haikuterm.c (haiku_read_socket): Handle selection events.
(haiku_term_init): Start watching selections.
* src/haikuterm.h: Update prototypes.
* src/keyboard.c (kbd_buffer_get_event, process_special_events)
(mark_kboards): Handle SELECTON_CLEAR_EVENTs correctly on Haiku.
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
src/keyboard.c