diff options
author | Eli Zaretskii <eliz@gnu.org> | 2023-05-02 08:50:09 -0400 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2023-05-02 08:50:09 -0400 |
commit | daf602a5c8ec9e5d94f5e1e412182760a02c2505 (patch) | |
tree | 84b0c694f5ed9a911011078e8b0f1df18bc9ca71 /src | |
parent | 4f44c56c867b99bc7b813d8b104b9939479f86f2 (diff) | |
parent | 46392c1623bc3f9764b8c7df293a89fcd47ab0ad (diff) | |
download | emacs-daf602a5c8ec9e5d94f5e1e412182760a02c2505.tar.gz |
Merge from origin/emacs-29
46392c1623b Fix vertical-motion when tab-line is displayed in a window
0e52beeacea Update to Org 9.6.5-3-g2993f4
dd21003878d Prevent generating empty autoload files
2bcf11d0efe * lisp/org/org-macs.el (org--inhibit-version-check): Fix ...
ca43435816b Fix redisplay of mode line after its format changes from nil
610a7657e0a Fix c-ts-mode--emacs-c-range-query
7f94558b775 Improve documentation of warnings
5a3f0e2c558 ; Doc fix in c-ts-mode.el
21361d05635 Fix FOR_EACH_TAIL fontification (bug#62951)
d0df3404fde ; * etc/EGLOT-NEWS: chsharp-le -> csharp-ls
c229e83c3ce ; * etc/EGLOT-NEWS (https): Elglot -> Eglot.
b4f2f499783 Fix documentation of libxml-parse-* functions
5dd784961d1 ; * src/treesit.c (syms_of_treesit): Fix error messages.
ddfa0d8da9a ; Remove some leftover text
Diffstat (limited to 'src')
-rw-r--r-- | src/dispnew.c | 8 | ||||
-rw-r--r-- | src/treesit.c | 4 | ||||
-rw-r--r-- | src/xdisp.c | 14 | ||||
-rw-r--r-- | src/xml.c | 10 |
4 files changed, 29 insertions, 7 deletions
diff --git a/src/dispnew.c b/src/dispnew.c index 43306043a0c..fe661579daf 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -3748,6 +3748,14 @@ update_window (struct window *w, bool force_p) } } + /* If the window doesn't display its mode line, make sure the + corresponding row of the current glyph matrix is disabled, so + that if and when the mode line is displayed again, it will be + cleared and completely redrawn. */ + if (!window_wants_mode_line (w)) + SET_MATRIX_ROW_ENABLED_P (w->current_matrix, + w->current_matrix->nrows - 1, false); + /* Was display preempted? */ paused_p = row < end; diff --git a/src/treesit.c b/src/treesit.c index ef272fb8871..0af0e347694 100644 --- a/src/treesit.c +++ b/src/treesit.c @@ -3886,9 +3886,9 @@ syms_of_treesit (void) define_error (Qtreesit_parse_error, "Parse failed", Qtreesit_error); define_error (Qtreesit_range_invalid, - "RANGES are invalid, they have to be ordered and not overlapping", + "RANGES are invalid: they have to be ordered and should not overlap", Qtreesit_error); - define_error (Qtreesit_buffer_too_large, "Buffer too large (> 4GB)", + define_error (Qtreesit_buffer_too_large, "Buffer too large (> 4GiB)", Qtreesit_error); define_error (Qtreesit_load_language_error, "Cannot load language definition", diff --git a/src/xdisp.c b/src/xdisp.c index 18ea042e212..2817fc45993 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -20615,6 +20615,8 @@ try_window (Lisp_Object window, struct text_pos pos, int flags) int bot_scroll_margin = top_scroll_margin; if (window_wants_header_line (w)) top_scroll_margin += CURRENT_HEADER_LINE_HEIGHT (w); + if (window_wants_tab_line (w)) + top_scroll_margin += CURRENT_TAB_LINE_HEIGHT (w); start_display (&it, w, pos); if ((w->cursor.y >= 0 @@ -21959,17 +21961,23 @@ try_window_id (struct window *w) /* Don't let the cursor end in the scroll margins. */ { - int this_scroll_margin = window_scroll_margin (w, MARGIN_IN_PIXELS); + int top_scroll_margin = window_scroll_margin (w, MARGIN_IN_PIXELS); + int bot_scroll_margin = top_scroll_margin; int cursor_height = MATRIX_ROW (w->desired_matrix, w->cursor.vpos)->height; - if ((w->cursor.y < this_scroll_margin + if (window_wants_header_line (w)) + top_scroll_margin += CURRENT_HEADER_LINE_HEIGHT (w); + if (window_wants_tab_line (w)) + top_scroll_margin += CURRENT_TAB_LINE_HEIGHT (w); + + if ((w->cursor.y < top_scroll_margin && CHARPOS (start) > BEGV) /* Old redisplay didn't take scroll margin into account at the bottom, but then global-hl-line-mode doesn't scroll. KFS 2004-06-14 */ || (w->cursor.y + (cursor_row_fully_visible_p (w, false, true, true) ? 1 - : cursor_height + this_scroll_margin)) > it.last_visible_y) + : cursor_height + bot_scroll_margin)) > it.last_visible_y) { w->cursor.vpos = -1; clear_glyph_matrix (w->desired_matrix); diff --git a/src/xml.c b/src/xml.c index b55ac62cdd3..b4c849e6a65 100644 --- a/src/xml.c +++ b/src/xml.c @@ -280,7 +280,10 @@ DEFUN ("libxml-parse-html-region", Flibxml_parse_html_region, If START is nil, it defaults to `point-min'. If END is nil, it defaults to `point-max'. -If BASE-URL is non-nil, it is used to expand relative URLs. +If BASE-URL is non-nil, it is used if and when reporting errors and +warnings from the underlying libxml2 library. Currently, errors and +warnings from the library are suppressed, so this argument is largely +ignored. If you want comments to be stripped, use the `xml-remove-comments' function to strip comments before calling this function. */) @@ -298,7 +301,10 @@ DEFUN ("libxml-parse-xml-region", Flibxml_parse_xml_region, If START is nil, it defaults to `point-min'. If END is nil, it defaults to `point-max'. -If BASE-URL is non-nil, it is used to expand relative URLs. +If BASE-URL is non-nil, it is used if and when reporting errors and +warnings from the underlying libxml2 library. Currently, errors and +warnings from the library are suppressed, so this argument is largely +ignored. If you want comments to be stripped, use the `xml-remove-comments' function to strip comments before calling this function. */) |