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

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

Issue 9805002: Revert 105710 - Introduce RadioButtonGroup class to keep track of the group members and required st… (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1025/
Patch Set: Created 8 years, 9 months 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
« no previous file with comments | « Source/WebCore/html/HTMLFormControlElement.h ('k') | Source/WebCore/html/HTMLInputElement.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 bool oldReadOnly = m_readOnly; 115 bool oldReadOnly = m_readOnly;
116 m_readOnly = !attr->isNull(); 116 m_readOnly = !attr->isNull();
117 if (oldReadOnly != m_readOnly) { 117 if (oldReadOnly != m_readOnly) {
118 setNeedsStyleRecalc(); 118 setNeedsStyleRecalc();
119 if (renderer() && renderer()->style()->hasAppearance()) 119 if (renderer() && renderer()->style()->hasAppearance())
120 renderer()->theme()->stateChanged(renderer(), ReadOnlyState); 120 renderer()->theme()->stateChanged(renderer(), ReadOnlyState);
121 } 121 }
122 } else if (attr->name() == requiredAttr) { 122 } else if (attr->name() == requiredAttr) {
123 bool oldRequired = m_required; 123 bool oldRequired = m_required;
124 m_required = !attr->isNull(); 124 m_required = !attr->isNull();
125 if (oldRequired != m_required) 125 if (oldRequired != m_required) {
126 requiredAttributeChanged(); 126 setNeedsValidityCheck();
127 setNeedsStyleRecalc(); // Updates for :required :optional classes.
128 }
127 } else 129 } else
128 HTMLElement::parseMappedAttribute(attr); 130 HTMLElement::parseMappedAttribute(attr);
129 setNeedsWillValidateCheck(); 131 setNeedsWillValidateCheck();
130 } 132 }
131 133
132 void HTMLFormControlElement::requiredAttributeChanged()
133 {
134 setNeedsValidityCheck();
135 // Style recalculation is needed because style selectors may include
136 // :required and :optional pseudo-classes.
137 setNeedsStyleRecalc();
138 }
139
140 static bool shouldAutofocus(HTMLFormControlElement* element) 134 static bool shouldAutofocus(HTMLFormControlElement* element)
141 { 135 {
142 if (!element->autofocus()) 136 if (!element->autofocus())
143 return false; 137 return false;
144 if (!element->renderer()) 138 if (!element->renderer())
145 return false; 139 return false;
146 if (element->document()->ignoreAutofocus()) 140 if (element->document()->ignoreAutofocus())
147 return false; 141 return false;
148 if (element->document()->isSandboxed(SandboxAutomaticFeatures)) 142 if (element->document()->isSandboxed(SandboxAutomaticFeatures))
149 return false; 143 return false;
(...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after
490 NodeListsNodeData* nodeLists = Node::ensureRareData()->ensureNodeLists(this) ; 484 NodeListsNodeData* nodeLists = Node::ensureRareData()->ensureNodeLists(this) ;
491 if (nodeLists->m_labelsNodeListCache) 485 if (nodeLists->m_labelsNodeListCache)
492 return nodeLists->m_labelsNodeListCache; 486 return nodeLists->m_labelsNodeListCache;
493 487
494 RefPtr<LabelsNodeList> list = LabelsNodeList::create(this); 488 RefPtr<LabelsNodeList> list = LabelsNodeList::create(this);
495 nodeLists->m_labelsNodeListCache = list.get(); 489 nodeLists->m_labelsNodeListCache = list.get();
496 return list.release(); 490 return list.release();
497 } 491 }
498 492
499 } // namespace Webcore 493 } // namespace Webcore
OLDNEW
« no previous file with comments | « Source/WebCore/html/HTMLFormControlElement.h ('k') | Source/WebCore/html/HTMLInputElement.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698