From: martin rudalics <rudalics@gmx.at>
To: Stefan Monnier <monnier@IRO.UMontreal.CA>
Cc: Eli Zaretskii <eliz@gnu.org>, dancol@dancol.org, emacs-devel@gnu.org
Subject: Re: Can we make set_point_both less expensive?
Date: Fri, 20 Mar 2015 15:48:21 +0100 [thread overview]
Message-ID: <550C3335.4070405@gmx.at> (raw)
In-Reply-To: <jwvfv8zzrxn.fsf-monnier+emacs@gnu.org>
> For me, a bad interaction is one where p-r-f followed by redisplay
> followed by p-r-f followed by redisplay doesn't give the right answer.
OK.
> But with something like `cursor-intangible', there will surely be cases
> where that can happen. E.g. imagine you scroll to a part of the buffer
> that's got a cursor-intangible element: redisplay will move point to
> a visible (and intangible) part of the buffer, then run p-r-f which
> moves point outside of the window, after which redisplay has two
> choices: either it decides to scroll to where point is (which would be
> wrong, since we've just scrolled so we should move point rather than
> scroll), or it moves point back into the intangible element.
I suppose we agree that when the entire window text is intangible, no
"classic" solution to this problem exists. So a solution will exist iff
the intangible area leaves some tangible text above or below. Handling
the intangible property makes IMO sense only after redisplay has
determined the start/point/end positions of the window. Then the second
incarnation of p-r-f will have to move the window's point to the start
or end of the intangible area, whichever is nearer to the window point
established by redisplay. Or do I miss something?
> Implement a new `cursor-intangible' property, by having p-r-f move point
> away from text with that property.
Strictly spoken I see no reason why the display engine should not handle
that property by itself. Someone would have to handle the scroll
margins too when determining on which side of the area to move point.
And someone would have to remember the old window start position to
ensure that scrolling actually makes some progress. So in the worst
case we would probably have to come up with a "non-classic" solution
anyway where point ends up outside the window.
martin
next prev parent reply other threads:[~2015-03-20 14:48 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-15 19:53 Can we make set_point_both less expensive? Daniel Colascione
2015-03-16 3:02 ` Stefan Monnier
2015-03-16 3:32 ` Daniel Colascione
2015-03-16 12:49 ` Stefan Monnier
2015-03-16 16:24 ` Eli Zaretskii
2015-03-16 17:42 ` Stefan Monnier
2015-03-16 18:03 ` Artur Malabarba
2015-03-16 3:48 ` Eli Zaretskii
2015-03-16 12:47 ` Stefan Monnier
2015-03-16 16:23 ` Eli Zaretskii
2015-03-16 17:36 ` Stefan Monnier
2015-03-16 18:05 ` Eli Zaretskii
2015-03-16 18:18 ` Daniel Colascione
2015-03-16 18:27 ` Eli Zaretskii
2015-03-16 18:31 ` Daniel Colascione
2015-03-16 19:42 ` Eli Zaretskii
2015-03-16 20:43 ` Daniel Colascione
2015-03-16 20:48 ` Lennart Borgman
2015-03-16 20:53 ` Daniel Colascione
2015-03-16 22:00 ` Stefan Monnier
2015-03-17 7:08 ` Eli Zaretskii
[not found] ` <<5507408D.1040104@dancol.org>
[not found] ` <<83h9tkyucg.fsf@gnu.org>
2015-03-17 15:11 ` Drew Adams
2015-03-16 18:57 ` Stefan Monnier
2015-03-17 10:25 ` martin rudalics
2015-03-17 15:38 ` Stefan Monnier
2015-03-17 19:27 ` martin rudalics
2015-03-17 21:37 ` Stefan Monnier
2015-03-18 7:36 ` martin rudalics
2015-03-18 12:55 ` Stefan Monnier
2015-03-18 19:05 ` martin rudalics
2015-03-18 19:24 ` Stefan Monnier
2015-03-19 7:51 ` martin rudalics
2015-03-19 13:41 ` Stefan Monnier
2015-03-20 8:08 ` martin rudalics
2015-03-20 14:14 ` Stefan Monnier
2015-03-20 14:20 ` Lennart Borgman
2015-03-20 14:32 ` Eli Zaretskii
2015-03-20 14:48 ` martin rudalics [this message]
2015-03-20 15:08 ` Eli Zaretskii
2015-03-20 17:57 ` Stefan Monnier
2015-03-20 20:52 ` Eli Zaretskii
2015-03-20 21:50 ` Stefan Monnier
2015-03-21 7:32 ` Eli Zaretskii
2015-03-21 9:58 ` martin rudalics
2015-03-21 10:43 ` Eli Zaretskii
2015-03-21 12:30 ` martin rudalics
2015-03-21 12:45 ` Eli Zaretskii
2015-03-20 19:53 ` martin rudalics
2015-03-20 21:19 ` Eli Zaretskii
2015-03-20 21:53 ` Stefan Monnier
2015-03-21 7:38 ` Eli Zaretskii
2015-03-21 9:59 ` martin rudalics
2015-03-21 10:46 ` Eli Zaretskii
2015-03-21 10:56 ` Eli Zaretskii
2015-03-21 12:31 ` martin rudalics
2015-03-21 14:03 ` Stefan Monnier
2015-03-21 14:44 ` Eli Zaretskii
2015-03-21 17:28 ` Stefan Monnier
2015-03-21 18:28 ` Eli Zaretskii
2015-03-21 22:14 ` Stefan Monnier
2015-03-22 14:11 ` martin rudalics
2015-03-22 22:25 ` Stefan Monnier
2015-03-21 13:59 ` Stefan Monnier
2015-03-21 14:35 ` Stefan Monnier
2015-03-21 14:47 ` Eli Zaretskii
2015-03-21 17:10 ` Stefan Monnier
2015-03-21 17:14 ` Eli Zaretskii
2015-03-21 22:12 ` Stefan Monnier
2015-03-22 3:34 ` Eli Zaretskii
2015-03-22 13:58 ` Stefan Monnier
2015-03-22 17:41 ` Eli Zaretskii
2015-03-22 22:23 ` Stefan Monnier
2015-03-23 15:31 ` Eli Zaretskii
2015-03-23 19:27 ` Stefan Monnier
2015-03-23 19:28 ` Stefan Monnier
2015-03-23 19:39 ` Eli Zaretskii
2015-03-23 21:37 ` Stefan Monnier
2015-03-21 14:42 ` Eli Zaretskii
2015-03-21 9:58 ` martin rudalics
2015-03-21 14:10 ` Stefan Monnier
2015-03-21 9:58 ` martin rudalics
2015-03-21 10:42 ` Eli Zaretskii
2015-03-21 12:30 ` martin rudalics
2015-03-21 12:45 ` Eli Zaretskii
2015-03-20 17:59 ` Stefan Monnier
2015-03-20 19:53 ` martin rudalics
2015-03-17 14:29 ` Richard Stallman
2015-03-17 15:15 ` Yuri Khan
2015-03-17 15:33 ` Eli Zaretskii
2015-03-18 12:00 ` 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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=550C3335.4070405@gmx.at \
--to=rudalics@gmx.at \
--cc=dancol@dancol.org \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=monnier@IRO.UMontreal.CA \
/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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).