]> git.eshelyaron.com Git - emacs.git/commitdiff
Make sure the cursor can't move on top of a tooltip on Haiku
authorPo Lu <luangruo@yahoo.com>
Wed, 9 Feb 2022 02:10:36 +0000 (02:10 +0000)
committerPo Lu <luangruo@yahoo.com>
Wed, 9 Feb 2022 02:10:36 +0000 (02:10 +0000)
* src/haikuterm.c (haiku_read_socket): Work around leave
notification events not being sent on tooltip frames.

src/haikuterm.c

index 0c7e08585e7bcacc3fbdb8662da7144e808b46fd..117d8df2e560bfb59014693cd0be7c6e8f00529e 100644 (file)
@@ -2730,9 +2730,21 @@ haiku_read_socket (struct terminal *terminal, struct input_event *hold_quit)
            struct frame *f = haiku_window_to_frame (b->window);
            Mouse_HLInfo *hlinfo = &x_display_list->mouse_highlight;
 
-           if (!f || FRAME_TOOLTIP_P (f))
+           if (!f)
              continue;
 
+           if (FRAME_TOOLTIP_P (f))
+             {
+               /* Dismiss the tooltip if the mouse moves onto a
+                  tooltip frame.  FIXME: for some reason we don't get
+                  leave notification events for this.  */
+
+               if (any_help_event_p)
+                 do_help = -1;
+
+               break;
+             }
+
            Lisp_Object frame;
            XSETFRAME (frame, f);