summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Kangas <stefankangas@gmail.com>2023-02-23 06:30:16 +0100
committerStefan Kangas <stefankangas@gmail.com>2023-02-23 06:30:16 +0100
commitfad3665069740e002fcb7f9313f9eeec81ad9a0c (patch)
tree16bdc0fb14425235f3a192fe1c89485c4d1fcefb /src
parent48cc5c0604cea2e6344fe3f7604f9d2881d898bf (diff)
parent94e70ed4261dbfcef679697dfa0dc2348a90dbdc (diff)
downloademacs-fad3665069740e002fcb7f9313f9eeec81ad9a0c.tar.gz
Merge from origin/emacs-29
94e70ed4261 ; * lisp/emacs-lisp/eldoc.el (eldoc-display-in-echo-area)... 1841299a11d Eglot: implement inlay hints (bug#61412, bug#61066) 28ed0d1840f Eglot: run eglot-managed-mode-hook after LSP didOpen 7ad5d9babed Eglot: restore eldoc-documentation-functions on shutdown 711a775ba76 Eglot: simplify capability-checking code ea7251ad6df Eglot: go back to setting eldoc-documentation-strategy again 6016f1982d3 ; * etc/NEWS: Fix typo again d411b4d1fd3 ; * etc/NEWS (C-x v !): Additional text. a0b67252346 ; * doc/emacs/vc1-xtra.texi (Preparing Patches): Wording ... 43c4dd6f962 ; * doc/emacs/anti.texi (Antinews): Adjust to latest chan... 20c654b6f8f Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs ... 177d0cf2a9a ; * etc/NEWS: Fix typos. db7096a532c Yield to erc-move-to-prompt before unhiding prompt db21c84bc94 ; Improve doc string of 'C-q' a6be0be1db6 ; Clarify "kill files" in Gnus manual d816429e2f2 * lisp/progmodes/python.el (python--import-sources): Fix ... 1f4886fdb09 Do not error out on non image file (bug#61639) 003759a6dca Explain effect of variable-pitch fonts on fill-column ba91a76659b Avoid division by zero in get_narrowed_* functions fb5dbf6de73 ; Fix documentation of 'icon-title-format'. 48c9a507713 * etc/NEWS: Mention new buffer display action alist entries 4dc1f2b9a01 ; * src/xterm.c (x_update_end): Condition on HAVE_XDBE f1c83898060 Fix build --without-xdbe ef38774c02c Improve dnd-direct-save-remote-files docstring cf53e62a791 Add 'process-status' to process shortdoc 68df9e5953c * lisp/emacs-lisp/comp.el (comp--trampoline-abs-filename)... 06ba9484166 Improve text about deleting windows 1976ca1634d Make 'emacs-news-cycle-tag' work at all levels # Conflicts: # etc/NEWS
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c10
-rw-r--r--src/xterm.c6
2 files changed, 11 insertions, 5 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index 518014dc11a..c5c4321af77 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -3498,18 +3498,18 @@ init_iterator (struct it *it, struct window *w,
static int
get_narrowed_width (struct window *w)
{
- int fact;
/* In a character-only terminal, only one font size is used, so we
can use a smaller factor. */
- fact = EQ (Fterminal_live_p (Qnil), Qt) ? 2 : 3;
- return fact * window_body_width (w, WINDOW_BODY_IN_CANONICAL_CHARS);
+ int fact = EQ (Fterminal_live_p (Qnil), Qt) ? 2 : 3;
+ int width = window_body_width (w, WINDOW_BODY_IN_CANONICAL_CHARS);
+ return fact * max (1, width);
}
static int
get_narrowed_len (struct window *w)
{
- return get_narrowed_width (w) *
- window_body_height (w, WINDOW_BODY_IN_CANONICAL_CHARS);
+ int height = window_body_height (w, WINDOW_BODY_IN_CANONICAL_CHARS);
+ return get_narrowed_width (w) * max (1, height);
}
ptrdiff_t
diff --git a/src/xterm.c b/src/xterm.c
index 5feaa4aef0f..70bcb67d80d 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -5950,8 +5950,10 @@ void
x_end_cr_clip (struct frame *f)
{
cairo_restore (FRAME_CR_CONTEXT (f));
+#ifdef HAVE_XDBE
if (FRAME_X_DOUBLE_BUFFERED_P (f))
x_mark_frame_dirty (f);
+#endif
}
void
@@ -7486,8 +7488,10 @@ x_update_end (struct frame *f)
MOUSE_HL_INFO (f)->mouse_face_defer = false;
#ifdef USE_CAIRO
+# ifdef HAVE_XDBE
if (!FRAME_X_DOUBLE_BUFFERED_P (f) && FRAME_CR_CONTEXT (f))
cairo_surface_flush (cairo_get_target (FRAME_CR_CONTEXT (f)));
+# endif
#endif
/* If double buffering is disabled, finish the update here.
@@ -21141,8 +21145,10 @@ handle_one_xevent (struct x_display_info *dpyinfo,
x_flush (WINDOW_XFRAME (XWINDOW (bar->window)));
}
+#ifdef HAVE_XDBE
if (f && FRAME_X_DOUBLE_BUFFERED_P (f))
x_drop_xrender_surfaces (f);
+#endif
goto OTHER;
}