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

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

Re: View-quit in *Help* restores wrong window when display-buffer-reuse-


From: martin rudalics
Subject: Re: View-quit in *Help* restores wrong window when display-buffer-reuse-frames is t
Date: Fri, 19 Oct 2007 00:01:22 +0200
User-agent: Mozilla Thunderbird 1.0 (Windows/20041206)

> FWIW and IIUC, I am not in any of those 4 user groups, with any of the
> expectations you assign to those groups - and I believe that I filed one of
> the bugs you have been working on.
>
> I use non-nil `pop-up-frames', and both `pop-up-windows' and
> `split-height-threshold' have the default values (t and 500).

OK.  The second group gets `pop-up-frames' non-nil, the values of
`pop-up-windows' and `split-height-threshold' are of no concern.

> I have a
> dedicated *Help* frame.

What is the semantics of a "dedicated frame"?

> Because of `pop-up-frames', `display-buffer' uses another frame, but I do
> sometimes switch to a different buffer in the same window. And I do
> sometimes split a window, so my frames are not always `one-window-p'.

If you "dedicate" a frame to the Help buffer why do you want to switch
to a different buffer in that frame?  Why do you want to split that
frame's window?

> If a new window or frame was popped up to display a view-mode buffer, then I
> expect quitting to delete the window and, if one-window-p, delete the frame
> too.

I already explained that by default Help buffers are not dedicated thus
`quit-window' won't necessarily delete the associated frame.  If people
want that we can change the behavior of view-mode but that would affect
all clients of view-mode.  Alternatively we could make help-windows
dedicated (if that helps).

Currently `view-remove-frame-by-deleting' has to be set to get the
effect you want.  We could make that non-nil by default.

> FWIW, my own code takes care of the latter part, so it is enough for me if
> the view-mode code simply does `quit-window'.
>
> If a new window or frame was not popped up to display the view-mode buffer,
> that is, if I manually switched to it in an existing window, then I want
> quitting that buffer/mode to restore the previous buffer that was in that
> window.
> Summary:
>     if pop-up, then quit => delete the window/frame
> if not pop-up, then quit => restore previous buffer for window

Suppose you (1) pop up a view-mode window, (2) display a non view-mode
buffer in that window, (3) display a view-mode buffer in that window,
and (4) quit view-mode.  Whatever `view-mode-exit' does now, you'll
complain.

>>- Exiting view-mode should ideally (1) kill a window that
>>  has been popped up for view-mode purposes and (2) show
>>  the earlier contents of the window when it has been
>>  usurpated by view-mode.
>
>
> That would be good. In my case, #1 is what I expect for the *Help* buffer. I
> have no problem with #2, assuming that it applies to buffers that were not
> popped up in another window.

I wrote "ideally" and I had your usage pattern in mind.  But keep in
mind that killing a window doesn't necessarily imply killing its frame.

> I haven't followed the current thread closely. If you have a Lisp-only patch
> I can try, I will do that.

It's still the patch I sent you earlier.





reply via email to

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