aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2000-07-13 14:09:50 +0000
committerGerd Moellmann2000-07-13 14:09:50 +0000
commit0f1a9b2356e3eb8ddfea1f26f3d8812e568f7d03 (patch)
tree31823c7568ad849b92ea5db5c4c4d12b0236c9a1 /src
parent9979315d68c82de6233ab815a92336b209b2646f (diff)
downloademacs-0f1a9b2356e3eb8ddfea1f26f3d8812e568f7d03.tar.gz
emacs-0f1a9b2356e3eb8ddfea1f26f3d8812e568f7d03.zip
(x_handle_tool_bar_click): Store the frame in the
frame_or_window slot of TOOL_BAR_EVENT input events instead of consing. For prefix events, store the frame in the `arg' slot of the event, otherwise store the key there. (XTread_socket): Instead of consing, use the frame_or_window slot of HELP_EVENTs for the frame, and the `arg' slot for the help string.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog59
-rw-r--r--src/xterm.c12
2 files changed, 67 insertions, 4 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 99c6bce5c87..aa18ee166ff 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,62 @@
12000-07-13 Gerd Moellmann <gerd@gnu.org>
2
3 * xterm.c (x_handle_tool_bar_click): Store the frame in the
4 frame_or_window slot of TOOL_BAR_EVENT input events instead of
5 consing. For prefix events, store the frame in the `arg' slot of
6 the event, otherwise store the key there.
7 (XTread_socket): Instead of consing, use the frame_or_window slot
8 of HELP_EVENTs for the frame, and the `arg' slot for the help
9 string.
10
11 * xmenu.c (menu_highlight_callback): Store help string in the
12 `arg' member of the input event; don't cons.
13 (menubar_selection_callback): Use the `arg' slot of input events
14 to queue additional information, instead of consing.
15
16 * msdos.c (dos_rawgetc): Adapt to change of HELP_EVENTs.
17
18 * w32term.c (w32_handle_tool_bar_click): Adapt to changes in
19 TOOL_BAR_EVENTs.
20 (w32_read_socket): Adapt to changes in HELP_EVENTs.
21
22 * w32menu.c (menubar_selection_callback): Use the `arg' slot of
23 input events to queue additional information, instead of consing.
24
25 * keyboard.c (kbd_buffer_gcpro): Renamed from
26 kbd_buffer_frame_or_window. Now used for all Lisp objects
27 referenced from the input queue.
28 (kbd_buffer_store_event): Always use structure assignment for
29 copying input events. Record all Lisp objects referenced from
30 events in kbd_buffer_gcpro.
31 (kbd_buffer_get_event): Construct Lisp `help-echo' events
32 differently from input events. Test for prefix menu_bar_events
33 and TOOL_BAR_EVENTs differently. Reset all slots used by an input
34 event in kbd_buffer_gcpro to nil.
35 (make_lispy_event) <TOOL_BAR_EVENT>: Treat an input event whose
36 frame_or_window is equal to its arg member as prefix events.
37 (stuff_buffered_input): Reset all slots in kbd_buffer_gcpro
38 used by an input event to nil.
39 (init_keyboard): Use two times the size of the input queue
40 for kbd_buffer_gcpro.
41 (syms_of_keyboard): Likewise.
42
43 * emacs.c (handle_USR2_signal, handle_USR1_signal): Use
44 USER_SIGNAL_EVENT.
45
46 * termhooks.h (struct input_event): Add member `arg'.
47 (MENU_BAR_EVENT): Renamed from menu_bar_event.
48 (USER_SIGNAL_EVENT): Renamed from user_signal.
49
50 * xfaces.c (ASET): Remove definition.
51
52 * lisp.h (AREF, ASET, ASIZE): New macros.
53
54 * fontset.c (AREF, ASIZE): Remove definitions.
55
56 * fns.c (AREF): Remove definition.
57
58 * composite.c (AREF): Remove definition.
59
12000-07-12 Gerd Moellmann <gerd@gnu.org> 602000-07-12 Gerd Moellmann <gerd@gnu.org>
2 61
3 * dispnew.c (redraw_overlapped_rows): Add missing local. 62 * dispnew.c (redraw_overlapped_rows): Add missing local.
diff --git a/src/xterm.c b/src/xterm.c
index 2a804dbc830..f2068c48043 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -6780,11 +6780,13 @@ x_handle_tool_bar_click (f, button_event)
6780 6780
6781 XSETFRAME (frame, f); 6781 XSETFRAME (frame, f);
6782 event.kind = TOOL_BAR_EVENT; 6782 event.kind = TOOL_BAR_EVENT;
6783 event.frame_or_window = Fcons (frame, Fcons (Qtool_bar, Qnil)); 6783 event.frame_or_window = frame;
6784 event.arg = frame;
6784 kbd_buffer_store_event (&event); 6785 kbd_buffer_store_event (&event);
6785 6786
6786 event.kind = TOOL_BAR_EVENT; 6787 event.kind = TOOL_BAR_EVENT;
6787 event.frame_or_window = Fcons (frame, key); 6788 event.frame_or_window = frame;
6789 event.arg = key;
6788 event.modifiers = x_x_to_emacs_modifiers (FRAME_X_DISPLAY_INFO (f), 6790 event.modifiers = x_x_to_emacs_modifiers (FRAME_X_DISPLAY_INFO (f),
6789 button_event->state); 6791 button_event->state);
6790 kbd_buffer_store_event (&event); 6792 kbd_buffer_store_event (&event);
@@ -9785,7 +9787,8 @@ XTread_socket (sd, bufp, numchars, expected)
9785 { 9787 {
9786 XSETFRAME (frame, f); 9788 XSETFRAME (frame, f);
9787 bufp->kind = HELP_EVENT; 9789 bufp->kind = HELP_EVENT;
9788 bufp->frame_or_window = Fcons (frame, Qnil); 9790 bufp->frame_or_window = frame;
9791 bufp->arg = Qnil;
9789 ++bufp, ++count, --numchars; 9792 ++bufp, ++count, --numchars;
9790 } 9793 }
9791 9794
@@ -9872,7 +9875,8 @@ XTread_socket (sd, bufp, numchars, expected)
9872 9875
9873 any_help_event_p = 1; 9876 any_help_event_p = 1;
9874 bufp->kind = HELP_EVENT; 9877 bufp->kind = HELP_EVENT;
9875 bufp->frame_or_window = Fcons (frame, help_echo); 9878 bufp->frame_or_window = frame;
9879 bufp->arg = help_echo;
9876 ++bufp, ++count, --numchars; 9880 ++bufp, ++count, --numchars;
9877 } 9881 }
9878 9882