Closed Bug 291134 Opened 19 years ago Closed 19 years ago

A better autoscroll algorithm is needed

Categories

(Firefox :: General, enhancement)

x86
Windows XP
enhancement
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 212273

People

(Reporter: rick.beton, Assigned: bugzilla)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.7) Gecko/20050414 Firefox/1.0.3
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.7) Gecko/20050414 Firefox/1.0.3

Autoscroll is enabled using a middle-mouse click. Moving the mouse determines
the rate of scroll. This is a great feature for reading long articles etc.

However, due to the way it is implemented, I find it annoying and much less
useful than it might be. The main reason is that it won't scroll slowly enough. 

Every animation cycle, the page is shifted by a certain number of pixels; the
further away the mouse moves from its starting point, the more pixels the page
is shifted each cycle. This algorithm is good for fast scrolling.

What I recommend is:

1. There should be a point in the acceleration algorithm at which the page
scrolls by exactly one pixel every cycle. (The cycle duration remains constant.)
Moving the mouse further away increases the number of pixels, accelerating the
scroll rate. Call this the break-even point.

2. Before the break-even point is reached, the number of pixels moved is always
one per cycle. However, the length of the cycle should increase, allowing slower
and slower scrolling. 

3. There should be a small "dead band" surrounding the point where the mouse was
first clicked. Within the dead band, scrolling stops completely. (For
comparison, IE has this feature.) This makes it easy to stop scrolling
temporarily without clicking the mouse.

Probably the dead band size and the gradients of the acceleration algorithm
should be configurable via the preferences system.


Reproducible: Always

Steps to Reproduce:
We had a "better" algorithim, but perf was atrocious.
Whiteboard: DUPEME

*** This bug has been marked as a duplicate of 212273 ***
Status: UNCONFIRMED → RESOLVED
Closed: 19 years ago
Resolution: --- → DUPLICATE
Whiteboard: DUPEME
You need to log in before you can comment on or make changes to this bug.