Open Bug 743805 Opened 12 years ago Updated 2 years ago

scrollbar slider size is too large, as function of amount of page overlap for PgUp/PgDn

Categories

(Core :: Layout, defect)

defect

Tracking

()

People

(Reporter: dbaron, Unassigned)

Details

nsGfxScrollFrame sets the page increment, i.e., the amount that we should scroll in response to a PageUp or PageDown key or action (click in the track of the scrollbar), based on a bunch of factors, including the line height, so that there's a little overlap for reading when doing PageUp/PageDown:

http://hg.mozilla.org/mozilla-central/file/17e4143dd6f0/layout/generic/nsGfxScrollFrame.cpp#l3381

However, this is the *only* information we tell the scrollbar about how much of its range is currently being displayed:

http://hg.mozilla.org/mozilla-central/file/17e4143dd6f0/layout/generic/nsGfxScrollFrame.cpp#l3315

which means that the scrollbar uses the page increment (which was computed with the intent of being used for how much to move when moving by a page) for deciding how big the slider should be:

http://hg.mozilla.org/mozilla-central/file/17e4143dd6f0/layout/xul/base/src/nsSliderFrame.cpp#l412

This means the scrollbar is incorrectly showing that we have slightly more content than we actually do.


(I noticed this while converting font inflation reftests to use the reftest harness; since test and reference have different underlying line-heights since one uses inflation and one doesn't, displaying a scrollbar actually shows this difference despite the scrollable range being the same.)
(In reply to David Baron [:dbaron] from comment #0)
> (I noticed this while converting font inflation reftests to use the reftest
> harness; since test and reference have different underlying line-heights
> since one uses inflation and one doesn't, displaying a scrollbar actually
> shows this difference despite the scrollable range being the same.)

This work is bug 743817.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.