[Webkit-unassigned] [Bug 64143] REGRESSION (r60268): Page-Up or Page-Down inside textarea scrolls not just its content but the page

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jul 13 23:03:09 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=64143





--- Comment #21 from Kentaro Hara <haraken at google.com>  2011-07-13 23:03:08 PST ---
> If this problem started with a cross platform patch, then it could indeed be that a proper fix is in cross platform code. But given that no other platform apparently has this problem, it's still far from a proven fact.

I think that this is because mac, win, gtk and qt have their own editor client and handleKeyboardEvent(), and thus do not use the WebCore codes. For example, in case of Mac Safari, I confirmed that it uses Source/WebKit/mac/WebView/WebFrameView.mm for rendering scroll operations, instead of the WebCore codes. 


> The ChangeLog describes what was done, but not why. Is cross platform code buggy? Or is it clearly insufficient in some way (but then why other platforms manage to work)?

I hope that Zelidrag will reply more in detail about why, but my guess for what happened around r60268 is as follows:

- Before r60268, PageUp and PageDown in textarea were using ScrollAlignment::alignToEdgeIfNeeded for their alignment strategy.
- With respect to this bug (i.e. PageUp and PageDown scroll a parent layer even if the child layer is scrollable), the implementation of alignToEdgeIfNeeded was correct but the implementation of alignTopAlways was wrong, as of before r60268. 
- r60268 changed the alignment strategy from alignToEdgeIfNeeded to alignTopAlways. 
- This accounts for why my test (pageup-and-pagedown-in-textarea.html) passes at r60267 but does not pass at r60268. 

And, in this patch, I guess that I am now trying to fix the bug of alignTopAlways, which was existing since before r60268.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list