emacs-devel
[Top][All Lists]
Advanced

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

Re: Infrastructural complexity.


From: martin rudalics
Subject: Re: Infrastructural complexity.
Date: Fri, 24 Jul 2009 14:10:41 +0200
User-agent: Thunderbird 2.0.0.21 (Windows/20090302)

> As an example consider ECBs windows. There is currently a command in
> ECB to hide/show them today. That could be implemented by
> hiding/showing a window group.

ECB does this by saving a window configuration, deleting the respective
windows, and resurrecting the saved configuration when the user wants
the windows to show up again.  Resurrection occurs procedurally, that is
by recursively splitting the root window of a frame.

> That window group could be there always for applications to use. It
> should not show up by default, but when an application asked for it.
> Similar window groups could be there along the other frame borders.
>
> To implement the visual structure that Thomas proposed there have to
> be several of them, of course, but it is possible to do it this way.

There's no problem doing that the way sketched above.  I'm skeptical
about hiding windows by giving them zero height or width, though.

> But I am not sure about the merit of my own proposal here. There was a
> suggestion long ago to be able to split the root window that I think
> maybe could fullfill nearly the same requirements.

My code can split any root window (or any group root window) and clone
any saved window group into any of the two emanating halves.  And it
does not need to split windows to accomplish that.

> The idea of hidden
> windows just seem easy to me. Why don't you think we should hide
> windows? Is there something that is difficult with it code wise or
> conceptually?

The window handling code would almost certainly tolerate zero height or
width windows (although we might need some precautions to avoid that
thousands of such windows accumulate on a frame).  The UI would have to
give some help on how such windows can be resurrected.  Also, we would
have to decide whether, for example, a window of height zero can be
split vertically .

The current display-code would almost certainly choke when it's given a
window with zero size. So what you have to do is find someone who
certifies that zero size windows can be handled by the display-engine.

But as I said I can always remove a window group from its frame, save
it, and later put it into another internal or life window.  The
additional frame resizing code when a window group that spans an entire
side of that frame is removed would have to be written but that seems
fairly straightforward.

martin




reply via email to

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