diff options
| author | Po Lu | 2022-03-06 10:42:33 +0000 |
|---|---|---|
| committer | Po Lu | 2022-03-06 10:42:33 +0000 |
| commit | 450f3f8725ff231aeda2738e25b4bb2cebe5a35b (patch) | |
| tree | dd1d12b2dc00e1a007e4d604bd95f09fc14c1c2f | |
| parent | 0adb2d507cdf386f2cc8b4fb6c5bfc953fec42e8 (diff) | |
| download | emacs-450f3f8725ff231aeda2738e25b4bb2cebe5a35b.tar.gz emacs-450f3f8725ff231aeda2738e25b4bb2cebe5a35b.zip | |
Slightly fix mouse-highlight processing on Haiku
* src/haikuterm.c (haiku_read_socket): If no corresponding frame
was found for a keyboard event, clear mouse highlight.
| -rw-r--r-- | src/haikuterm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/haikuterm.c b/src/haikuterm.c index c44b350c583..633e87fd435 100644 --- a/src/haikuterm.c +++ b/src/haikuterm.c | |||
| @@ -2780,8 +2780,6 @@ haiku_read_socket (struct terminal *terminal, struct input_event *hold_quit) | |||
| 2780 | struct haiku_key_event *b = buf; | 2780 | struct haiku_key_event *b = buf; |
| 2781 | Mouse_HLInfo *hlinfo = &x_display_list->mouse_highlight; | 2781 | Mouse_HLInfo *hlinfo = &x_display_list->mouse_highlight; |
| 2782 | struct frame *f = haiku_window_to_frame (b->window); | 2782 | struct frame *f = haiku_window_to_frame (b->window); |
| 2783 | if (!f) | ||
| 2784 | continue; | ||
| 2785 | 2783 | ||
| 2786 | /* If mouse-highlight is an integer, input clears out | 2784 | /* If mouse-highlight is an integer, input clears out |
| 2787 | mouse highlighting. */ | 2785 | mouse highlighting. */ |
| @@ -2795,6 +2793,9 @@ haiku_read_socket (struct terminal *terminal, struct input_event *hold_quit) | |||
| 2795 | need_flush = 1; | 2793 | need_flush = 1; |
| 2796 | } | 2794 | } |
| 2797 | 2795 | ||
| 2796 | if (!f) | ||
| 2797 | continue; | ||
| 2798 | |||
| 2798 | inev.code = b->keysym ? b->keysym : b->multibyte_char; | 2799 | inev.code = b->keysym ? b->keysym : b->multibyte_char; |
| 2799 | 2800 | ||
| 2800 | if (b->keysym) | 2801 | if (b->keysym) |