From: Po Lu Date: Wed, 2 Mar 2022 05:21:20 +0000 (+0000) Subject: Fix some bugs with multiple terminals on Haiku X-Git-Tag: emacs-29.0.90~2054 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=67af072204ce973bdd42c750123749956bc558b9;p=emacs.git Fix some bugs with multiple terminals on Haiku * src/haikuterm.c (haiku_mouse_position): Only clear `mouse_moved' for Haiku frames. --- diff --git a/src/haikuterm.c b/src/haikuterm.c index 7779b3168b7..a765eb715df 100644 --- a/src/haikuterm.c +++ b/src/haikuterm.c @@ -2427,14 +2427,19 @@ haiku_mouse_position (struct frame **fp, int insist, Lisp_Object *bar_window, enum scroll_bar_part *part, Lisp_Object *x, Lisp_Object *y, Time *timestamp) { + Lisp_Object frame, tail; + struct frame *f1 = NULL; + if (!fp) return; block_input (); - Lisp_Object frame, tail; - struct frame *f1 = NULL; + FOR_EACH_FRAME (tail, frame) - XFRAME (frame)->mouse_moved = false; + { + if (FRAME_HAIKU_P (XFRAME (frame))) + XFRAME (frame)->mouse_moved = false; + } if (gui_mouse_grabbed (x_display_list) && !EQ (track_mouse, Qdropping)) f1 = x_display_list->last_mouse_frame;