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

Side by Side Diff: third_party/WebKit/Source/core/html/HTMLObjectElement.cpp

Issue 2583233002: Migrate WTF::Vector::append() to ::push_back() [part 7 of N] (Closed)
Patch Set: Created 4 years 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) 2000 Stefan Schimanski (1Stein@gmx.de) 4 * (C) 2000 Stefan Schimanski (1Stein@gmx.de)
5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights
6 * reserved. 6 * reserved.
7 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 7 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 // Real and WMP require "src" attribute). 133 // Real and WMP require "src" attribute).
134 int srcIndex = -1, dataIndex = -1; 134 int srcIndex = -1, dataIndex = -1;
135 for (unsigned i = 0; i < paramNames->size(); ++i) { 135 for (unsigned i = 0; i < paramNames->size(); ++i) {
136 if (equalIgnoringCase((*paramNames)[i], "src")) 136 if (equalIgnoringCase((*paramNames)[i], "src"))
137 srcIndex = i; 137 srcIndex = i;
138 else if (equalIgnoringCase((*paramNames)[i], "data")) 138 else if (equalIgnoringCase((*paramNames)[i], "data"))
139 dataIndex = i; 139 dataIndex = i;
140 } 140 }
141 141
142 if (srcIndex == -1 && dataIndex != -1) { 142 if (srcIndex == -1 && dataIndex != -1) {
143 paramNames->append("src"); 143 paramNames->push_back("src");
144 paramValues->append((*paramValues)[dataIndex]); 144 paramValues->push_back((*paramValues)[dataIndex]);
145 } 145 }
146 } 146 }
147 147
148 // TODO(schenney): crbug.com/572908 This function should not deal with url or 148 // TODO(schenney): crbug.com/572908 This function should not deal with url or
149 // serviceType! 149 // serviceType!
150 void HTMLObjectElement::parametersForPlugin(Vector<String>& paramNames, 150 void HTMLObjectElement::parametersForPlugin(Vector<String>& paramNames,
151 Vector<String>& paramValues, 151 Vector<String>& paramValues,
152 String& url, 152 String& url,
153 String& serviceType) { 153 String& serviceType) {
154 HashSet<StringImpl*, CaseFoldingHash> uniqueParamNames; 154 HashSet<StringImpl*, CaseFoldingHash> uniqueParamNames;
155 String urlParameter; 155 String urlParameter;
156 156
157 // Scan the PARAM children and store their name/value pairs. 157 // Scan the PARAM children and store their name/value pairs.
158 // Get the URL and type from the params if we don't already have them. 158 // Get the URL and type from the params if we don't already have them.
159 for (HTMLParamElement* p = Traversal<HTMLParamElement>::firstChild(*this); p; 159 for (HTMLParamElement* p = Traversal<HTMLParamElement>::firstChild(*this); p;
160 p = Traversal<HTMLParamElement>::nextSibling(*p)) { 160 p = Traversal<HTMLParamElement>::nextSibling(*p)) {
161 String name = p->name(); 161 String name = p->name();
162 if (name.isEmpty()) 162 if (name.isEmpty())
163 continue; 163 continue;
164 164
165 uniqueParamNames.add(name.impl()); 165 uniqueParamNames.add(name.impl());
166 paramNames.append(p->name()); 166 paramNames.push_back(p->name());
167 paramValues.append(p->value()); 167 paramValues.push_back(p->value());
168 168
169 // TODO(schenney): crbug.com/572908 url adjustment does not belong in this 169 // TODO(schenney): crbug.com/572908 url adjustment does not belong in this
170 // function. 170 // function.
171 if (url.isEmpty() && urlParameter.isEmpty() && 171 if (url.isEmpty() && urlParameter.isEmpty() &&
172 (equalIgnoringCase(name, "src") || equalIgnoringCase(name, "movie") || 172 (equalIgnoringCase(name, "src") || equalIgnoringCase(name, "movie") ||
173 equalIgnoringCase(name, "code") || equalIgnoringCase(name, "url"))) 173 equalIgnoringCase(name, "code") || equalIgnoringCase(name, "url")))
174 urlParameter = stripLeadingAndTrailingHTMLSpaces(p->value()); 174 urlParameter = stripLeadingAndTrailingHTMLSpaces(p->value());
175 // TODO(schenney): crbug.com/572908 serviceType calculation does not belong 175 // TODO(schenney): crbug.com/572908 serviceType calculation does not belong
176 // in this function. 176 // in this function.
177 if (serviceType.isEmpty() && equalIgnoringCase(name, "type")) { 177 if (serviceType.isEmpty() && equalIgnoringCase(name, "type")) {
(...skipping 16 matching lines...) Expand all
194 uniqueParamNames.add( 194 uniqueParamNames.add(
195 codebase.impl()); // pretend we found it in a PARAM already 195 codebase.impl()); // pretend we found it in a PARAM already
196 } 196 }
197 197
198 // Turn the attributes of the <object> element into arrays, but don't override 198 // Turn the attributes of the <object> element into arrays, but don't override
199 // <param> values. 199 // <param> values.
200 AttributeCollection attributes = this->attributes(); 200 AttributeCollection attributes = this->attributes();
201 for (const Attribute& attribute : attributes) { 201 for (const Attribute& attribute : attributes) {
202 const AtomicString& name = attribute.name().localName(); 202 const AtomicString& name = attribute.name().localName();
203 if (!uniqueParamNames.contains(name.impl())) { 203 if (!uniqueParamNames.contains(name.impl())) {
204 paramNames.append(name.getString()); 204 paramNames.push_back(name.getString());
205 paramValues.append(attribute.value().getString()); 205 paramValues.push_back(attribute.value().getString());
206 } 206 }
207 } 207 }
208 208
209 mapDataParamToSrc(&paramNames, &paramValues); 209 mapDataParamToSrc(&paramNames, &paramValues);
210 210
211 // HTML5 says that an object resource's URL is specified by the object's data 211 // HTML5 says that an object resource's URL is specified by the object's data
212 // attribute, not by a param element. However, for compatibility, allow the 212 // attribute, not by a param element. However, for compatibility, allow the
213 // resource's URL to be given by a param named "src", "movie", "code" or "url" 213 // resource's URL to be given by a param named "src", "movie", "code" or "url"
214 // if we know that resource points to a plugin. 214 // if we know that resource points to a plugin.
215 if (url.isEmpty() && !urlParameter.isEmpty()) { 215 if (url.isEmpty() && !urlParameter.isEmpty()) {
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
458 458
459 bool HTMLObjectElement::willUseFallbackContentAtLayout() const { 459 bool HTMLObjectElement::willUseFallbackContentAtLayout() const {
460 return !hasValidClassId() && hasFallbackContent(); 460 return !hasValidClassId() && hasFallbackContent();
461 } 461 }
462 462
463 void HTMLObjectElement::associateWith(HTMLFormElement* form) { 463 void HTMLObjectElement::associateWith(HTMLFormElement* form) {
464 associateByParser(form); 464 associateByParser(form);
465 }; 465 };
466 466
467 } // namespace blink 467 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/html/HTMLMetaElement.cpp ('k') | third_party/WebKit/Source/core/html/HTMLOptionsCollection.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698