| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. |
| 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 6 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 | 272 |
| 273 // Interactive validation must be done before dispatching the submit event. | 273 // Interactive validation must be done before dispatching the submit event. |
| 274 if (!validateInteractively(event)) { | 274 if (!validateInteractively(event)) { |
| 275 m_isSubmittingOrPreparingForSubmission = false; | 275 m_isSubmittingOrPreparingForSubmission = false; |
| 276 return false; | 276 return false; |
| 277 } | 277 } |
| 278 | 278 |
| 279 StringPairVector controlNamesAndValues; | 279 StringPairVector controlNamesAndValues; |
| 280 getTextFieldValues(controlNamesAndValues); | 280 getTextFieldValues(controlNamesAndValues); |
| 281 RefPtr<FormState> formState = FormState::create(this, controlNamesAndValues,
&document(), NotSubmittedByJavaScript); | 281 RefPtr<FormState> formState = FormState::create(this, controlNamesAndValues,
&document(), NotSubmittedByJavaScript); |
| 282 frame->loader()->client()->dispatchWillSendSubmitEvent(formState.release()); | 282 frame->loader().client()->dispatchWillSendSubmitEvent(formState.release()); |
| 283 | 283 |
| 284 if (dispatchEvent(Event::createCancelableBubble(EventTypeNames::submit))) | 284 if (dispatchEvent(Event::createCancelableBubble(EventTypeNames::submit))) |
| 285 m_shouldSubmit = true; | 285 m_shouldSubmit = true; |
| 286 | 286 |
| 287 m_isSubmittingOrPreparingForSubmission = false; | 287 m_isSubmittingOrPreparingForSubmission = false; |
| 288 | 288 |
| 289 if (m_shouldSubmit) | 289 if (m_shouldSubmit) |
| 290 submit(event, true, true, NotSubmittedByJavaScript); | 290 submit(event, true, true, NotSubmittedByJavaScript); |
| 291 | 291 |
| 292 return m_shouldSubmit; | 292 return m_shouldSubmit; |
| (...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 391 document().addConsoleMessage(SecurityMessageSource, ErrorMessageLevel, "
Blocked form submission to '" + submission->action().elidedString() + "' because
the form's frame is sandboxed and the 'allow-forms' permission is not set."); | 391 document().addConsoleMessage(SecurityMessageSource, ErrorMessageLevel, "
Blocked form submission to '" + submission->action().elidedString() + "' because
the form's frame is sandboxed and the 'allow-forms' permission is not set."); |
| 392 return; | 392 return; |
| 393 } | 393 } |
| 394 | 394 |
| 395 if (protocolIsJavaScript(submission->action())) { | 395 if (protocolIsJavaScript(submission->action())) { |
| 396 if (!document().contentSecurityPolicy()->allowFormAction(KURL(submission
->action()))) | 396 if (!document().contentSecurityPolicy()->allowFormAction(KURL(submission
->action()))) |
| 397 return; | 397 return; |
| 398 document().frame()->script().executeScriptIfJavaScriptURL(submission->ac
tion()); | 398 document().frame()->script().executeScriptIfJavaScriptURL(submission->ac
tion()); |
| 399 return; | 399 return; |
| 400 } | 400 } |
| 401 submission->setReferrer(document().frame()->loader()->outgoingReferrer()); | 401 submission->setReferrer(document().frame()->loader().outgoingReferrer()); |
| 402 submission->setOrigin(document().frame()->loader()->outgoingOrigin()); | 402 submission->setOrigin(document().frame()->loader().outgoingOrigin()); |
| 403 | 403 |
| 404 document().frame()->navigationScheduler().scheduleFormSubmission(submission)
; | 404 document().frame()->navigationScheduler().scheduleFormSubmission(submission)
; |
| 405 } | 405 } |
| 406 | 406 |
| 407 void HTMLFormElement::reset() | 407 void HTMLFormElement::reset() |
| 408 { | 408 { |
| 409 Frame* frame = document().frame(); | 409 Frame* frame = document().frame(); |
| 410 if (m_isInResetFunction || !frame) | 410 if (m_isInResetFunction || !frame) |
| 411 return; | 411 return; |
| 412 | 412 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 432 return; | 432 return; |
| 433 | 433 |
| 434 if (!shouldAutocomplete() || !UserGestureIndicator::processingUserGesture())
{ | 434 if (!shouldAutocomplete() || !UserGestureIndicator::processingUserGesture())
{ |
| 435 finishRequestAutocomplete(AutocompleteResultErrorDisabled); | 435 finishRequestAutocomplete(AutocompleteResultErrorDisabled); |
| 436 return; | 436 return; |
| 437 } | 437 } |
| 438 | 438 |
| 439 StringPairVector controlNamesAndValues; | 439 StringPairVector controlNamesAndValues; |
| 440 getTextFieldValues(controlNamesAndValues); | 440 getTextFieldValues(controlNamesAndValues); |
| 441 RefPtr<FormState> formState = FormState::create(this, controlNamesAndValues,
&document(), SubmittedByJavaScript); | 441 RefPtr<FormState> formState = FormState::create(this, controlNamesAndValues,
&document(), SubmittedByJavaScript); |
| 442 frame->loader()->client()->didRequestAutocomplete(formState.release()); | 442 frame->loader().client()->didRequestAutocomplete(formState.release()); |
| 443 } | 443 } |
| 444 | 444 |
| 445 void HTMLFormElement::finishRequestAutocomplete(AutocompleteResult result) | 445 void HTMLFormElement::finishRequestAutocomplete(AutocompleteResult result) |
| 446 { | 446 { |
| 447 RefPtr<Event> event; | 447 RefPtr<Event> event; |
| 448 if (result == AutocompleteResultSuccess) | 448 if (result == AutocompleteResultSuccess) |
| 449 event = Event::create(EventTypeNames::autocomplete); | 449 event = Event::create(EventTypeNames::autocomplete); |
| 450 else if (result == AutocompleteResultErrorDisabled) | 450 else if (result == AutocompleteResultErrorDisabled) |
| 451 event = AutocompleteErrorEvent::create("disabled"); | 451 event = AutocompleteErrorEvent::create("disabled"); |
| 452 else if (result == AutocompleteResultErrorCancel) | 452 else if (result == AutocompleteResultErrorCancel) |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 806 } | 806 } |
| 807 | 807 |
| 808 void HTMLFormElement::setDemoted(bool demoted) | 808 void HTMLFormElement::setDemoted(bool demoted) |
| 809 { | 809 { |
| 810 if (demoted) | 810 if (demoted) |
| 811 UseCounter::count(document(), UseCounter::DemotedFormElement); | 811 UseCounter::count(document(), UseCounter::DemotedFormElement); |
| 812 m_wasDemoted = demoted; | 812 m_wasDemoted = demoted; |
| 813 } | 813 } |
| 814 | 814 |
| 815 } // namespace | 815 } // namespace |
| OLD | NEW |