Changeset 62916 in webkit
- Timestamp:
- Jul 9, 2010 1:26:09 AM (14 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r62914 r62916 1 2010-07-09 Eric Seidel <eric@webkit.org> 2 3 Reviewed by Adam Barth. 4 5 Add insertForeignElement in preparation for adding "in foreign content" support 6 https://bugs.webkit.org/show_bug.cgi?id=41940 7 8 No functional changes, thus no tests. 9 10 * html/HTMLConstructionSite.cpp: 11 (WebCore::HTMLConstructionSite::insertForeignElement): 12 (WebCore::HTMLConstructionSite::createElement): 13 (WebCore::HTMLConstructionSite::createHTMLElement): 14 * html/HTMLConstructionSite.h: 15 1 16 2010-07-09 Adam Barth <abarth@webkit.org> 2 17 -
trunk/WebCore/html/HTMLConstructionSite.cpp
r62912 r62916 220 220 } 221 221 222 void HTMLConstructionSite::insertForeignElement(AtomicHTMLToken& token, const AtomicString& namespaceURI) 223 { 224 ASSERT(token.type() == HTMLToken::StartTag); 225 notImplemented(); // parseError when xmlns or xmlns:xlink are wrong. 226 227 RefPtr<Element> element = attach(currentElement(), createElement(token, namespaceURI)); 228 if (!token.selfClosing()) 229 m_openElements.push(element); 230 } 231 222 232 void HTMLConstructionSite::insertTextNode(const String& characters) 223 233 { … … 234 244 } 235 245 246 PassRefPtr<Element> HTMLConstructionSite::createElement(AtomicHTMLToken& token, const AtomicString& namespaceURI) 247 { 248 QualifiedName tagName(nullAtom, token.name(), namespaceURI); 249 RefPtr<Element> element = m_document->createElement(tagName, true); 250 element->setAttributeMap(token.takeAtributes(), m_fragmentScriptingPermission); 251 return element.release(); 252 } 253 236 254 PassRefPtr<Element> HTMLConstructionSite::createHTMLElement(AtomicHTMLToken& token) 237 255 { 238 RefPtr<Element> element = HTMLElementFactory::createHTMLElement(QualifiedName(nullAtom, token.name(), xhtmlNamespaceURI), m_document, 0);239 element->setAttributeMap(token.takeAtributes(), m_fragmentScriptingPermission);256 RefPtr<Element> element = createElement(token, xhtmlNamespaceURI); 257 ASSERT(element->isHTMLElement()); 240 258 return element.release(); 241 259 } -
trunk/WebCore/html/HTMLConstructionSite.h
r62912 r62916 58 58 void insertScriptElement(AtomicHTMLToken&); 59 59 void insertTextNode(const String&); 60 void insertForeignElement(AtomicHTMLToken&, const AtomicString& namespaceURI); 60 61 61 62 void insertHTMLHtmlStartTagBeforeHTML(AtomicHTMLToken&); … … 111 112 PassRefPtr<ChildType> attach(Node* parent, PassRefPtr<ChildType> prpChild); 112 113 114 PassRefPtr<Element> createElement(AtomicHTMLToken&, const AtomicString& namespaceURI); 115 113 116 PassRefPtr<Element> createHTMLElementAndAttachToCurrent(AtomicHTMLToken&); 114 117 void mergeAttributesFromTokenIntoElement(AtomicHTMLToken&, Element*);
Note: See TracChangeset
for help on using the changeset viewer.