Subject: bug#32848: 26.1; follow-mode cursor move breaks with frame-resize-pixelwise

From: Alan Mackenzie <[email-masked]>
Date: Mon, 15 Oct 2018 17:26:37 +0000

Hello, Eli.

On Mon, Oct 15, 2018 at 18:07:55 +0300, Eli Zaretskii wrote:
> > Date: Mon, 15 Oct 2018 09:23:41 +0000
> > Cc: [email-masked], [email-masked], [email-masked]
> > From: Alan Mackenzie <[email-masked]>

> > > Did you try a buffer whose first line is very tall, taller than the
> > > window?

> > I've tried a few ways of getting such a window, but without luck.  Emacs
> > is very good at making sure a window is no smaller than one line tall.
> > ;-)

> > Is it possible to create such a line in a window, probably with lisp?

> It's possible and even very easy.  Here's one way:

>   emacs -Q
>   C-x 2
>   C-u 12 M-x shrink-window RET
>   C-x C-+ + + + + + ....

> Continue pressing "+" until the cursor becomes taller than the window,
> and you are done.

Thanks, I didn't know about C-x C-+.

> Another way is to insert a tall image and see what happens with that.

> > Or was your question more a prompt to me to handle this unlikely
> > situation gracefully?

> It was a good-faith question, this stuff always needs to be tested in
> such extreme situations.

OK.  For brevity, I'm going to call a window with a line too tall to be
fully displayed a "very small window".

With my follow mode patch that was installed in the emacs-26 branch, the
cursor will not remain in a very small non-last window[*], regardless of
whether it starts there as the font size is increased.  Instead it moves
to the next normal sized window (and this displays the correct text
line).  The cursor can remain in a very small last window.

[*] Actually, when the two last windows are both very small, the cursor
will stay in any window, if moved there with C-x o.

With my follow mode patch, and additionally,
make-cursor-line-fully-visible set to the function
follow-make-cursor-line-fully-visible-p, I observed exactly the same
behaviour.

I think this behaviour is acceptable for very small windows.

-- 
Alan Mackenzie (Nuremberg, Germany).