Created attachment 83532 [details] test page When scrolling to the left in an RTL page, the newly revealed content is not drawn. Reproducible using WebKit r79303 (only tested under Windows though) I attached a dir=rtl page with a long line of text, scrolling horizontally reveals white space instead of the rest of the text. (the text is bounded by the words BEGIN and END) the regression window is r76810-r76915 http://trac.webkit.org/log/?rev=76915&stop_rev=76810&verbose=on maybe http://trac.webkit.org/changeset/76831/ is to blame?
<rdar://problem/9043791>
The horizontal scrollbar for RTL pages was first implemented in Bug 23556 . Apparently there is a flaw in that implementation: links are not click-able in the newly revealed area. The interesting part is that the recent regression that prevented the content from being drawn, made those (now invisible) links click-able. Originally reported in http://crbug.com/73724
(i think)
The following seems fix the problem and the one reported in 55889. Index: ScrollView.cpp =================================================================== --- ScrollView.cpp (revision 80210) +++ ScrollView.cpp (working copy) @@ -980,7 +980,7 @@ if (scrollX() < 0) { verticalOverhangRect.setWidth(-scrollX()); verticalOverhangRect.setHeight(frameRect().height() - horizontalOverhan gRect.height()); - verticalOverhangRect.setX(frameRect().x()); + verticalOverhangRect.setX(frameRect().x() + scrollX()); if (horizontalOverhangRect.y() == frameRect().y()) verticalOverhangRect.setY(frameRect().y() + horizontalOverhangRect. height()); else
Created attachment 85005 [details] patch w/ layout test I am not sure whether the position is set correctly in other 2 conditions (when scroll position is greater than the overflow value) inside ScrollView::calculateOverhangAreasForPainting(). And I do not know how to write a non-pixel test to test it out.
Comment on attachment 85005 [details] patch w/ layout test r=me
Committed r80622: <http://trac.webkit.org/changeset/80622>
*** Bug 55889 has been marked as a duplicate of this bug. ***
Created attachment 85281 [details] Updated Patch I don't think the fix that went in was quite right, we really should be doing these checks taking the scroll origin into account.
Attachment 85281 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1 Source/WebCore/platform/ScrollableArea.h:130: Should only a single space after a punctuation in a comment. [whitespace/comments] [5] Source/WebCore/platform/ScrollableArea.h:131: Should only a single space after a punctuation in a comment. [whitespace/comments] [5] Total errors found: 2 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 85281 [details] Updated Patch r=me. Fix the style queue issues.
Updated fix in 80757
Thanks for landing the right one!