emacs-devel
[Top][All Lists]
Advanced

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

Re: Infrastructural complexity.


From: Stefan Monnier
Subject: Re: Infrastructural complexity.
Date: Sun, 26 Jul 2009 10:15:42 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.94 (gnu/linux)

>> How 'bout: bind a enlarge-window-abort-before-delete variable to
>> t in adjust-window-trailing-edge, and then check this variable before
>> deleting a window?

> Not really.  Enlarging a window means stealing space from others and
> size_window might already have stolen space from windows before it tries
> to delete one.  With a DELTA > 1 this might leave the frame in an
> inconsistent state.  That is, a window that shall be enlarged vertically
> might have grown by a couple of lines but not the entire DELTA when the
> action must be aborted.

But if we combine it with save-window-configuration, we should be able
to revert to the original state (and if we stop before deleting
a window, there's no need to create a new window identity).

>>> Currently, `adjust-window-trailing-edge' has a bug in that it does not
>>> handle fixed-size windows correctly, see bug#3689.  I think we need an
>>> `enlarge-window' function which does not delete windows but is allowed
>>> to resize any other windows that are not fixed-size.

> Writing such a function is not entirely trivial.  I suppose we'd have to
> run the function without actually changing anything first and, if we
> succeeded in not deleting any windows, apply the actual changes.

I rather think that it requires a completely new algorithm where
window-deletion is not even an option.


        Stefan




reply via email to

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