Subject: bug#74750: clone-frame and make-frame pixelwise issues

From: Ship Mints <[email-masked]>
Date: Mon, 16 Dec 2024 12:51:14 -0500

Updated patch with docstring amendments.

The tty test you're asking about was already in place, I merely added the
missing frame argument that ensures the test is against the source frame
rather than the ambient selected-frame. As to its utility, I can go only by
the docstring sentence that reads "If the terminal is a text-only terminal
then also select the new frame." Seems to have originated with this
commit 2c662e6d66165db8ead2f4d19a61af521807b8ba in 2021 when clone-frame
was introduced.

On Mon, Dec 16, 2024 at 12:32 PM Eli Zaretskii <[email-masked]> wrote:

> > From: Ship Mints <[email-masked]>
> > Date: Mon, 16 Dec 2024 11:39:02 -0500
> > Cc: Eli Zaretskii <[email-masked]>, [email-masked]
> >
> > Patch attached.
>
> Thanks.
>
> >  (defun clone-frame (&optional frame no-windows)
> >    "Make a new frame with the same parameters and windows as FRAME.
> >  With a prefix arg NO-WINDOWS, don't clone the window configuration.
> > +When the user option `frame-resize-pixelwise' is non-nil, and FRAME is
>
> Please avoid using "when" as a conditional; use "if" instead.  "When"
> can be interpreted as time-related condition, which is not what you
> want.
>
> > +not text-only, clone the originating frame's pixel size.  Otherwise, use
> > +the number of FRAME's columns and lines for the clone.
>
> This uses double negation, which makes the documentation harder to
> understand.  Suggest to rephrase:
>
>   By default, clone the pixel-size of the original frame, but if
>   `frame-resize-pixelwise' is nil or FRAME is a text-only frame, use
>   the FRAME's number of lines and columns for the clone.
>
> > -    (unless (display-graphic-p)
> > +    (unless (display-graphic-p frame)
> >        (select-frame new-frame))
>
> Why do you need this condition?
>