[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: moving window handling into lisp
From: |
martin rudalics |
Subject: |
Re: moving window handling into lisp |
Date: |
Fri, 21 Aug 2009 14:40:03 +0200 |
User-agent: |
Thunderbird 2.0.0.21 (Windows/20090302) |
>>> The algorithm computes level by level in the second pass (ie on its
>>> way down) how the windows should be sized. So you have the sizes for
>>> all windows on that level at once.
>> I still don't understand what a "level" is.
>
> All children to a window are on the same level.
So you want a routine to set the sizes of all children of a window?
What would you want to pass to that routine? A list?
> Do I understand you right, do you say: These should set the size
> without any checking.
The new size of one window. Applying the new sizes of all windows is
done transactionally, all at once (or none at all if there's a failure).
> You can make a lisp copy of the configuration. This copy should
> contain just the info needed to compute the new sizes. If you want the
> sizes after deletion then just do not include the window you want to
> delete in the copy.
And who does delete the window _and_ resize the remaining ones?
> I guessed there must be some pointer (in a general sense) for each
> frame to the root window. I do not know the actual implementation, but
> I just glanced at it. Unfortunately it takes some time for me to read
> C so I guess a little. I can see there is a Lisp_Object called
> root_window in struct frame. This is the pointer I am talking about.
>
> My question (and suggestion) to you is this: Would it be possible to
> temporarily replace the frames root_window with a new window when the
> frame size gets so small that the window configuration does not fit?
> Whether this is easy (or perhaps even possible) is of course dependent
> on the details in this implementation.
>
> It depends on for example on how drawing of windows are done. Is
> drawing of a frame something that starts from the frame and then goes
> down to look at the windows? Or does the windows live a life on their
> on in this regard? I have assumed the former when I suggested to just
> swap the roor_window pointer. You know more about the implementation
> details and can probably give a better answer.
It would get us into hell's kitchen to just swap some pointers. The
more so because you want redisplay to happen in between. What do you
think window-configurations have been invented for?
> You seem to suggest that it would be hard to understand for the user.
> In that case, why?
Because at the time the window-manager shrinks my Emacs frame I usually
want to work with some other application.
>> You do undelete all the time. It's completely transparent.
>
> How can it be transparent if windows disappears and reappears? I must
> be misunderstanding you somehow...
There might be no redisplay in between.
>>> - size-0 windows in a case like this would be the same.
>> Many applications do that.
>
> Can you explain how you mean?
In many applications (Thunderbird is one of them) I can make subwindows
disappear completely by dragging one of their borders and make them
reappear later by dragging on the border where they disappeared.
martin
- Re: moving window handling into lisp, (continued)
- Re: moving window handling into lisp, grischka, 2009/08/20
- Re: moving window handling into lisp, martin rudalics, 2009/08/21
- Re: moving window handling into lisp, Stefan Monnier, 2009/08/21
- Re: moving window handling into lisp, Stephen J. Turnbull, 2009/08/22
- Re: moving window handling into lisp, Stefan Monnier, 2009/08/22
- Re: moving window handling into lisp, grischka, 2009/08/24
- Re: moving window handling into lisp, Lennart Borgman, 2009/08/19
Re: moving window handling into lisp, Lennart Borgman, 2009/08/20
- Re: moving window handling into lisp, martin rudalics, 2009/08/20
- Re: moving window handling into lisp, Lennart Borgman, 2009/08/20
- Re: moving window handling into lisp,
martin rudalics <=
- Re: moving window handling into lisp, Lennart Borgman, 2009/08/21
- Re: moving window handling into lisp, martin rudalics, 2009/08/22
- Re: moving window handling into lisp, Lennart Borgman, 2009/08/22
- Re: moving window handling into lisp, martin rudalics, 2009/08/22
Re: moving window handling into lisp, Stefan Monnier, 2009/08/21
Re: moving window handling into lisp, martin rudalics, 2009/08/22
Re: moving window handling into lisp, Richard Stallman, 2009/08/20