Subject: bug#11810: 24.1.50; `vc-diff' shrinks pre-existing window

From: martin rudalics <[email-masked]>
Date: Sun, 01 Jul 2012 11:06:06 +0200

> How is it obsolete? As far as I can see, neither of the two possible
 > values of `window-combination-resize' says "don't resize my existing
 > windows until specifically asked".

You would customize `window-combination-resize' only with
`even-window-heights' implicitly nil.

 >> `temp-buffer-resize-mode' adds `resize-temp-buffer-window' to
 >> `temp-buffer-window-show-hook' so it resizes the window even when it's
 >> reused.  Or do I miss something?
 >
 > Actually yes, I haven't tested it properly the last time.
 > It can shrink the window to make it fit the buffer, but it restores the
 > window's size when it's done, which is the important thing.

It explicitly checks whether `temp-buffer-resize-mode' is on when the
buffer shall be removed.

 >> I don't recall the details but we always had a chicken-and-egg problem
 >> here: When you fill a buffer before displaying it you can't make its
 >> line breaks suit the window used for it.  When you display it first, you
 >> can't make the window suit the line breaks of the buffer.  And the
 >> number of line breaks determines the height of the region to display.
 >
 > Do you mean auto-filling, as in, "inserting hard newlines"? I don't
 > think diff-mode does that. It does pop a window immediately, but
 > probably just because it would be weird to see a window pop up only
 > after the diff command finishes (if that happens after some time has
 > passed).

Must have been a different problem indeed, probably in the context of
man or woman, IIRC.

 >> Couldn't
 >> we use the `quit-restore' window parameter to restore the original size
 >> of the window?
 >
 > We probably could, if solving only this particular case is okay. As far
 > as VC package goes, we'd need to do that in `vc-diff-internal' and in
 > all (?) callers of `vc-log-internal-common'.

We could simply remove the `temp-buffer-resize-mode' check in
`quit-window'.  I hardly understand what implications this might have.

martin