summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/eieio.el
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-06-06 11:08:19 +0800
committerPo Lu <luangruo@yahoo.com>2022-06-06 11:08:19 +0800
commitb90d2a6a63f1b7f73d2cb7e976148e8195fc5502 (patch)
tree965057d58b783e920711e05138ad56184ceec6c4 /lisp/emacs-lisp/eieio.el
parent0a36671f415bd681ddca0bad8612aca031fd407d (diff)
downloademacs-b90d2a6a63f1b7f73d2cb7e976148e8195fc5502.tar.gz
emacs-b90d2a6a63f1b7f73d2cb7e976148e8195fc5502.tar.bz2
emacs-b90d2a6a63f1b7f73d2cb7e976148e8195fc5502.zip
Rework X selections to make it safe to run the debugger inside converters
* src/keyboard.c (prev_kbd_event): Delete function. (readable_events): Return 1 if x_detect_pending_selection_requests returns true. (kbd_buffer_unget_event): Also delete function, since nested selection requests are really handled correctly. (kbd_buffer_get_event): Handle events from the special X deferred selection queue as well. * src/keyboard.h: Update prototypes. * src/xselect.c (struct selection_event_queue) (selection_input_event_equal, x_queue_event) (x_start_queuing_selection_requests) (x_stop_queuing_selection_requests): Delete structs, since they are no longer required. (x_handle_selection_request, x_handle_selection_event): Allow nested selection events. * src/xterm.c (struct x_selection_request_event): New struct. (x_handle_pending_selection_requests_1) (x_handle_pending_selection_requests): Handle all events in the new selection event queue. (x_push_selection_request, x_detect_pending_selection_requests): New functions. (x_dnd_begin_drag_and_drop): Drain the selection queue here as well. (handle_one_xevent): When inside a nested event loop, just push selections to that queue. (XTread_socket): Allow reading X events if x_dnd_unwind_flag is true, even though DND is in progress. (x_delete_display): Delete pending selection events for the display that is going away. * src/xterm.h: Update prototypes.
Diffstat (limited to 'lisp/emacs-lisp/eieio.el')
0 files changed, 0 insertions, 0 deletions