]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix current-line hscrolling in buffers with header-line
authorEli Zaretskii <eliz@gnu.org>
Mon, 22 May 2017 18:15:17 +0000 (21:15 +0300)
committerEli Zaretskii <eliz@gnu.org>
Mon, 22 May 2017 18:15:17 +0000 (21:15 +0300)
* src/xdisp.c (display_line): When testing the glyph row's
vertical position against the cursor position, account for header
line, if any.  (Bug#27014)

src/xdisp.c

index 058806173851f48070c48182eba1219c3add9eef..ddb26b8defd03be2cc2eeb421318e3b07a8ef6df 100644 (file)
@@ -20671,7 +20671,9 @@ display_line (struct it *it, int cursor_vpos)
   ptrdiff_t min_pos = ZV + 1, max_pos = 0;
   ptrdiff_t min_bpos UNINIT, max_bpos UNINIT;
   bool pending_handle_line_prefix = false;
-  bool hscroll_this_line = (cursor_vpos >= 0 && it->vpos == cursor_vpos
+  int header_line = WINDOW_WANTS_HEADER_LINE_P (it->w);
+  bool hscroll_this_line = (cursor_vpos >= 0
+                           && it->vpos == cursor_vpos - header_line
                            && hscrolling_current_line_p (it->w));
   int first_visible_x = it->first_visible_x;
   int last_visible_x = it->last_visible_x;