]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix display of fringe bitmaps for tooltips in echo area
authorEli Zaretskii <eliz@gnu.org>
Sat, 29 Jun 2019 09:48:15 +0000 (12:48 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sat, 29 Jun 2019 09:48:15 +0000 (12:48 +0300)
* src/xdisp.c (display_line): Force redrawing of fringe
bitmaps when redisplaying a minibuffer window with
truncate-lines set to a non-nil value.  (Bug#36308)

src/xdisp.c

index 9f63ef4b180bbe3f51089066f606261295daab87..48b0edaa76be8c655bd653588e8a23b7807ba44d 100644 (file)
@@ -22528,6 +22528,15 @@ display_line (struct it *it, int cursor_vpos)
   it->right_user_fringe_bitmap = 0;
   it->right_user_fringe_face_id = 0;
 
+  /* When they turn off tooltip-mode on a GUI frame, we call 'message'
+     with message-truncate-lines bound to non-nil, which produces
+     truncation bitmaps on the fringe.  Force redrawing of the fringes
+     in that case, to make sure the fringe bitmaps are removed when a
+     shorter message is displayed.  */
+  if (MINI_WINDOW_P (it->w) && it->line_wrap == TRUNCATE
+      && FRAME_WINDOW_P (it->f) && !cursor_in_echo_area)
+    row->redraw_fringe_bitmaps_p = true;
+
   /* Maybe set the cursor.  */
   cvpos = it->w->cursor.vpos;
   if ((cvpos < 0