emacs-devel
[Top][All Lists]
Advanced

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

Re: moving window handling into lisp


From: Stefan Monnier
Subject: Re: moving window handling into lisp
Date: Tue, 11 Aug 2009 15:16:09 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

>> Another approach is to have a transactional interface, like
>> start-window-configuration and end-window-configuration:
>> - during the transaction, windows can be resized to too-large/too-small
>> sizes (but maybe window-fixed-size should stil be obeyed?).

> This would still rely on some predictable behavior of `enlarge-window',
> `adjust-window-trailing-edge' and `size_window'.

There'd be new low-level functions to resize windows which would work in
simple and predictable ways, but with the end-state being potentially
invalid.

> I suppose we should merge these functions into one Elisp function that
> moves the trailing edge of a window and have one C function checking
> whether the resulting window tree is well-formed and, if that is the
> case, apply the change.

As a "high-level" function, I'd imagine a function that looks like
(window-resize W N) and returns the amount that it was able to resize
(between 0 and N).
It would work by calling itself recursively on siblings and/or children.
It can't fail and cannot result in an invalid window-tree.


        Stefan




reply via email to

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