This needs to be upstreamed to webkit.org.
Change-Id: I14633c51276bd92ed56139b4c473cc8ac9bacb72
#include "config.h"
#include "BackForwardList.h"
-#include "HistoryItem.h"
-#include "Logging.h"
-#include "PageCache.h"
-#ifdef ANDROID_HISTORY_CLIENT
#include "Frame.h"
#include "FrameLoader.h"
#include "FrameLoaderClient.h"
+#include "HistoryItem.h"
+#include "Logging.h"
#include "Page.h"
-#endif
+#include "PageCache.h"
using namespace std;
m_entryHash.remove(item);
pageCache()->remove(item.get());
m_current--;
-#ifdef ANDROID_HISTORY_CLIENT
- m_page->mainFrame()->loader()->client()->dispatchDidRemoveHistoryItem(item.get(), 0);
-#endif
+ m_page->mainFrame()->loader()->client()->dispatchDidRemoveBackForwardItem(item.get());
}
m_entries.append(prpItem);
m_entryHash.add(m_entries.last());
m_current++;
-#ifdef ANDROID_HISTORY_CLIENT
- m_page->mainFrame()->loader()->client()->dispatchDidAddHistoryItem(currentItem());
-#endif
+ m_page->mainFrame()->loader()->client()->dispatchDidAddBackForwardItem(currentItem());
}
void BackForwardList::goBack()
{
ASSERT(m_current > 0);
-#ifdef ANDROID_HISTORY_CLIENT
if (m_current > 0) {
m_current--;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeHistoryIndex(this);
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
-#else
- if (m_current > 0)
- m_current--;
-#endif
}
void BackForwardList::goForward()
{
ASSERT(m_current < m_entries.size() - 1);
-#ifdef ANDROID_HISTORY_CLIENT
if (m_current < m_entries.size() - 1) {
m_current++;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeHistoryIndex(this);
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
-#else
- if (m_current < m_entries.size() - 1)
- m_current++;
-#endif
}
void BackForwardList::goToItem(HistoryItem* item)
for (; index < m_entries.size(); ++index)
if (m_entries[index] == item)
break;
-#ifdef ANDROID_HISTORY_CLIENT
if (index < m_entries.size()) {
m_current = index;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeHistoryIndex(this);
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
-#else
- if (index < m_entries.size())
- m_current = index;
-#endif
}
HistoryItem* BackForwardList::backItem()
if (!size)
m_current = NoCurrentItemIndex;
-#ifdef ANDROID_HISTORY_CLIENT
else if (m_current > m_entries.size() - 1) {
m_current = m_entries.size() - 1;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeHistoryIndex(this);
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
-#else
- else if (m_current > m_entries.size() - 1)
- m_current = m_entries.size() - 1;
-#endif
-
m_capacity = size;
}
virtual void updateGlobalHistory() { }
virtual void updateGlobalHistoryRedirectLinks() { }
virtual bool shouldGoToHistoryItem(HistoryItem*) const { return false; }
-#ifdef ANDROID_HISTORY_CLIENT
- virtual void dispatchDidAddHistoryItem(HistoryItem*) const {}
- virtual void dispatchDidRemoveHistoryItem(HistoryItem*, int) const {}
- virtual void dispatchDidChangeHistoryIndex(BackForwardList*) const {}
-#endif
+ virtual void dispatchDidAddBackForwardItem(HistoryItem*) const { }
+ virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const { }
+ virtual void dispatchDidChangeBackForwardIndex() const { }
virtual void saveViewStateToItem(HistoryItem*) { }
virtual bool canCachePage() const { return false; }
virtual void didDisplayInsecureContent() { }
class String;
class Widget;
-#ifdef ANDROID_HISTORY_CLIENT
- class BackForwardList;
-#endif
-
typedef void (PolicyChecker::*FramePolicyFunction)(PolicyAction);
class FrameLoaderClient {
virtual void updateGlobalHistoryRedirectLinks() = 0;
virtual bool shouldGoToHistoryItem(HistoryItem*) const = 0;
-#ifdef ANDROID_HISTORY_CLIENT
- virtual void dispatchDidAddHistoryItem(HistoryItem*) const = 0;
- virtual void dispatchDidRemoveHistoryItem(HistoryItem*, int) const = 0;
- virtual void dispatchDidChangeHistoryIndex(BackForwardList*) const = 0;
-#endif
+ virtual void dispatchDidAddBackForwardItem(HistoryItem*) const = 0;
+ virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const = 0;
+ virtual void dispatchDidChangeBackForwardIndex() const = 0;
// This frame has displayed inactive content (such as an image) from an
// insecure source. Inactive content cannot spread to other frames.
return item != 0;
}
+void FrameLoaderClient::dispatchDidAddBackForwardItem(HistoryItem*) const
+{
+}
+
+void FrameLoaderClient::dispatchDidRemoveBackForwardItem(HistoryItem*) const
+{
+}
+
+void FrameLoaderClient::dispatchDidChangeBackForwardIndex() const
+{
+}
+
void FrameLoaderClient::didDisplayInsecureContent()
{
notImplemented();
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
return true;
}
+void FrameLoaderClientHaiku::dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const
+{
+}
+
+void FrameLoaderClientHaiku::dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const
+{
+}
+
+void FrameLoaderClientHaiku::dispatchDidChangeBackForwardIndex() const
+{
+}
+
void FrameLoaderClientHaiku::saveScrollPositionAndViewStateToItem(WebCore::HistoryItem*)
{
notImplemented();
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
+ virtual void dispatchDidAddBackForwardItem(HistoryItem*) const;
+ virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const;
+ virtual void dispatchDidChangeBackForwardIndex() const;
virtual void saveScrollPositionAndViewStateToItem(HistoryItem*);
virtual bool canCachePage() const;
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
return [[view _policyDelegateForwarder] webView:view shouldGoToHistoryItem:webItem];
}
+void WebFrameLoaderClient::dispatchDidAddBackForwardItem(HistoryItem*) const
+{
+}
+
+void WebFrameLoaderClient::dispatchDidRemoveBackForwardItem(HistoryItem*) const
+{
+}
+
+void WebFrameLoaderClient::dispatchDidChangeBackForwardIndex() const
+{
+}
+
void WebFrameLoaderClient::didDisplayInsecureContent()
{
WebView *webView = getWebView(m_webFrame.get());
return true;
}
+void FrameLoaderClientQt::dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const
+{
+}
+
+void FrameLoaderClientQt::dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const
+{
+}
+
+void FrameLoaderClientQt::dispatchDidChangeBackForwardIndex() const
+{
+}
+
void FrameLoaderClientQt::didDisplayInsecureContent()
{
notImplemented();
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
-
+ virtual void dispatchDidAddBackForwardItem(HistoryItem*) const;
+ virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const;
+ virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
virtual void didRunInsecureContent(SecurityOrigin*);
return true;
}
+void WebFrameLoaderClient::dispatchDidAddBackForwardItem(HistoryItem*) const
+{
+}
+
+void WebFrameLoaderClient::dispatchDidRemoveBackForwardItem(HistoryItem*) const
+{
+}
+
+void WebFrameLoaderClient::dispatchDidChangeBackForwardIndex() const
+{
+}
+
void WebFrameLoaderClient::didDisplayInsecureContent()
{
WebView* webView = m_webFrame->webView();
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const;
+ virtual void dispatchDidChangeBackForwardIndex() const;
virtual void didDisplayInsecureContent();
virtual void didRunInsecureContent(WebCore::SecurityOrigin*);
return true;
}
+void FrameLoaderClientWx::dispatchDidAddBackForwardItem(WebCore::HistoryItem*) const
+{
+}
+
+void FrameLoaderClientWx::dispatchDidRemoveBackForwardItem(WebCore::HistoryItem*) const
+{
+}
+
+void FrameLoaderClientWx::dispatchDidChangeBackForwardIndex() const
+{
+}
+
void FrameLoaderClientWx::didDisplayInsecureContent()
{
notImplemented();
virtual void updateGlobalHistory();
virtual void updateGlobalHistoryRedirectLinks();
virtual bool shouldGoToHistoryItem(HistoryItem*) const;
+ virtual void dispatchDidAddBackForwardItem(HistoryItem*) const;
+ virtual void dispatchDidRemoveBackForwardItem(HistoryItem*) const;
+ virtual void dispatchDidChangeBackForwardIndex() const;
virtual void saveScrollPositionAndViewStateToItem(HistoryItem*);
virtual bool canCachePage() const;