unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: "'martin rudalics'" <rudalics@gmx.at>
Cc: esabof@gmail.com, 14233@debbugs.gnu.org
Subject: bug#14233: 24.3; Don't constrain frame size to character multiples
Date: Mon, 29 Apr 2013 13:41:31 -0700	[thread overview]
Message-ID: <022239E9EC0E41E8A1AF6F4C14FF5A39@us.oracle.com> (raw)
In-Reply-To: <517EA462.50000@gmx.at>

>  > Maybe the logic behind that coupling could be made more 
>  > explicit in the doc?  Or maybe that "enhancement" should
>  > be reverted?
> 
> Did you find out when that enhancement was made?

I think we're talking about this behavior:

 Also, if FRAME is non-nil, alter the user's Customization
 settings as though the font-related attributes of the
 `default' face had been \"set in this session\", so that
 the font is applied to future frames.

Emacs 24.1 added this, AFAICT.  It added optional 3rd arg FRAMES for
`set-frame-font'.

But see my earlier msg where I mention that I do not in fact see the
future-changing behavior that is advertised for new frames.  Do you see it?

(Wrt the optional 2nd arg KEEP-SIZE, it was Emacs 22 that added that.)

>  > Why do you suppose that there is an optional parameter 
>  > KEEP-SIZE for `set-frame-font'?
> 
> ... because on 2003-04-09 Ehud Karni added it ...
> 
>  > And why do you suppose it is optional (i.e., the default
>  > behavior does NOT keep the same size)?
> 
> ... because that's how it behaved on the first day.
> 
>  > And now you propose to, in effect, impose KEEP-SIZE 
>  > behavior everywhere, and not even provide a no-keep-size
>  > optional behavior (i.e., traditional Emacs behavior)?
> 
> I did so and still think it's the correct answer in an 
> environment that has to cater for fullscreen and maximized
> frames as well as for tiling window managers.  I don't think
> that zooming the font size in any of these modes should
> change the frame size.

Use `set-frame-font' with non-nil KEEP-SIZE if you do not want the frame to zoom
along with its text and you want to change how much text is visible in the same
frame.  That's what KEEP-SIZE is for.

>  >> Changing the appearance of scrollbars, fringes and sizes or the
>  >> appearance of future frames should be done on top of that,
>  >
>  > You are mixing a lot of things in there.
> 
> Not me.  When you change the font size these are the things Emacs
> changes along with it.

The scrollbars and the fringe are not changed when the frame font size is
changed.  Not on MS Windows, at least.  Prior to Emacs 22, the scrollbars (but
not fringe) were zoomed along with the text.

The big thing that doesn't belong mixed in with the others is changing the
appearance of future frames.  Changing a frame parameter in one frame should not
affect future frames.

>  > Why should `modify-frame-parameters', applied to a single 
>  > frame, affect future frames at all?
> 
> Maybe because when it creates a new frame Emacs has it inherit
> certain things from the selected one?

Certain things are inherited from the selected frame.
But you want to change which things are inherited.

And now you bring in "the selected one".  In the proposal, IIUC, ALL future
frames would have their font size changed, not just those frames created when
the altered frame happens to be selected.

>  > That mistake was already introduced into `set-frame-font' 
>  > (in Emacs 22, I believe).  Such future-changing has no
>  > business being coupled into the behavior of the basic
>  > function for changing a frame's parameters.
> 
> As I said above, that function was probably supposed to set 
> the default value.  In any case, I'm confident/afraid that
> people had good reasons for applying such a change.

I consider it a mistake.  But I'm not trying to fix/change `set-frame-font'
here.  And as I said, I do NOT even SEE the (misguided) future-changing behavior
that its doc claims for it.

My concern is to keep `modify-frame-parameters' doing the right thing wrt
parameter `font'.

If someone wants to get the affect you prefer then s?he can use `set-frame-font'
with non-nil KEEP-SIZE (but I think that function might need to be "fixed" so
that actually works).

There is no good reason to change `modify-frame-parameters' so that such odd
behavior (not even the default for `set-frame-font') becomes the new norm.

> ... my knowledge of frames is slightly above zero ....

I have more experience with my particular use of frames.  You are far more
knowledgable about the frame-affecting code, I'm sure.

>  > One thing that seems unfortunate to me is the coupling of 
>  > (a) changing a parameter value for a single frame with
>  > (b) changing the default value of that parameter for
>  > future frames.  IIUC, that is what `set-frame-font' does
>  > now, and it seems wrong to me.  Are there other
>  > parameter-setting functions that also act like that?
> 
> I have no idea.

I don't think there are.

> And I never managed to understand the interactions of
> initial, default, and actual parameters of frames.

;-)






  reply	other threads:[~2013-04-29 20:41 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-19 23:58 bug#14233: 24.3; Don't constrain frame size to character multiples E Sabof
2013-04-20  0:17 ` Glenn Morris
2013-04-20  6:45   ` Eli Zaretskii
2013-04-20  8:53     ` martin rudalics
2013-04-20  9:11       ` Jan Djärv
2013-04-20 11:00         ` martin rudalics
2013-04-20 12:56           ` Jan Djärv
2013-04-20 13:13             ` Eli Zaretskii
2013-04-20 19:26               ` Jan Djärv
2013-04-20 19:54                 ` Eli Zaretskii
2013-04-20 22:02                   ` Drew Adams
2013-04-21  3:40                   ` Stefan Monnier
2013-04-21  7:04                     ` Jan Djärv
2013-04-21  9:28                       ` martin rudalics
2013-04-21 17:05                         ` Jan Djärv
2013-04-22  9:34                           ` martin rudalics
2013-04-22 14:17                       ` Stefan Monnier
2013-04-21  9:27                     ` martin rudalics
2013-04-21  9:27                   ` martin rudalics
2013-04-20 20:47                 ` E Sabof
2013-04-21  9:26                 ` martin rudalics
2013-04-21 17:21                   ` Jan Djärv
2013-04-22  9:34                     ` martin rudalics
2013-04-22 13:11                       ` Jan Djärv
2013-04-22 15:36                         ` martin rudalics
2013-04-22 16:11                           ` Jan Djärv
2013-04-22 16:38                             ` martin rudalics
2013-04-22 18:21                               ` Eli Zaretskii
2013-04-23  6:52                                 ` martin rudalics
2013-04-23 16:28                                   ` Eli Zaretskii
2013-04-24  6:39                                     ` martin rudalics
2013-04-24 17:13                                       ` Eli Zaretskii
2013-04-23 11:58                               ` Jan Djärv
2013-04-23 12:33                                 ` martin rudalics
2013-04-23 16:48                                   ` Eli Zaretskii
2013-04-24  6:39                                     ` martin rudalics
2013-04-24 16:54                                       ` Jan Djärv
2013-04-25  7:29                                         ` martin rudalics
2013-04-25  9:55                                           ` Jan Djärv
2013-04-25 11:58                                             ` martin rudalics
2013-04-25 15:47                                         ` Richard Stallman
2013-04-24 17:15                                       ` Eli Zaretskii
2013-04-24 17:50                                         ` Jan Djärv
2013-04-25  7:29                                         ` martin rudalics
2013-04-20 13:38             ` martin rudalics
2013-04-20 19:33               ` Jan Djärv
2013-04-20 16:22             ` Drew Adams
2013-04-20 17:12               ` Eli Zaretskii
2013-04-20 21:50                 ` Drew Adams
2013-04-21  9:27                   ` martin rudalics
2013-04-21 16:17                     ` Drew Adams
2013-04-20  9:25       ` Eli Zaretskii
2013-04-20 11:01         ` martin rudalics
2013-04-20 11:32           ` Eli Zaretskii
2013-04-20 13:38             ` martin rudalics
2013-04-20 16:25               ` Eli Zaretskii
2013-04-20 17:35                 ` martin rudalics
2013-04-20 17:48                   ` E Sabof
2013-04-20 18:26                   ` Eli Zaretskii
2013-04-21  9:26                     ` martin rudalics
2013-04-21 15:03                       ` Eli Zaretskii
2013-04-22  9:34                         ` martin rudalics
2013-04-21 17:30                       ` Jan Djärv
2013-04-22  9:34                         ` martin rudalics
2013-04-22 13:12                           ` Jan Djärv
2013-04-22 15:36                             ` martin rudalics
2013-04-22 18:36                               ` Eli Zaretskii
2013-04-23  6:54                                 ` martin rudalics
2013-04-23 16:29                                   ` Eli Zaretskii
2013-04-23  6:50                             ` martin rudalics
2013-04-23 16:23                               ` Eli Zaretskii
2013-04-24  6:38                                 ` martin rudalics
2013-04-24 17:09                                   ` Eli Zaretskii
2013-04-24 18:50                                     ` Stefan Monnier
2013-04-24 20:09                                       ` Jan Djärv
2013-04-25  7:31                                         ` martin rudalics
2013-04-25 10:02                                           ` Jan Djärv
2013-04-25 11:58                                             ` martin rudalics
2013-04-25 14:11                                               ` Jan Djärv
2013-04-25  7:30                                       ` martin rudalics
2013-04-25  7:29                                     ` martin rudalics
2013-04-25 16:24                                       ` Eli Zaretskii
2013-04-26  7:42                                         ` martin rudalics
2013-04-26 13:21                                           ` Stefan Monnier
2013-04-26 14:39                                           ` Drew Adams
2013-04-27  6:59                                             ` martin rudalics
2013-04-27 13:53                                               ` Drew Adams
2013-04-28 12:17                                                 ` martin rudalics
2013-04-28 15:33                                                   ` Drew Adams
2013-04-28 16:29                                                     ` Drew Adams
2013-04-29  7:33                                                     ` martin rudalics
2013-04-29 14:10                                                       ` Drew Adams
2013-04-29 16:48                                                         ` martin rudalics
2013-04-29 20:41                                                           ` Drew Adams [this message]
2013-04-30  7:34                                                             ` martin rudalics
2013-04-30 15:47                                                               ` Drew Adams
2013-04-30 17:08                                                                 ` martin rudalics
2013-04-30 19:45                                                                   ` Drew Adams
2013-05-01  9:15                                                                     ` martin rudalics
2013-05-01 13:47                                                                       ` Drew Adams
2013-05-02  9:22                                                                         ` martin rudalics
2013-05-02 13:28                                                                           ` Drew Adams
2014-12-25 19:30 ` martin rudalics

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=022239E9EC0E41E8A1AF6F4C14FF5A39@us.oracle.com \
    --to=drew.adams@oracle.com \
    --cc=14233@debbugs.gnu.org \
    --cc=esabof@gmail.com \
    --cc=rudalics@gmx.at \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).