summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp')
-rw-r--r--chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp119
1 files changed, 32 insertions, 87 deletions
diff --git a/chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp b/chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp
index 807b20f541f..ad68b65ecbc 100644
--- a/chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp
+++ b/chromium/third_party/WebKit/Source/web/WebHistoryItem.cpp
@@ -29,46 +29,23 @@
*/
#include "config.h"
-#include "WebHistoryItem.h"
+#include "public/web/WebHistoryItem.h"
-#include "WebSerializedScriptValue.h"
#include "bindings/v8/SerializedScriptValue.h"
-#include "core/history/HistoryItem.h"
-#include "core/html/forms/FormController.h"
+#include "core/loader/HistoryItem.h"
#include "platform/network/FormData.h"
#include "platform/weborigin/KURL.h"
+#include "public/platform/WebFloatPoint.h"
#include "public/platform/WebHTTPBody.h"
#include "public/platform/WebPoint.h"
#include "public/platform/WebString.h"
#include "public/platform/WebVector.h"
+#include "public/web/WebSerializedScriptValue.h"
#include "wtf/text/StringHash.h"
using namespace WebCore;
namespace blink {
-namespace {
-
-void addReferencedFilePaths(HistoryItem* item, HashSet<String>& results)
-{
- const FormData* formData = item->formData();
- if (formData) {
- for (size_t i = 0; i < formData->elements().size(); ++i) {
- const FormDataElement& element = formData->elements()[i];
- if (element.m_type == FormDataElement::encodedFile)
- results.add(element.m_filename);
- }
- }
-
- const Vector<String>& filePaths = FormController::getReferencedFilePaths(item->documentState());
- for (size_t i = 0; i < filePaths.size(); ++i)
- results.add(filePaths[i]);
-
- const HistoryItemVector& children = item->children();
- for (size_t i = 0; i < children.size(); ++i)
- addReferencedFilePaths(children[i].get(), results);
-}
-
-} // namespace
void WebHistoryItem::initialize()
{
@@ -92,30 +69,22 @@ WebString WebHistoryItem::urlString() const
void WebHistoryItem::setURLString(const WebString& url)
{
- ensureMutable();
m_private->setURLString(KURL(ParsedURLString, url).string());
}
-WebString WebHistoryItem::originalURLString() const
-{
- return m_private->originalURLString();
-}
-
-void WebHistoryItem::setOriginalURLString(const WebString& originalURLString)
+WebString WebHistoryItem::referrer() const
{
- ensureMutable();
- m_private->setOriginalURLString(originalURLString);
+ return m_private->referrer().referrer;
}
-WebString WebHistoryItem::referrer() const
+WebReferrerPolicy WebHistoryItem::referrerPolicy() const
{
- return m_private->referrer();
+ return static_cast<WebReferrerPolicy>(m_private->referrer().referrerPolicy);
}
-void WebHistoryItem::setReferrer(const WebString& referrer)
+void WebHistoryItem::setReferrer(const WebString& referrer, WebReferrerPolicy referrerPolicy)
{
- ensureMutable();
- m_private->setReferrer(referrer);
+ m_private->setReferrer(Referrer(referrer, static_cast<ReferrerPolicy>(referrerPolicy)));
}
WebString WebHistoryItem::target() const
@@ -125,10 +94,19 @@ WebString WebHistoryItem::target() const
void WebHistoryItem::setTarget(const WebString& target)
{
- ensureMutable();
m_private->setTarget(target);
}
+WebFloatPoint WebHistoryItem::pinchViewportScrollOffset() const
+{
+ return m_private->pinchViewportScrollPoint();
+}
+
+void WebHistoryItem::setPinchViewportScrollOffset(const WebFloatPoint& scrollOffset)
+{
+ m_private->setPinchViewportScrollPoint(scrollOffset);
+}
+
WebPoint WebHistoryItem::scrollOffset() const
{
return m_private->scrollPoint();
@@ -136,7 +114,6 @@ WebPoint WebHistoryItem::scrollOffset() const
void WebHistoryItem::setScrollOffset(const WebPoint& scrollOffset)
{
- ensureMutable();
m_private->setScrollPoint(scrollOffset);
}
@@ -147,7 +124,6 @@ float WebHistoryItem::pageScaleFactor() const
void WebHistoryItem::setPageScaleFactor(float scale)
{
- ensureMutable();
m_private->setPageScaleFactor(scale);
}
@@ -158,7 +134,6 @@ WebVector<WebString> WebHistoryItem::documentState() const
void WebHistoryItem::setDocumentState(const WebVector<WebString>& state)
{
- ensureMutable();
// FIXME: would be nice to avoid the intermediate copy
Vector<String> ds;
for (size_t i = 0; i < state.size(); ++i)
@@ -173,7 +148,6 @@ long long WebHistoryItem::itemSequenceNumber() const
void WebHistoryItem::setItemSequenceNumber(long long itemSequenceNumber)
{
- ensureMutable();
m_private->setItemSequenceNumber(itemSequenceNumber);
}
@@ -184,21 +158,9 @@ long long WebHistoryItem::documentSequenceNumber() const
void WebHistoryItem::setDocumentSequenceNumber(long long documentSequenceNumber)
{
- ensureMutable();
m_private->setDocumentSequenceNumber(documentSequenceNumber);
}
-long long WebHistoryItem::targetFrameID() const
-{
- return m_private->targetFrameID();
-}
-
-void WebHistoryItem::setTargetFrameID(long long targetFrameID)
-{
- ensureMutable();
- m_private->setTargetFrameID(targetFrameID);
-}
-
WebSerializedScriptValue WebHistoryItem::stateObject() const
{
return WebSerializedScriptValue(m_private->stateObject());
@@ -206,7 +168,6 @@ WebSerializedScriptValue WebHistoryItem::stateObject() const
void WebHistoryItem::setStateObject(const WebSerializedScriptValue& object)
{
- ensureMutable();
m_private->setStateObject(object);
}
@@ -217,7 +178,6 @@ WebString WebHistoryItem::httpContentType() const
void WebHistoryItem::setHTTPContentType(const WebString& httpContentType)
{
- ensureMutable();
m_private->setFormContentType(httpContentType);
}
@@ -228,33 +188,24 @@ WebHTTPBody WebHistoryItem::httpBody() const
void WebHistoryItem::setHTTPBody(const WebHTTPBody& httpBody)
{
- ensureMutable();
m_private->setFormData(httpBody);
}
-WebVector<WebHistoryItem> WebHistoryItem::children() const
-{
- return m_private->children();
-}
-
-void WebHistoryItem::setChildren(const WebVector<WebHistoryItem>& items)
-{
- ensureMutable();
- m_private->clearChildren();
- for (size_t i = 0; i < items.size(); ++i)
- m_private->addChildItem(items[i]);
-}
-
-void WebHistoryItem::appendToChildren(const WebHistoryItem& item)
-{
- ensureMutable();
- m_private->addChildItem(item);
-}
-
WebVector<WebString> WebHistoryItem::getReferencedFilePaths() const
{
HashSet<String> filePaths;
- addReferencedFilePaths(m_private.get(), filePaths);
+ const FormData* formData = m_private->formData();
+ if (formData) {
+ for (size_t i = 0; i < formData->elements().size(); ++i) {
+ const FormDataElement& element = formData->elements()[i];
+ if (element.m_type == FormDataElement::encodedFile)
+ filePaths.add(element.m_filename);
+ }
+ }
+
+ const Vector<String>& referencedFilePaths = m_private->getReferencedFilePaths();
+ for (size_t i = 0; i < referencedFilePaths.size(); ++i)
+ filePaths.add(referencedFilePaths[i]);
Vector<String> results;
copyToVector(filePaths, results);
@@ -277,10 +228,4 @@ WebHistoryItem::operator PassRefPtr<HistoryItem>() const
return m_private.get();
}
-void WebHistoryItem::ensureMutable()
-{
- if (!m_private->hasOneRef())
- m_private = m_private->copy();
-}
-
} // namespace blink