• commit-queue@webkit.org's avatar
    2011-05-16 Ian Henderson <ianh@apple.com> · ef45a5d2
    commit-queue@webkit.org authored
            Reviewed by Joseph Pecoraro.
    
            Page::goToItem doesn't work while loading is deferred
            https://bugs.webkit.org/show_bug.cgi?id=60412
    
            * loader/navigation-while-deferring-loads-expected.txt: Added.
            * loader/navigation-while-deferring-loads.html: Added.
            * platform/gtk/Skipped:
            * platform/qt/Skipped:
            * platform/win/Skipped:
    2011-05-16  Ian Henderson  <ianh@apple.com>
    
            Reviewed by Joseph Pecoraro.
    
            Page::goToItem doesn't work while loading is deferred
            https://bugs.webkit.org/show_bug.cgi?id=60412
    
            If goToItem is called while loading is deferred, save the arguments
            and try again later instead of doing nothing.
    
            Test: loader/navigation-while-deferring-loads.html
    
            * loader/FrameLoader.cpp:
            (WebCore::FrameLoader::setDefersLoading):
            Pipe the "defersLoading" state into HistoryController.
            * loader/HistoryController.cpp:
            (WebCore::HistoryController::HistoryController):
            (WebCore::HistoryController::goToItem):
            Save the HistoryItem and FrameLoadType if loading is deferred.
            (WebCore::HistoryController::setDefersLoading):
            If we have a saved HistoryItem after resuming, try going to it.
            * loader/HistoryController.h:
            * page/Page.cpp:
            (WebCore::Page::goToItem):
            No longer bail early if loading is deferred, since HistoryController
            now handles this case.
    2011-05-16  Ian Henderson  <ianh@apple.com>
    
            Reviewed by Joseph Pecoraro.
    
            Page::goToItem doesn't work while loading is deferred
            https://bugs.webkit.org/show_bug.cgi?id=60412
    
            Add setDefersLoading and goBack methods to LayoutTestController.  We
            need to use goBack() instead of history.back() because the latter goes
            through NavigationScheduler, hence doesn't exhibit the bug.
    
            * DumpRenderTree/LayoutTestController.cpp:
            (goBackCallback):
            (setDefersLoadingCallback):
            (LayoutTestController::staticFunctions):
            * DumpRenderTree/LayoutTestController.h:
            * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
            (LayoutTestController::goBack):
            (LayoutTestController::setDefersLoading):
            * DumpRenderTree/mac/LayoutTestControllerMac.mm:
            (LayoutTestController::goBack):
            (LayoutTestController::setDefersLoading):
            * DumpRenderTree/win/LayoutTestControllerWin.cpp:
            (LayoutTestController::goBack):
            (LayoutTestController::setDefersLoading):
            * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
            (LayoutTestController::goBack):
            (LayoutTestController::setDefersLoading):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@86644 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ef45a5d2
navigation-while-deferring-loads-expected.txt 5 Bytes