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

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

bug#70038: 29.3.50; Shift up/down in buffer with images on M-x other-win


From: martin rudalics
Subject: bug#70038: 29.3.50; Shift up/down in buffer with images on M-x other-window with some fonts
Date: Wed, 17 Apr 2024 10:02:12 +0200
User-agent: Mozilla Thunderbird

> I hope this is now more clear.

Thanks.  So when we enter the part headed by

  if ((w->optional_new_start || window_frozen_p (w))

then the single aim is apparently to make sure that the cursor line
remains fully visible.

When we enter that part because window_frozen_p (w) is set, we ignore
the scroll margins because we assume that preserving the window start
position is more important in this situation.

When we enter that part because w->optional_new_start was set, we assume
that the caller ('recenter', 'delete-other-windows-internal') has done
its part to obey the scroll margins but still might have failed to keep
the cursor visible.

Is that interpretation correct?  If so, it might make sense to put some
explanation into a comment for that part because, at least for me, it's
a priori not clear that the same treatment is wanted for keeping the
previous start position of a window and for one that has been explicitly
changed.  I've spent almost an hour to arrive at the conclusion above.
Things like this comment in 'delete-other-windows-internal'

          /* We need to do this, so that the window-scroll-functions
             get called.  */
          w->optional_new_start = true;

were distracting even further.

martin





reply via email to

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