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

From: Eli Zaretskii <[email-masked]>
Date: Mon, 16 Dec 2024 19:32:22 +0200

> 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?