Build 1.9.2 20100219013601 on Debian GNU/Linux with xmonad.
Regression range: 2010011101 … 2010011201 (fixed: bug 537694, bug 537660)
Steps to reproduce:
1. Load a page which is long enough to be scrolled (http://ru.wikipedia.org/ is a better example than the Fennec's start page).
2. Press End or keep pressing Down or Page Down until scrolling stops.
3. Scroll down using the pointing device / touch pad.
At step 2, keyboard scrolling stops before reaching the end of the page.
At step 3, the end is reached using the pointing device.
The bottom of the page can be reached using keyboard.
This seems to happen especially if the page is zoomed in. It looks like the keyboard scroll commands are still using the original scrollable area, not the zoomed in area. (If the page is zoomed out past the default level, there is different but related behavior.)
Bug 542480 is different but maybe related.
There are two problems here:
1) Browser.scrollContentToBrowser does not use zoomLevel to translate content coordinates to screen coordinates, and
2) the <browsers>'s style.height is not changed when the zoomLevel changes, so even when the bottom of the page is visible in the <browser>, it might not be visible onscreen (because part of the <browser> might be offscreen).
I tried out a sort of hacky patch to add a zoomLevel ratio to scrollContentToBrowser, and always set browser.style.height to window.innerHeight. But that won't work for horizontal scrolling. (We can't change browser.style.width without changing the layout.) Fennec really needs to handle scrolling actions itself in InputHandler.js, like vingtetun suggests in bug 542480 comment 1. Or re-enable SNAV.
Created attachment 440830 [details] [diff] [review]
This patch together with the patch in bug 479862 attachment 428336 [details] [diff] [review] solves most of the problem. There's still an issue when the height of the browser is greater than the window height, which I'll try to fix next.
Created attachment 455204 [details] [diff] [review]
Rebased against latest mobile-browser.
As mentioned above, there are still some cases where this is broken - but this patch fixes the problem on a lot of sites that I use, including the "Skip to menu" link on http://ask.metafilter.com/ and all of the scrolling on http://google.com/reader/i
VERIFIED FIXED on trunk/20100708014849.
Still reproducible on 1.9.2/20100708013742.
Should this bug still be marked "Version: 1.9.2"?