| Index: WebCore/html/HTMLFormElement.cpp
|
| ===================================================================
|
| --- WebCore/html/HTMLFormElement.cpp (revision 67715)
|
| +++ WebCore/html/HTMLFormElement.cpp (working copy)
|
| @@ -65,7 +65,7 @@
|
|
|
| HTMLFormElement::HTMLFormElement(const QualifiedName& tagName, Document* document)
|
| : HTMLElement(tagName, document)
|
| - , m_submissionTrigger(NotSubmittedByJavaScript)
|
| + , m_wasUserSubmitted(false)
|
| , m_autocomplete(true)
|
| , m_insubmit(false)
|
| , m_doingsubmit(false)
|
| @@ -106,13 +106,13 @@
|
| {
|
| if (!isDemoted())
|
| return HTMLElement::rendererIsNeeded(style);
|
| -
|
| +
|
| Node* node = parentNode();
|
| RenderObject* parentRenderer = node->renderer();
|
| bool parentIsTableElementPart = (parentRenderer->isTable() && node->hasTagName(tableTag))
|
| || (parentRenderer->isTableRow() && node->hasTagName(trTag))
|
| || (parentRenderer->isTableSection() && node->hasTagName(tbodyTag))
|
| - || (parentRenderer->isTableCol() && node->hasTagName(colTag))
|
| + || (parentRenderer->isTableCol() && node->hasTagName(colTag))
|
| || (parentRenderer->isTableCell() && node->hasTagName(trTag));
|
|
|
| if (!parentIsTableElementPart)
|
| @@ -139,7 +139,7 @@
|
| {
|
| if (document()->isHTMLDocument())
|
| static_cast<HTMLDocument*>(document())->removeNamedItem(m_name);
|
| -
|
| +
|
| HTMLElement::removedFromDocument();
|
| }
|
|
|
| @@ -263,7 +263,7 @@
|
| m_insubmit = false;
|
|
|
| if (m_doingsubmit)
|
| - submit(event, true, false, NotSubmittedByJavaScript);
|
| + submit(event, true, true, NotSubmittedByJavaScript);
|
|
|
| return m_doingsubmit;
|
| }
|
| @@ -271,12 +271,12 @@
|
| void HTMLFormElement::submit(Frame* javaScriptActiveFrame)
|
| {
|
| if (javaScriptActiveFrame)
|
| - submit(0, false, !javaScriptActiveFrame->script()->anyPageIsProcessingUserGesture(), SubmittedByJavaScript);
|
| + submit(0, false, javaScriptActiveFrame->script()->anyPageIsProcessingUserGesture(), SubmittedByJavaScript);
|
| else
|
| - submit(0, false, false, NotSubmittedByJavaScript);
|
| + submit(0, false, true, NotSubmittedByJavaScript);
|
| }
|
|
|
| -void HTMLFormElement::submit(Event* event, bool activateSubmitButton, bool lockHistory, FormSubmissionTrigger formSubmissionTrigger)
|
| +void HTMLFormElement::submit(Event* event, bool activateSubmitButton, bool processingUserGesture, FormSubmissionTrigger formSubmissionTrigger)
|
| {
|
| FrameView* view = document()->view();
|
| Frame* frame = document()->frame();
|
| @@ -289,11 +289,11 @@
|
| }
|
|
|
| m_insubmit = true;
|
| - m_submissionTrigger = formSubmissionTrigger;
|
| + m_wasUserSubmitted = processingUserGesture;
|
|
|
| HTMLFormControlElement* firstSuccessfulSubmitButton = 0;
|
| bool needButtonActivation = activateSubmitButton; // do we need to activate a submit button?
|
| -
|
| +
|
| for (unsigned i = 0; i < m_associatedElements.size(); ++i) {
|
| HTMLFormControlElement* control = m_associatedElements[i];
|
| if (needButtonActivation) {
|
| @@ -307,11 +307,11 @@
|
| if (needButtonActivation && firstSuccessfulSubmitButton)
|
| firstSuccessfulSubmitButton->setActivatedSubmit(true);
|
|
|
| - frame->loader()->submitForm(FormSubmission::create(this, m_attributes, event, lockHistory, formSubmissionTrigger));
|
| + frame->loader()->submitForm(FormSubmission::create(this, m_attributes, event, !processingUserGesture, formSubmissionTrigger));
|
|
|
| if (needButtonActivation && firstSuccessfulSubmitButton)
|
| firstSuccessfulSubmitButton->setActivatedSubmit(false);
|
| -
|
| +
|
| m_doingsubmit = m_insubmit = false;
|
| }
|
|
|
| @@ -355,7 +355,7 @@
|
| } else if (attr->name() == autocompleteAttr) {
|
| m_autocomplete = !equalIgnoringCase(attr->value(), "off");
|
| if (!m_autocomplete)
|
| - document()->registerForDocumentActivationCallbacks(this);
|
| + document()->registerForDocumentActivationCallbacks(this);
|
| else
|
| document()->unregisterForDocumentActivationCallbacks(this);
|
| } else if (attr->name() == onsubmitAttr)
|
| @@ -482,9 +482,9 @@
|
| return getAttribute(targetAttr);
|
| }
|
|
|
| -FormSubmissionTrigger HTMLFormElement::submissionTrigger() const
|
| +bool HTMLFormElement::wasUserSubmitted() const
|
| {
|
| - return m_submissionTrigger;
|
| + return m_wasUserSubmitted;
|
| }
|
|
|
| HTMLFormControlElement* HTMLFormElement::defaultButton() const
|
| @@ -556,13 +556,13 @@
|
| }
|
| // name has been accessed, remember it
|
| if (namedItems.size() && aliasElem != namedItems.first())
|
| - addElementAlias(static_cast<HTMLFormControlElement*>(namedItems.first().get()), name);
|
| + addElementAlias(static_cast<HTMLFormControlElement*>(namedItems.first().get()), name);
|
| }
|
|
|
| void HTMLFormElement::documentDidBecomeActive()
|
| {
|
| ASSERT(!m_autocomplete);
|
| -
|
| +
|
| for (unsigned i = 0; i < m_associatedElements.size(); ++i)
|
| m_associatedElements[i]->reset();
|
| }
|
|
|