[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#70894: [PATCH] * lisp/window.el (fit-window-to-buffer): Fix width ca
From: |
Eli Zaretskii |
Subject: |
bug#70894: [PATCH] * lisp/window.el (fit-window-to-buffer): Fix width calculation |
Date: |
Sat, 18 May 2024 12:39:06 +0300 |
> From: Morgan Smith <Morgan.J.Smith@outlook.com>
> Date: Sun, 12 May 2024 09:25:31 -0400
>
> I was playing around with `fit-window-to-buffer' after setting
> `fit-window-to-buffer-horizontally' to `t'. I noticed that it kept
> setting the window too narrow. After a quick investigation, I found
> some suspicious looking calculation that mixed pixel and column units.
>
> Interactively, it looks like this fixes the issue.
Thanks.
Martin, any comments?
> >From f906b1a219ae7c9ec1374edf6e02b46b845ab776 Mon Sep 17 00:00:00 2001
> From: Morgan Smith <Morgan.J.Smith@outlook.com>
> Date: Sun, 12 May 2024 09:19:30 -0400
> Subject: [PATCH] * lisp/window.el (fit-window-to-buffer): Fix width
> calculation
>
> When pixelwise is nil, we still calculate width in pixels and
> then convert it to columns. However, part of the calculation
> was using columns where it should have used pixels.
> ---
> lisp/window.el | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lisp/window.el b/lisp/window.el
> index 639090752be..f03996fb682 100644
> --- a/lisp/window.el
> +++ b/lisp/window.el
> @@ -9906,8 +9906,8 @@ fit-window-to-buffer
> ;; the bottom is wider than the window.
> (* (window-body-height window pixelwise)
> (if pixelwise 1 char-height))))
> - (- total-width
> - (window-body-width window pixelwise)))))
> + (- (* total-width (if pixelwise 1 char-width))
> + (window-body-width window t)))))
> (unless pixelwise
> (setq width (/ (+ width char-width -1) char-width)))
> (setq width (max min-width (min max-width width)))
> --
> 2.41.0
>