emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Using window-screen-lines in window-adjust-process-window-size (was:


From: John Shahid
Subject: Re: Using window-screen-lines in window-adjust-process-window-size (was: Re: using window-screen-lines in window-adjust-process-window-size)
Date: Mon, 29 Apr 2019 15:45:31 -0400
User-agent: mu4e 1.1.0; emacs 27.0.50

Eli Zaretskii <address@hidden> writes:

[...]

> I think you are on the right track, so please show a patch to do that,
> and let's take it from there.

Thanks for getting back to me.  I attached the patch below.

>From e9cefa049b6c709e728109eb07cfb186024ef581 Mon Sep 17 00:00:00 2001
From: John Shahid <address@hidden>
Date: Sat, 27 Apr 2019 12:21:38 -0400
Subject: [PATCH] Consider line spacing and font height when deriving proc
 window size

* lisp/window.el (window-adjust-process-window-size): Use
  window-screen-lines instead of window-body-height.
* lisp/term.el (term-mode): Use window-screen-lines to set the initial
  window height.
---
 lisp/term.el   | 2 +-
 lisp/window.el | 6 ++++--
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/lisp/term.el b/lisp/term.el
index 586a887a29..b5949c4600 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -1024,7 +1024,7 @@ term-mode
   (setq indent-tabs-mode nil)
   (setq buffer-display-table term-display-table)
   (set (make-local-variable 'term-home-marker) (copy-marker 0))
-  (set (make-local-variable 'term-height) (window-text-height))
+  (set (make-local-variable 'term-height) (window-screen-lines))
   (set (make-local-variable 'term-width) (window-max-chars-per-line))
   (set (make-local-variable 'term-last-input-start) (make-marker))
   (set (make-local-variable 'term-last-input-end) (make-marker))
diff --git a/lisp/window.el b/lisp/window.el
index b4f5ac5cc4..c8fc1248ab 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -9425,10 +9425,12 @@ window-adjust-process-window-size
 the given windows."
   (when windows
     (let ((width (window-max-chars-per-line (car windows)))
-          (height (window-body-height (car windows))))
+          (height (with-selected-window (car windows)
+                    (floor (window-screen-lines)))))
       (dolist (window (cdr windows))
         (setf width (funcall reducer width (window-max-chars-per-line window)))
-        (setf height (funcall reducer height (window-body-height window))))
+        (setf height (funcall reducer height (with-selected-window window
+                                               (floor 
(window-screen-lines))))))
       (cons width height))))
 
 (defun window-adjust-process-window-size-smallest (_process windows)
-- 
2.21.0


reply via email to

[Prev in Thread] Current Thread [Next in Thread]