all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Chong Yidong <cyd@stupidchicken.com>
To: rms@gnu.org
Cc: emacs-devel@gnu.org, "Johan Bockgård" <bojohan+news@dd.chalmers.se>
Subject: Re: delete-overlay causes recentering
Date: Mon, 23 Apr 2007 21:35:53 -0400	[thread overview]
Message-ID: <87zm4yr1ty.fsf@stupidchicken.com> (raw)
In-Reply-To: <E1Hg7dM-0002AN-KF@fencepost.gnu.org> (Richard Stallman's message of "Mon\, 23 Apr 2007 19\:07\:48 -0400")

Richard Stallman <rms@gnu.org> writes:

>     When a window starts is in a continued line, it is recentered whenever
>     the window is unselected--by activating the minibuffer, switching to
>     another window, or switching to another frame.
>
> That is the spurious scrolling bug I have mentioned.  Thank you
> for connecting it with specific code.  Now it should be possible
> to track it down.
>
> Yidong wrote:
>
>     I don't know an easy way to fix this.
>
> Can you describe the series of events that cause the
> spurious recentering?

KFS described the problem in the original change that led to this:

  When the filling command has reformatted the buffer text, the
  redisplay code still starts window display at the old window start
  -- which still is in the middle of a line, but not at the same
  relative position in the line as before ... so it gets confused.

  This is just one way in which a buffer change can mess things up
  when window start is not at the start of a line, so I think it is
  generally a bit difficult to find a method which will always select
  the intuitively best window start after such a change.

As a result, there will be times when the redisplay engine must
recenter, simply to avoid screen corruption.

On the other hand, I just realized that the "recentering due to
minibuffer-activation" problem is a simple oversight on my part, when
I was fixing the recentering to make it less aggressive.  I've checked
in a small fix.

  reply	other threads:[~2007-04-24  1:35 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-14 10:18 [alinsoar@voila.fr: a bug in global-hl-line-mode] A Soare
2007-03-14 12:52 ` Kim F. Storm
2007-04-13 13:22   ` delete-overlay causes recentering (was: [alinsoar@voila.fr: a bug in global-hl-line-mode]) Johan Bockgård
2007-04-14  9:13     ` delete-overlay causes recentering martin rudalics
2007-04-14 11:45       ` Johan Bockgård
2007-04-15  1:44     ` Chong Yidong
2007-04-15  1:50       ` Chong Yidong
2007-04-15 19:06         ` Chong Yidong
2007-04-15 20:13           ` Kim F. Storm
2007-04-23 13:57           ` Johan Bockgård
2007-04-23 14:11             ` Chong Yidong
2007-04-23 14:17               ` Chong Yidong
2007-04-23 15:42                 ` Stefan Monnier
2007-04-23 23:07             ` Richard Stallman
2007-04-24  1:35               ` Chong Yidong [this message]
2007-04-25 14:51                 ` Richard Stallman
2007-04-27 19:03                   ` Chong Yidong
2007-04-28  4:07                     ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87zm4yr1ty.fsf@stupidchicken.com \
    --to=cyd@stupidchicken.com \
    --cc=bojohan+news@dd.chalmers.se \
    --cc=emacs-devel@gnu.org \
    --cc=rms@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.