bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#56457: 29.0.50; set-frame-width and frame-width are not exactly comp


From: Pankaj Jangid
Subject: bug#56457: 29.0.50; set-frame-width and frame-width are not exactly complimentary
Date: Sat, 09 Jul 2022 13:48:34 +0530
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

Po Lu <luangruo@yahoo.com> writes:

>>> What happens if you set `frame-resize-pixelwise' to nil, and create a
>>> new frame?
>>
>> frame-resize-pixelwise is set to default value i.e. nil and with this
>> when I create new a frame using make-frame-command it creates a new
>> frame with frame-width 79. Repeating this any number of times has the
>> same outcome.
>
> Sorry, I meant to set it to a non-nil value.

If I set it to "t" then my toggle function also works correctly. And the
new frames are launched with frame-width 80. Here is my slightly updated
lisp,

--8<---------------cut here---------------start------------->8---
(custom-set-variables
 '(frame-resize-pixelwise t))

(defun my/cycle-frame-width ()
  "Cycle \"frame-width\"."
  (interactive)
  
  (let ((width (frame-width)))
        (if (and (> width 75) (< width 85))
                (set-frame-width nil (* width 2))
          (set-frame-width nil (/ width 2)))
        (message "Frame size: %sx%s" (frame-width) (frame-height))))
(global-set-key (kbd "<f9>") 'my/cycle-frame-width)
--8<---------------cut here---------------end--------------->8---

The only issue now is that, the "(message..." statement prints width as
83. I don't know why. If I evaluate (frame-width), it shows 80.





reply via email to

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