GNU bug report logs - #76275
31.0.50; frame-inhibit-implied-resize broken on recent master

Previous Next

Package: emacs;

Reported by: Sean Whitton <spwhitton <at> spwhitton.name>

Date: Fri, 14 Feb 2025 03:29:01 UTC

Severity: normal

Found in version 31.0.50

Done: Sean Whitton <spwhitton <at> spwhitton.name>

Bug is archived. No further changes may be made.

Full log


Message #35 received at 76275 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Sean Whitton <spwhitton <at> spwhitton.name>
Cc: 76275 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>, shipmints <at> gmail.com
Subject: Re: bug#76275: 31.0.50; frame-inhibit-implied-resize broken on recent
 master
Date: Tue, 18 Feb 2025 11:08:38 +0100
[Message part 1 (text/plain, inline)]
> It does fix the resizing problem.  However, now my entry in
> window-size-change-functions doesn't run at all, and so the font size in
> the new frame is wrong.
>
> I'm not sure whether this is a bug, but it might count as a change that
> should be called out in NEWS?  window-size-change-functions is no longer
> guaranteed to be called when frames are simply created.

The reason why I have to delay applying 'frame-inhibit-implied-resize'
in "normal" use is that people want the number of lines and columns
shown by the window manager when they drag frame borders with the mouse
match exactly the values specified in 'initial-frame-alist'.  OTOH, one
reason for implementing 'frame-inhibit-implied-resize' was to make using
Emacs with tiling WMs simpler.  Hence instead of all the tribulations
with running spw/scale-default from 'window-size-change-functions' we
should be able to find a better solution.

With the patch attached would

(defun spw/sway-completing-read (prompt collection &rest optional-args)
  (let* ((frame-inhibit-implied-resize 'force)
	 (frame (make-frame `((title . "Emacs Sway input")
			      (minibuffer . only)
			      (display . ,(getenv "WAYLAND_DISPLAY"))))))

    (set-face-attribute 'default frame :height 120)

    (unwind-protect
	(with-selected-frame frame
	  (set-window-scroll-bars (minibuffer-window frame) 0 nil 0 nil t)
	  (apply #'completing-read prompt collection optional-args))
      (delete-frame frame))))

do what you want?

> I'm not sure what you mean "while the function with the same name
> returned false" -- there isn't a function called
> frame_inhibit_implied_resize, I think?

Right.  I meant the function frame_inhibit_resize.

martin
[frame-inhibit-implied-resize-force.diff (text/x-patch, attachment)]

This bug report was last modified 64 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.