Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(474)

Side by Side Diff: Source/core/html/HTMLFormControlElement.cpp

Issue 60573007: Non-activated default buttons prevent implicit form submission. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 Apple Inc. All rights reserved. 5 * Copyright (C) 2004, 2005, 2006, 2007 Apple Inc. All rights reserved.
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 485 matching lines...) Expand 10 before | Expand all | Expand 10 after
496 { 496 {
497 HTMLElement::dispatchBlurEvent(newFocusedElement); 497 HTMLElement::dispatchBlurEvent(newFocusedElement);
498 hideVisibleValidationMessage(); 498 hideVisibleValidationMessage();
499 } 499 }
500 500
501 HTMLFormElement* HTMLFormControlElement::virtualForm() const 501 HTMLFormElement* HTMLFormControlElement::virtualForm() const
502 { 502 {
503 return FormAssociatedElement::form(); 503 return FormAssociatedElement::form();
504 } 504 }
505 505
506 bool HTMLFormControlElement::isSuccessfulSubmitButton() const
507 {
508 // HTML spec says that buttons must have names to be considered successful.
509 // However, other browsers do not impose this constraint. So we do not.
510 return canBeSuccessfulSubmitButton() && !isDisabledFormControl();
511 }
512
506 bool HTMLFormControlElement::isDefaultButtonForForm() const 513 bool HTMLFormControlElement::isDefaultButtonForForm() const
507 { 514 {
508 return isSuccessfulSubmitButton() && form() && form()->defaultButton() == th is; 515 return isSuccessfulSubmitButton() && form() && form()->defaultButton() == th is;
509 } 516 }
510 517
511 HTMLFormControlElement* HTMLFormControlElement::enclosingFormControlElement(Node * node) 518 HTMLFormControlElement* HTMLFormControlElement::enclosingFormControlElement(Node * node)
512 { 519 {
513 for (; node; node = node->parentNode()) { 520 for (; node; node = node->parentNode()) {
514 if (node->isElementNode() && toElement(node)->isFormControlElement()) 521 if (node->isElementNode() && toElement(node)->isFormControlElement())
515 return toHTMLFormControlElement(node); 522 return toHTMLFormControlElement(node);
516 } 523 }
517 return 0; 524 return 0;
518 } 525 }
519 526
520 } // namespace Webcore 527 } // namespace Webcore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698