2011-02-19 Charlie Reis <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Tests that going forward within the same document does not stop loading.

        * http/tests/navigation/forward-to-fragment-fires-onload.html: Added.
        * http/tests/navigation/forward-to-fragment-fires-onload-expected.txt: Added.
        * http/tests/navigation/resources/forward-to-fragment-fires-onload-2.html: Added.
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Avoid stopping all loaders in goToItem for same document navigations
        or pseudo-back-forward URLs.  Make HistoryController::goToItem private
        to force callers to go through Page::goToItem.  Also add a callback to
        FrameLoaderClient to let clients decide whether to stop loading first.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * loader/EmptyClients.h:
        * loader/FrameLoader.h:
        * loader/FrameLoaderClient.h:
        * loader/HistoryController.cpp:
        * loader/HistoryController.h:
        * page/Page.cpp:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Call Page::goToItem instead of HistoryController::goToItem, so that
        FrameLoader::stopAllLoaders is called first.  Also adds a callback in
        FrameLoaderClient for checking for pseudo-back-forward URLs.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * src/FrameLoaderClientImpl.cpp:
        (WebKit::FrameLoaderClientImpl::shouldStopLoadingForHistoryItem): Added.
        * src/FrameLoaderClientImpl.h:
        * src/WebFrameImpl.cpp:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/FrameLoaderClientEfl.cpp:
        (WebCore::FrameLoaderClientEfl::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/FrameLoaderClientEfl.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClientGtk::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/FrameLoaderClientGtk.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/FrameLoaderClientHaiku.cpp:
        (WebCore::FrameLoaderClientHaiku::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/FrameLoaderClientHaiku.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/WebFrameLoaderClient.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/FrameLoaderClientQt.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/WebFrameLoaderClient.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebCoreSupport/FrameLoaderClientWinCE.cpp:
        (WebKit::FrameLoaderClientWinCE::shouldStopLoadingForHistoryItem): Added.
        * WebCoreSupport/FrameLoaderClientWinCE.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebKitSupport/FrameLoaderClientWx.cpp:
        (WebCore::FrameLoaderClientWx::shouldStopLoadingForHistoryItem): Added.
        * WebKitSupport/FrameLoaderClientWx.h:
2011-02-19  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Ensure loading has stopped in HistoryController::goToItem
        https://bugs.webkit.org/show_bug.cgi?id=54517

        Add a FrameLoaderClient callback for whether to stop loading before goToItem.

        Test: http/tests/navigation/forward-to-fragment-fires-onload.html

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@79107 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent cc988496
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Tests that going forward within the same document does not stop loading.
* http/tests/navigation/forward-to-fragment-fires-onload.html: Added.
* http/tests/navigation/forward-to-fragment-fires-onload-expected.txt: Added.
* http/tests/navigation/resources/forward-to-fragment-fires-onload-2.html: Added.
2011-02-19 Adam Barth <abarth@webkit.org>
Reviewed by Daniel Bates.
......
CONSOLE MESSAGE: line 27: Starting test.
CONSOLE MESSAGE: line 6: 1. Got to page 2. Going to #foo.
CONSOLE MESSAGE: line 22: 2. Got to page 2 #foo. Going back to start.
CONSOLE MESSAGE: line 17: 3. Got back to start. Going forward to page 2.
CONSOLE MESSAGE: line 31: 4. Got back to page 2. Immediately going forward.
CONSOLE MESSAGE: line 13: 5. Got to page 2 onload. Success.
Tests that loading is not stopped by going forward to a fragment.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="../../js-test-resources/js-test-style.css">
<script src="../../js-test-resources/js-test-pre.js"></script>
</head>
<body>
<p id="description"></p>
<div id="console"></div>
<script>
description('Tests that loading is not stopped by going forward to a fragment.');
onload = function()
{
if (window.localStorage.stage == 'three') {
console.log('3. Got back to start. Going forward to page 2.');
window.localStorage.stage = 'four';
history.forward();
} else if (window.localStorage.stage == 'six') {
delete window.localStorage.stage;
finishJSTest();
} else {
// To make sure that we hit this branch, log this to the console so that
// it shows up in expected output (debug() will be blown away once we
// navigate out).
console.log('Starting test.');
window.localStorage.stage = 'one';
// Navigate in a timeout to make sure we create a history entry.
setTimeout(function() {
window.location.href = 'resources/forward-to-fragment-fires-onload-2.html';
}, 0);
}
};
var successfullyParsed = true;
var jsTestIsAsync = true;
</script>
<script src="../../js-test-resources/js-test-post.js"></script>
</body>
</html>
Page 2.
<script>
onload = function()
{
if (window.localStorage.stage == 'one') {
console.log('1. Got to page 2. Going to #foo.');
window.localStorage.stage = 'two';
// Navigate in a timeout to make sure we create a history entry.
setTimeout(function() {
window.location.href = '#foo';
}, 0);
} else if (window.localStorage.stage == 'five') {
console.log('5. Got to page 2 onload. Success.');
window.localStorage.stage = 'six';
history.go(-2);
}
};
onhashchange = function()
{
if (window.localStorage.stage == 'two') {
console.log('2. Got to page 2 #foo. Going back to start.');
window.localStorage.stage = 'three';
history.go(-2);
}
};
// Go forward to fragment after the page is finished parsing.
document.addEventListener('DOMContentLoaded', function() {
if (window.localStorage.stage == 'four') {
console.log('4. Got back to page 2. Immediately going forward.');
window.localStorage.stage = 'five';
history.forward();
}
});
</script>
<!-- Slow image to let us to go forward while the page is still loading. -->
<img src="slow-resource.pl?delay=100"></iframe>
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Avoid stopping all loaders in goToItem for same document navigations
or pseudo-back-forward URLs. Make HistoryController::goToItem private
to force callers to go through Page::goToItem. Also add a callback to
FrameLoaderClient to let clients decide whether to stop loading first.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* loader/EmptyClients.h:
* loader/FrameLoader.h:
* loader/FrameLoaderClient.h:
* loader/HistoryController.cpp:
* loader/HistoryController.h:
* page/Page.cpp:
2011-02-19 Adam Barth <abarth@webkit.org>
Reviewed by Daniel Bates.
......
......@@ -350,6 +350,7 @@ public:
virtual void updateGlobalHistory() { }
virtual void updateGlobalHistoryRedirectLinks() { }
virtual bool shouldGoToHistoryItem(HistoryItem*) const { return false; }
virtual bool shouldStopLoadingForHistoryItem(HistoryItem*) const { return false; }
virtual void dispatchDidAddBackForwardItem(HistoryItem*) const { }
virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const { };
virtual void dispatchDidChangeBackForwardIndex() const { }
......
......@@ -128,6 +128,7 @@ public:
bool canHandleRequest(const ResourceRequest&);
// Also not cool.
// FIXME: We no longer need DatabasePolicy, since we always stop databases now.
void stopAllLoaders(DatabasePolicy = DatabasePolicyStop, ClearProvisionalItemPolicy = ShouldClearProvisionalItem);
void stopForUserCancel(bool deferCheckLoadComplete = false);
......
......@@ -187,6 +187,7 @@ namespace WebCore {
virtual void updateGlobalHistoryRedirectLinks() = 0;
virtual bool shouldGoToHistoryItem(HistoryItem*) const = 0;
virtual bool shouldStopLoadingForHistoryItem(HistoryItem*) const = 0;
virtual void dispatchDidAddBackForwardItem(HistoryItem*) const = 0;
virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const = 0;
virtual void dispatchDidChangeBackForwardIndex() const = 0;
......
......@@ -217,6 +217,18 @@ void HistoryController::invalidateCurrentItemCachedPage()
pageCache()->remove(currentItem());
}
bool HistoryController::shouldStopLoadingForHistoryItem(HistoryItem* targetItem) const
{
if (!m_currentItem)
return false;
// Don't abort the current load if we're navigating within the current document.
if (m_currentItem->shouldDoSameDocumentNavigationTo(targetItem))
return false;
return m_frame->loader()->client()->shouldStopLoadingForHistoryItem(targetItem);
}
// Main funnel for navigating to a previous location (back/forward, non-search snap-back)
// This includes recursion to handle loading into framesets properly
void HistoryController::goToItem(HistoryItem* targetItem, FrameLoadType type)
......
......@@ -60,8 +60,6 @@ public:
void invalidateCurrentItemCachedPage();
void goToItem(HistoryItem*, FrameLoadType);
void updateForBackForwardNavigation();
void updateForReload();
void updateForStandardLoad(HistoryUpdateType updateType = UpdateAll);
......@@ -85,6 +83,10 @@ public:
void replaceState(PassRefPtr<SerializedScriptValue>, const String& title, const String& url);
private:
friend class Page;
bool shouldStopLoadingForHistoryItem(HistoryItem*) const;
void goToItem(HistoryItem*, FrameLoadType);
void initializeItem(HistoryItem*);
PassRefPtr<HistoryItem> createItem();
PassRefPtr<HistoryItem> createItemTree(Frame* targetFrame, bool clipAtTarget);
......
......@@ -331,25 +331,10 @@ void Page::goToItem(HistoryItem* item, FrameLoadType type)
// stopAllLoaders may end up running onload handlers, which could cause further history traversals that may lead to the passed in HistoryItem
// being deref()-ed. Make sure we can still use it with HistoryController::goToItem later.
RefPtr<HistoryItem> protector(item);
// Abort any current load unless we're navigating the current document to a new state object
HistoryItem* currentItem = m_mainFrame->loader()->history()->currentItem();
if (!item->stateObject() || !currentItem || item->documentSequenceNumber() != currentItem->documentSequenceNumber() || item == currentItem) {
// Define what to do with any open database connections. By default we stop them and terminate the database thread.
DatabasePolicy databasePolicy = DatabasePolicyStop;
#if ENABLE(DATABASE)
// If we're navigating the history via a fragment on the same document, then we do not want to stop databases.
const KURL& currentURL = m_mainFrame->document()->url();
const KURL& newURL = item->url();
if (newURL.hasFragmentIdentifier() && equalIgnoringFragmentIdentifier(currentURL, newURL))
databasePolicy = DatabasePolicyContinue;
#endif
m_mainFrame->loader()->stopAllLoaders(databasePolicy);
}
if (m_mainFrame->loader()->history()->shouldStopLoadingForHistoryItem(item))
m_mainFrame->loader()->stopAllLoaders();
m_mainFrame->loader()->history()->goToItem(item, type);
}
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Call Page::goToItem instead of HistoryController::goToItem, so that
FrameLoader::stopAllLoaders is called first. Also adds a callback in
FrameLoaderClient for checking for pseudo-back-forward URLs.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::shouldStopLoadingForHistoryItem): Added.
* src/FrameLoaderClientImpl.h:
* src/WebFrameImpl.cpp:
2011-02-18 Dominic Mazzoni <dmazzoni@google.com>
Reviewed by Dimitri Glazkov.
......
......@@ -1135,6 +1135,14 @@ bool FrameLoaderClientImpl::shouldGoToHistoryItem(HistoryItem* item) const
return false;
}
bool FrameLoaderClientImpl::shouldStopLoadingForHistoryItem(HistoryItem* targetItem) const
{
// Don't stop loading for pseudo-back-forward URLs, since they will get
// translated and then pass through again.
const KURL& url = targetItem->url();
return !url.protocolIs(backForwardNavigationScheme);
}
void FrameLoaderClientImpl::dispatchDidAddBackForwardItem(HistoryItem*) const
{
}
......
......@@ -138,6 +138,7 @@ public:
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
......@@ -898,8 +898,8 @@ void WebFrameImpl::loadHistoryItem(const WebHistoryItem& item)
m_frame->page()->backForward()->setCurrentItem(currentItem.get());
}
m_frame->loader()->history()->goToItem(
historyItem.get(), FrameLoadTypeIndexedBackForward);
m_frame->page()->goToItem(historyItem.get(),
FrameLoadTypeIndexedBackForward);
}
void WebFrameImpl::loadData(const WebData& data,
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/FrameLoaderClientEfl.h:
2011-02-18 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Reviewed by Kent Tamura.
......
......@@ -510,6 +510,11 @@ bool FrameLoaderClientEfl::shouldGoToHistoryItem(HistoryItem* item) const
return item;
}
bool FrameLoaderClientEfl::shouldStopLoadingForHistoryItem(HistoryItem* item) const
{
return true;
}
void FrameLoaderClientEfl::didDisplayInsecureContent()
{
notImplemented();
......
......@@ -164,6 +164,7 @@ class FrameLoaderClientEfl : public FrameLoaderClient {
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(HistoryItem*) const;
virtual void didDisplayInsecureContent();
virtual void didRunInsecureContent(SecurityOrigin*, const KURL&);
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClientGtk::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/FrameLoaderClientGtk.h:
2011-02-18 Mario Sanchez Prada <msanchez@igalia.com>
Reviewed by Martin Robinson.
......
......@@ -808,6 +808,11 @@ bool FrameLoaderClient::shouldGoToHistoryItem(HistoryItem* item) const
return item != 0;
}
bool FrameLoaderClient::shouldStopLoadingForHistoryItem(HistoryItem* item) const
{
return true;
}
void FrameLoaderClient::dispatchDidAddBackForwardItem(HistoryItem*) const
{
}
......
......@@ -141,6 +141,7 @@ namespace WebKit {
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/FrameLoaderClientHaiku.cpp:
(WebCore::FrameLoaderClientHaiku::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/FrameLoaderClientHaiku.h:
2011-01-26 MORITA Hajime <morrita@google.com>
Reviewed by Ryosuke Niwa.
......
......@@ -483,6 +483,11 @@ bool FrameLoaderClientHaiku::shouldGoToHistoryItem(WebCore::HistoryItem*) const
return true;
}
bool FrameLoaderClientHaiku::shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const
{
return true;
}
void FrameLoaderClientHaiku::dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const
{
}
......
......@@ -159,6 +159,7 @@ namespace WebCore {
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/WebFrameLoaderClient.h:
2011-02-16 David Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
......
......@@ -151,6 +151,7 @@ private:
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
......@@ -937,6 +937,11 @@ bool WebFrameLoaderClient::shouldGoToHistoryItem(HistoryItem* item) const
return [[view _policyDelegateForwarder] webView:view shouldGoToHistoryItem:webItem];
}
bool WebFrameLoaderClient::shouldStopLoadingForHistoryItem(HistoryItem* item) const
{
return true;
}
void WebFrameLoaderClient::dispatchDidAddBackForwardItem(HistoryItem*) const
{
}
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/FrameLoaderClientQt.h:
2011-02-18 Fabrizio Machado <fabrizio.machado@nokia.com>
Reviewed by Eric Seidel.
......
......@@ -827,6 +827,11 @@ bool FrameLoaderClientQt::shouldGoToHistoryItem(WebCore::HistoryItem *) const
return true;
}
bool FrameLoaderClientQt::shouldStopLoadingForHistoryItem(WebCore::HistoryItem *) const
{
return true;
}
void FrameLoaderClientQt::dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const
{
}
......
......@@ -154,6 +154,7 @@ public:
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/WebFrameLoaderClient.h:
2011-02-16 David Hyatt <hyatt@apple.com>
Reviewed by Dan Bernstein.
......
......@@ -602,6 +602,11 @@ bool WebFrameLoaderClient::shouldGoToHistoryItem(HistoryItem*) const
return true;
}
bool WebFrameLoaderClient::shouldStopLoadingForHistoryItem(HistoryItem*) const
{
return true;
}
void WebFrameLoaderClient::dispatchDidAddBackForwardItem(HistoryItem*) const
{
}
......
......@@ -94,6 +94,7 @@ public:
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebCoreSupport/FrameLoaderClientWinCE.cpp:
(WebKit::FrameLoaderClientWinCE::shouldStopLoadingForHistoryItem): Added.
* WebCoreSupport/FrameLoaderClientWinCE.h:
2011-02-10 Luiz Agostini <luiz.agostini@openbossa.org>
Reviewed by Adam Roben.
......
......@@ -248,6 +248,11 @@ bool FrameLoaderClientWinCE::shouldGoToHistoryItem(HistoryItem* item) const
return item;
}
bool FrameLoaderClientWinCE::shouldStopLoadingForHistoryItem(HistoryItem* item) const
{
return true;
}
void FrameLoaderClientWinCE::dispatchDidAddBackForwardItem(HistoryItem*) const
{
}
......
......@@ -135,6 +135,7 @@ public:
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
virtual bool shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const;
virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
virtual void dispatchDidChangeBackForwardIndex() const;
......
2011-02-19 Charlie Reis <creis@chromium.org>
Reviewed by Mihai Parparita.
Ensure loading has stopped in HistoryController::goToItem
https://bugs.webkit.org/show_bug.cgi?id=54517
Add a FrameLoaderClient callback for whether to stop loading before goToItem.
Test: http/tests/navigation/forward-to-fragment-fires-onload.html
* WebKitSupport/FrameLoaderClientWx.cpp:
(WebCore::FrameLoaderClientWx::shouldStopLoadingForHistoryItem): Added.
* WebKitSupport/FrameLoaderClientWx.h:
2011-02-17 Kevin Ollivier <kevino@theolliviers.com>
[wx] Build fix after move of DocumentWriter to DocumentLoader.
......
......@@ -577,6 +577,11 @@ bool FrameLoaderClientWx::shouldGoToHistoryItem(WebCore::HistoryItem*) const
return true;
}
bool FrameLoaderClientWx::shouldStopLoadingForHistoryItem(WebCore::HistoryItem*) const
{