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

Side by Side Diff: third_party/WebKit/Source/core/dom/Element.cpp

Issue 2067853002: Upgrade custom elements when inserting a node (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: dominicc nits Created 4 years, 6 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
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 Peter Kelly (pmk@post.com) 4 * (C) 2001 Peter Kelly (pmk@post.com)
5 * (C) 2001 Dirk Mueller (mueller@kde.org) 5 * (C) 2001 Dirk Mueller (mueller@kde.org)
6 * (C) 2007 David Smith (catfish.man@gmail.com) 6 * (C) 2007 David Smith (catfish.man@gmail.com)
7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved. 7 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc. All rights reserved.
8 * (C) 2007 Eric Seidel (eric@webkit.org) 8 * (C) 2007 Eric Seidel (eric@webkit.org)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 1406 matching lines...) Expand 10 before | Expand all | Expand 10 after
1417 return InsertionDone; 1417 return InsertionDone;
1418 1418
1419 if (hasRareData()) { 1419 if (hasRareData()) {
1420 ElementRareData* rareData = elementRareData(); 1420 ElementRareData* rareData = elementRareData();
1421 rareData->clearClassListValueForQuirksMode(); 1421 rareData->clearClassListValueForQuirksMode();
1422 if (rareData->intersectionObserverData()) 1422 if (rareData->intersectionObserverData())
1423 rareData->intersectionObserverData()->activateValidIntersectionObser vers(*this); 1423 rareData->intersectionObserverData()->activateValidIntersectionObser vers(*this);
1424 } 1424 }
1425 1425
1426 if (inShadowIncludingDocument()) { 1426 if (inShadowIncludingDocument()) {
1427 if (getCustomElementState() == CustomElementState::Custom) { 1427 if (getCustomElementState() == CustomElementState::Custom)
1428 CustomElement::enqueueConnectedCallback(this); 1428 CustomElement::enqueueConnectedCallback(this);
1429 } else if (isUpgradedV0CustomElement()) { 1429 else if (isUpgradedV0CustomElement())
1430 V0CustomElement::didAttach(this, document()); 1430 V0CustomElement::didAttach(this, document());
1431 } else if (getCustomElementState() == CustomElementState::Undefined) { 1431 else if (getCustomElementState() == CustomElementState::Undefined)
1432 if (CustomElementsRegistry* registry = CustomElement::registry(*this )) 1432 CustomElement::tryToUpgrade(this);
1433 registry->addCandidate(this);
1434 }
1435 } 1433 }
1436 1434
1437 TreeScope& scope = insertionPoint->treeScope(); 1435 TreeScope& scope = insertionPoint->treeScope();
1438 if (scope != treeScope()) 1436 if (scope != treeScope())
1439 return InsertionDone; 1437 return InsertionDone;
1440 1438
1441 const AtomicString& idValue = getIdAttribute(); 1439 const AtomicString& idValue = getIdAttribute();
1442 if (!idValue.isNull()) 1440 if (!idValue.isNull())
1443 updateId(scope, nullAtom, idValue); 1441 updateId(scope, nullAtom, idValue);
1444 1442
(...skipping 2278 matching lines...) Expand 10 before | Expand all | Expand 10 after
3723 3721
3724 DEFINE_TRACE_WRAPPERS(Element) 3722 DEFINE_TRACE_WRAPPERS(Element)
3725 { 3723 {
3726 if (hasRareData()) { 3724 if (hasRareData()) {
3727 visitor->traceWrappers(elementRareData()); 3725 visitor->traceWrappers(elementRareData());
3728 } 3726 }
3729 ContainerNode::traceWrappers(visitor); 3727 ContainerNode::traceWrappers(visitor);
3730 } 3728 }
3731 3729
3732 } // namespace blink 3730 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698