Skip to content
  • timothy_horton@apple.com's avatar
    Maximum scroll position can be negative in some cases · ed528286
    timothy_horton@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=118175
    <rdar://problem/14301217>
    
    Reviewed by Anders Carlsson.
    
    Test (API): WebKit2.ResizeReversePaginatedWebView
    
    * page/FrameView.cpp:
    (WebCore::FrameView::maximumScrollPosition):
    * page/FrameView.h:
    Override maximumScrollPosition() in FrameView and don't clamp to zero if
    a reverse pagination mode is enabled, as it is possible (and common) to
    have a negative maximum scroll position with reverse pagination.
    
    * platform/ScrollView.cpp:
    (WebCore::ScrollView::updateScrollbars):
    Drive-by adoption of toIntSize().
    
    * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
    * TestWebKitAPI/Tests/WebKit2/ResizeReversePaginatedWebView.cpp: Added.
    (TestWebKitAPI::didRunJavaScript):
    (TestWebKitAPI::didLayout):
    (TestWebKitAPI::TEST):
    * TestWebKitAPI/Tests/WebKit2/lots-of-text-vertical-lr.html: Added.
    Add a test that loads a vertical-lr document, paginates it horizontally
    from right to left, resizes the view to fit the entire document, and
    verifies that the scroll position is negative, as it must be for the
    document to be enclosed by the view.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152265 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ed528286