Subject: bug#64139: 28.2; Scrolling problems in miniwindow

From: Eli Zaretskii <[email-masked]>
Date: Sun, 18 Jun 2023 10:09:05 +0300

> From: Al Petrofsky <[email-masked]>
> Date: Sat, 17 Jun 2023 20:26:19 -0400
> 
> I'm seeing some weird scrolling bugs in the miniwindow when the
> minibuffer contains more lines than the window.  I think these
> problems exist on ttys and graphical terminals of all sizes, but for
> ease of reproducibility use an 80x24 tty.
> 
>    emacs-28.2 -Q -nw
>    M-: C-@ C-x ( C-x C-k TAB C-q C-j C-u 9 9 C-x e C-x C-x C-v
> 
> The C-v, instead of scrolling a few lines, scrolls all the way down to
> line 97.

I tried to use this recipe, but it produces weird results, and I don't
see what you describe.  Would you like to show an easier to understand
recipe, or describe what should be in the min-window as result of the
recipe?  And what exactly are your expectations from C-v/M-v in this
case?

I tried this:

  M-x C-u 99 C-q C-j M-<

after that, C-v scrolls the mini-window as expected, so that I get to
the end in 13 C-v keypresses.  Which looks reasonable to me.

> Also, if you now repeatedly M-v, the buffer will just scroll up and
> down three lines.  When I use a large X frame, repeated M-v will
> scroll up to the top of the buffer, but then glitch and cycle around
> back to the bottom.

M-v in the minibuffer is bound to switch-to-completions, so I'm unsure
what you expected here.

Adding Juri who worked on the scrolling commands in the minibuffer.