diff options
| author | Jim Blandy | 1992-09-13 12:31:15 +0000 |
|---|---|---|
| committer | Jim Blandy | 1992-09-13 12:31:15 +0000 |
| commit | 2ce30ea2e6243413a878468d2ec81fdf371a30c6 (patch) | |
| tree | 23ff020da48e5e6c7832c707c445d6e3c1b412af /src | |
| parent | d06a8a56c2d7e113eca9a77a850c9bab9d1234c6 (diff) | |
| download | emacs-2ce30ea2e6243413a878468d2ec81fdf371a30c6.tar.gz emacs-2ce30ea2e6243413a878468d2ec81fdf371a30c6.zip | |
* keyboard.c (kbd_buffer_get_event): When performing the
FRAME_FOCUS_FRAME redirection, don't modify the frame field of
the event; that fatally corrupts mouse click events. Instead,
just perform the redirection on the value assigned to
Vlast_event_frame.
* keyboard.c (input_available_signal): Declare this to return
SIGTYPE.
Diffstat (limited to 'src')
| -rw-r--r-- | src/keyboard.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/keyboard.c b/src/keyboard.c index 5b04990b055..5a2e635f843 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -1587,13 +1587,10 @@ kbd_buffer_get_event () | |||
| 1587 | { | 1587 | { |
| 1588 | if (kbd_fetch_ptr == kbd_buffer + KBD_BUFFER_SIZE) | 1588 | if (kbd_fetch_ptr == kbd_buffer + KBD_BUFFER_SIZE) |
| 1589 | kbd_fetch_ptr = kbd_buffer; | 1589 | kbd_fetch_ptr = kbd_buffer; |
| 1590 | /* Do the redirection specified by the focus_frame | ||
| 1591 | member now, before we return this event. */ | ||
| 1592 | kbd_fetch_ptr->frame | ||
| 1593 | = XFRAME (FRAME_FOCUS_FRAME (kbd_fetch_ptr->frame)); | ||
| 1594 | 1590 | ||
| 1595 | #ifdef MULTI_FRAME | 1591 | #ifdef MULTI_FRAME |
| 1596 | XSET (Vlast_event_frame, Lisp_Frame, kbd_fetch_ptr->frame); | 1592 | XSET (Vlast_event_frame, Lisp_Frame, |
| 1593 | XFRAME (FRAME_FOCUS_FRAME (kbd_fetch_ptr->frame))); | ||
| 1597 | #endif | 1594 | #endif |
| 1598 | 1595 | ||
| 1599 | last_event_timestamp = kbd_fetch_ptr->timestamp; | 1596 | last_event_timestamp = kbd_fetch_ptr->timestamp; |
| @@ -2212,6 +2209,7 @@ read_avail_input (expected) | |||
| 2212 | #ifdef SIGIO /* for entire page */ | 2209 | #ifdef SIGIO /* for entire page */ |
| 2213 | /* Note SIGIO has been undef'd if FIONREAD is missing. */ | 2210 | /* Note SIGIO has been undef'd if FIONREAD is missing. */ |
| 2214 | 2211 | ||
| 2212 | SIGTYPE | ||
| 2215 | input_available_signal (signo) | 2213 | input_available_signal (signo) |
| 2216 | int signo; | 2214 | int signo; |
| 2217 | { | 2215 | { |