Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / loader / FormSubmission.cpp
index 8b6c22b..5ff9dfb 100644 (file)
@@ -32,6 +32,7 @@
 #include "core/loader/FormSubmission.h"
 
 #include "core/HTMLNames.h"
+#include "core/InputTypeNames.h"
 #include "core/dom/Document.h"
 #include "core/events/Event.h"
 #include "core/html/DOMFormData.h"
@@ -41,7 +42,6 @@
 #include "core/html/parser/HTMLParserIdioms.h"
 #include "core/loader/FrameLoadRequest.h"
 #include "core/loader/FrameLoader.h"
-#include "platform/RuntimeEnabledFeatures.h"
 #include "platform/heap/Handle.h"
 #include "platform/network/FormData.h"
 #include "platform/network/FormDataBuilder.h"
@@ -49,7 +49,7 @@
 #include "wtf/text/StringBuilder.h"
 #include "wtf/text/TextEncoding.h"
 
-namespace WebCore {
+namespace blink {
 
 using namespace HTMLNames;
 
@@ -83,9 +83,10 @@ static void appendMailtoPostFormDataToURL(KURL& url, const FormData& data, const
     url.setQuery(query.toString());
 }
 
-void FormSubmission::Attributes::parseAction(const Document& document, const String& action)
+void FormSubmission::Attributes::parseAction(const String& action)
 {
-    m_action = action.isEmpty() ? KURL() : document.completeURL(stripLeadingAndTrailingHTMLSpaces(action));
+    // m_action cannot be converted to KURL (bug https://crbug.com/388664)
+    m_action = stripLeadingAndTrailingHTMLSpaces(action);
 }
 
 AtomicString FormSubmission::Attributes::parseEncodingType(const String& type)
@@ -107,7 +108,7 @@ FormSubmission::Method FormSubmission::Attributes::parseMethodType(const String&
 {
     if (equalIgnoringCase(type, "post"))
         return FormSubmission::PostMethod;
-    if (RuntimeEnabledFeatures::dialogElementEnabled() && equalIgnoringCase(type, "dialog"))
+    if (equalIgnoringCase(type, "dialog"))
         return FormSubmission::DialogMethod;
     return FormSubmission::GetMethod;
 }
@@ -179,7 +180,7 @@ PassRefPtrWillBeRawPtr<FormSubmission> FormSubmission::create(HTMLFormElement* f
     if (submitButton) {
         AtomicString attributeValue;
         if (!(attributeValue = submitButton->fastGetAttribute(formactionAttr)).isNull())
-            copiedAttributes.parseAction(form->document(), attributeValue);
+            copiedAttributes.parseAction(attributeValue);
         if (!(attributeValue = submitButton->fastGetAttribute(formenctypeAttr)).isNull())
             copiedAttributes.updateEncodingType(attributeValue);
         if (!(attributeValue = submitButton->fastGetAttribute(formmethodAttr)).isNull())
@@ -195,7 +196,7 @@ PassRefPtrWillBeRawPtr<FormSubmission> FormSubmission::create(HTMLFormElement* f
     }
 
     Document& document = form->document();
-    KURL actionURL = copiedAttributes.action().isEmpty() ? document.url() : copiedAttributes.action();
+    KURL actionURL = document.completeURL(copiedAttributes.action().isEmpty() ? document.url().string() : copiedAttributes.action());
     bool isMailtoForm = actionURL.protocolIs("mailto");
     bool isMultiPartForm = false;
     AtomicString encodingType = copiedAttributes.encodingType();
@@ -219,7 +220,7 @@ PassRefPtrWillBeRawPtr<FormSubmission> FormSubmission::create(HTMLFormElement* f
             control->appendFormData(*domFormData, isMultiPartForm);
         if (isHTMLInputElement(element)) {
             HTMLInputElement& input = toHTMLInputElement(element);
-            if (input.isPasswordField() && !input.value().isEmpty())
+            if (input.type() == InputTypeNames::password && !input.value().isEmpty())
                 containsPasswordData = true;
         }
     }
@@ -281,7 +282,7 @@ void FormSubmission::populateFrameLoadRequest(FrameLoadRequest& frameRequest)
     }
 
     frameRequest.resourceRequest().setURL(requestURL());
-    FrameLoader::addHTTPOriginIfNeeded(frameRequest.resourceRequest(), AtomicString(m_origin));
+    frameRequest.resourceRequest().addHTTPOriginIfNeeded(AtomicString(m_origin));
 }
 
 }