[Top][All Lists]

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

Re: frame size&position woes

From: Juanma Barranquero
Subject: Re: frame size&position woes
Date: Mon, 22 Jul 2013 11:40:49 +0200

On Mon, Jul 22, 2013 at 10:22 AM, martin rudalics <address@hidden> wrote:

> Admittedly, it's not easy to specify what the height should be in this
> case.

Which highlights that the usefulness of `frame-height' is relatively limited.

> There are various ways to deal with this.  Here on Windows most
> GUN/Linux-derived applications

(I suppose GUN/Linux is a NRA-approved GNU/Linux distribution? ;-)

> either truncate menu bar entries if they
> don't fit or don't allow to make a window smaller than the actual width
> of its menu bar.

Honestly, at this point I'd rather have Emacs do one of these things,
that the current "incredible shrinking frame" phenomenon with wrapping
menus that I reported in another message.

> IIUC on Windows we would need a function like `w32-frame-rect' I posted
> earlier and, in addition, need access to a NONCLIENTMETRICS structure to
> determine whether the menubar wrapped or its font is just too high.
> This means that we would have to say whether the height of the window
> rectangle minus those of client rectangle, caption and two borders
> equals the height of a menubar (or some multiple).

I love how two simple requests: "Can I have the dimensions of that
frame, please?" and "Can I create another frame with that very same
metrics?" get so complex and GUI dependent answers.

> The idea would be to start with an invisible frame and making it visible
> once we're done.  But I'm 100% sure that many platforms won't get us the
> metrics of an invisible frame.

Yeah, I suspect as much.

> I hardly ever know whether and when `modify-frame-parameters' has a
> visible effect.  This function is a time bomb.

I'd agree that modify-frame-parameters (and/or the frame parameters
per se) are a bit underspecified, yes.


reply via email to

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