bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#12419: Mouse click changes layout


From: martin rudalics
Subject: bug#12419: Mouse click changes layout
Date: Fri, 14 Sep 2012 15:38:12 +0200

> Note that evaluating that expression raises the mode line of both the
> lower and the upper windows.  That didn't happen in Emacs 23.3, where
> it would only affect the mode line (and the lower part) of the _lower_
> window that shows xdisp.c.

This behavior is due to my redesign of the window resize code for Emacs
24.1.  A couple of days ago Juanma told me that he's annoyed by it too.

Emacs 23.3 had three different routines for window resizing - one for
`enlarge-window', another one for `adjust-window-trailing-edge' and a
third one for resizing the minibuffer window.  Emacs 24.1 has one with
an extra argument that triggers either symmetric or asymmetric resizing.
For example, when resizing a frame, windows are resized symmetrically.
That is, all windows shrink or grow proportionally to their normal size.
This also means that, modulo some rounding errors, shrinking a frame and
enlarging it by the same amount will bring back the initial layout.

When dragging a divider, windows are resized asymmetrically, that is we
enlarge only the window we drag away from and shrink the windows on the
other side.  Asymmetric resizing is not reversible, that is, dragging
the divider back by the same amount will not necessarily reproduce the
inital configuration.  This property makes asymmetric resizing
unsuitable for resizing the minibuffer window where we eventually want
to get back the initial configuration.

Emacs 23.3 used a separate set of routines when resizing the minibuffer
window automatically.  I can try to either resurrect that code or move
it to Elisp.  Neither of these is trivial because the parts have to be
integrated into the current resizing framework so this will surely take
some time.

martin





reply via email to

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