unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: Aquamacs distro for OS X like behavior
Date: Wed, 06 Apr 2005 10:08:20 -0400	[thread overview]
Message-ID: <87vf70ausz.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <0ba853825b580f74347416c2c0b4a169@gmail.com> (David Reitter's message of "Wed, 6 Apr 2005 14:03:06 +0100")

>>> for example to handle scrollbars correctly.
>> Please report any complaint you have against the scrollbar with
>> M-x report-emacs-bug.
> I have reported this in various places, for example on
> emacs-pretest-bugs here:

> http://lists.gnu.org/archive/html/emacs-pretest-bug/2004-03/ msg00110.html

> and Steven Tamm and Yamamoto Mitsuharu have been made aware of it a  while
> ago.  I have no plans to report the same problem again :-)

Sorry I missed it.  I have no knowledge of Carbon Emacs, but I do have a lot
of experience trying to get non-Xaw scrollbars to work with Emacs.
So I can answer some of the issues you raise in your post:

> Under OS X, Emacs behaves very strangely with regard to the scrollbars and
> sliders. When you just click on a slider without moving it (after you've
> scrolled to the middle of the document), you will see that the text
> scrolls right away, often far beyond the document.  Intended behavior
> would be not to do anything.

The description of the behavior is not sufficiently precise for me to be
sure, but it looks like a genuine bug.  I'm not sure what you mean by "far
beyond the document", tho.

> When the slider is moved, scrolling looks fine at first.  However, I can
> then move beyond the document.

You mean you can scroll til the point where the very end of the document is
at the very top of the window.  That's normal Emacs behavior.  And there are
sound technical reasons why it's done this way.

> Good behavior under OS X would be to stop scrolling just when one line
> after the document is located at the bottom end of the screen
> (i.e. frame).

Other than being slightly different, in what case is it a problem?

The behavior you want is a behavior I find inconvenient in many cases
(e.g. I find it unpleasant to type text on the very last line of a window,
and I sometimes like to move the text higher up in the window (even if it's
at the bottom of the buffer) so I can align it on screen with some other
window's text).

I sometimes actually even wish the same would hold for the beginning of the
buffer (being able to place (point-min) at the bottom of the window).

> Also, during scrolling, the size of the slider changes. That should never
> be, as the size indicates the length of the document in relation to the size
> of the whole scrollbar.

That's exactly what it represent: the ratio slider/total is the same as the
ratio shownchars/buffercharsize.  But depending on where you are in the
buffer the window will not always show the same number of chars, so the size
of the slider changes accordingly.

In order for the slider to have a fixed size independent from the position
in the buffer it would have to show "shownpixels/bufferpixelsize".
Problem is that bufferpixelsize is very costly to compute so we currently
can't do that.

> That's an old paradigm! Consequently, the size of the slider only changes
> if the document size changes.

"Old paradigm" is not an argument I care about.  I still haven't heard of
any scenario where the current behavior causes an actual problem.  The worst
I've heard is that users are surprised and then go on with their life.
I've never heard of any user actually getting confused by it.

I'm not claiming that the current behavior is a feature, but I'm just saying
that the cost of a fix is just too high compared to the very minor
improvement it would bring.  Maybe the situation will be different ten years
from now, but before then I don't see things changing on this front.

BTW, in Emacs-CVS you can actually "try it out" by calling
`count-screen-lines'.  On reasonably large buffers, it takes a while.
Also the bufferpixelsize can be changed by font-lock fontification, so we'd
have to throw away jit-lock and go back to plain font-lock.

> Furthermore, clicking on one of the little arrows doesn't result in an
> immediate scroll action (one line). It only scrolls when the mouse button is
> released. Good behavior would be to scroll as soon as the button is down,
> and then scroll again (line by line, but continuously), after a short
> delay -- just like pressing a key will repeat that letter on and on after
> a delay.

That looks like a genuine bug.


        Stefan

  reply	other threads:[~2005-04-06 14:08 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-03 10:37 Aquamacs distro for OS X like behavior David Reitter
2005-04-04 11:40 ` David Kastrup
2005-04-04 14:02   ` David Reitter
2005-04-04 17:28     ` Stefan Monnier
2005-04-04 17:47       ` David Kastrup
2005-04-04 23:27         ` David Reitter
2005-04-05  0:02           ` David Kastrup
2005-04-05 14:58           ` Stefan Monnier
2005-04-06 13:03             ` David Reitter
2005-04-06 14:08               ` Stefan Monnier [this message]
2005-04-06 14:32                 ` Scrollbar bug on OS X (was: Aquamacs distro for OS X like behavior) David Reitter
2005-04-06 17:14                   ` Scrollbar bug on OS X Stefan Monnier
2005-04-06 22:07                   ` Scrollbar bug on OS X (was: Aquamacs distro for OS X like behavior) Miles Bader
2005-04-06 22:25                     ` Scrollbar bug on OS X David Kastrup
2005-04-06 22:51                       ` Stefan Monnier
2005-04-07 18:27                         ` Richard Stallman
2005-04-07 19:26                           ` Stefan Monnier
2005-04-07 19:30                             ` David Kastrup
2005-04-07 19:46                               ` Jan D.
2005-04-07 19:59                               ` David Reitter
2005-04-08  2:05                                 ` Miles Bader
2005-04-08 11:31                                   ` David Reitter
2005-04-08 12:42                                 ` Stefan Monnier
2005-04-08 13:12                                   ` David Reitter
2005-04-08 14:08                                     ` Stefan Monnier
2005-04-08 15:46                                   ` Kevin Rodgers
2005-04-09  8:04                                     ` Eli Zaretskii
2005-04-09 16:04                                       ` Luc Teirlinck
2005-04-09 16:46                                         ` Miles Bader
2005-04-09 17:02                                           ` Luc Teirlinck
2005-04-09 16:18                                       ` Luc Teirlinck
2005-04-11 18:22                                       ` Kevin Rodgers
2005-04-07 19:41                           ` Jan D.
2005-04-08 14:32                             ` Richard Stallman
2005-04-08 14:50                               ` Stefan Monnier
2005-04-10  1:54                                 ` Richard Stallman
2005-04-10  5:53                                   ` Jan D.
2005-04-10 10:58                                     ` Miles Bader
2005-04-11  1:56                                     ` Richard Stallman
2005-04-06 22:44                     ` Stefan Monnier
2005-04-06 16:17                 ` Scrollbar size flaky on OS X (was: Aquamacs distro for OS X like behavior) David Reitter
2005-04-06 17:19                   ` Scrollbar size flaky on OS X Stefan Monnier
2005-04-05 19:07           ` Aquamacs distro for OS X like behavior Richard Stallman
2005-04-05 19:25             ` Lennart Borgman
2005-04-06 14:59               ` Richard Stallman
2005-04-06 16:20                 ` David Kastrup
2005-04-07 18:27                   ` Richard Stallman
2005-04-07 22:24                     ` Lennart Borgman
2005-04-08  9:17                       ` Johan Vromans
2005-04-08  9:50                         ` David Reitter
2005-04-09  3:38                           ` Richard Stallman
2005-04-05  4:22         ` Richard Stallman
2005-04-04 18:25   ` Aidan Kehoe
2005-04-04 21:01     ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2005-04-08 10:32 LENNART BORGMAN

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=87vf70ausz.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=emacs-devel@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 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).