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

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

Issue 2023093003: Upgrade in-document custom elements when an element is defined. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix ASAN failure in test helper. 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 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 #include "core/dom/NamedNodeMap.h" 66 #include "core/dom/NamedNodeMap.h"
67 #include "core/dom/NodeComputedStyle.h" 67 #include "core/dom/NodeComputedStyle.h"
68 #include "core/dom/NodeIntersectionObserverData.h" 68 #include "core/dom/NodeIntersectionObserverData.h"
69 #include "core/dom/PresentationAttributeStyle.h" 69 #include "core/dom/PresentationAttributeStyle.h"
70 #include "core/dom/PseudoElement.h" 70 #include "core/dom/PseudoElement.h"
71 #include "core/dom/ScriptableDocumentParser.h" 71 #include "core/dom/ScriptableDocumentParser.h"
72 #include "core/dom/SelectorQuery.h" 72 #include "core/dom/SelectorQuery.h"
73 #include "core/dom/StyleChangeReason.h" 73 #include "core/dom/StyleChangeReason.h"
74 #include "core/dom/StyleEngine.h" 74 #include "core/dom/StyleEngine.h"
75 #include "core/dom/Text.h" 75 #include "core/dom/Text.h"
76 #include "core/dom/custom/CustomElement.h"
77 #include "core/dom/custom/CustomElementsRegistry.h"
76 #include "core/dom/custom/V0CustomElement.h" 78 #include "core/dom/custom/V0CustomElement.h"
77 #include "core/dom/custom/V0CustomElementRegistrationContext.h" 79 #include "core/dom/custom/V0CustomElementRegistrationContext.h"
78 #include "core/dom/shadow/InsertionPoint.h" 80 #include "core/dom/shadow/InsertionPoint.h"
79 #include "core/dom/shadow/ShadowRoot.h" 81 #include "core/dom/shadow/ShadowRoot.h"
80 #include "core/dom/shadow/ShadowRootInit.h" 82 #include "core/dom/shadow/ShadowRootInit.h"
81 #include "core/dom/shadow/SlotAssignment.h" 83 #include "core/dom/shadow/SlotAssignment.h"
82 #include "core/editing/EditingUtilities.h" 84 #include "core/editing/EditingUtilities.h"
83 #include "core/editing/FrameSelection.h" 85 #include "core/editing/FrameSelection.h"
84 #include "core/editing/iterators/TextIterator.h" 86 #include "core/editing/iterators/TextIterator.h"
85 #include "core/editing/serializers/Serialization.h" 87 #include "core/editing/serializers/Serialization.h"
(...skipping 1328 matching lines...) Expand 10 before | Expand all | Expand 10 after
1414 if (!insertionPoint->isInTreeScope()) 1416 if (!insertionPoint->isInTreeScope())
1415 return InsertionDone; 1417 return InsertionDone;
1416 1418
1417 if (hasRareData()) { 1419 if (hasRareData()) {
1418 ElementRareData* rareData = elementRareData(); 1420 ElementRareData* rareData = elementRareData();
1419 rareData->clearClassListValueForQuirksMode(); 1421 rareData->clearClassListValueForQuirksMode();
1420 if (rareData->intersectionObserverData()) 1422 if (rareData->intersectionObserverData())
1421 rareData->intersectionObserverData()->activateValidIntersectionObser vers(*this); 1423 rareData->intersectionObserverData()->activateValidIntersectionObser vers(*this);
1422 } 1424 }
1423 1425
1424 if (isUpgradedV0CustomElement() && inShadowIncludingDocument()) 1426 if (inShadowIncludingDocument()) {
1425 V0CustomElement::didAttach(this, document()); 1427 if (getCustomElementState() != CustomElementState::Custom && CustomEleme nt::descriptorMayMatch(*this)) {
1428 if (CustomElementsRegistry* registry = CustomElement::registry(*this ))
1429 registry->addCandidate(this);
1430 }
1431 if (isUpgradedV0CustomElement())
1432 V0CustomElement::didAttach(this, document());
1433 }
1426 1434
1427 TreeScope& scope = insertionPoint->treeScope(); 1435 TreeScope& scope = insertionPoint->treeScope();
1428 if (scope != treeScope()) 1436 if (scope != treeScope())
1429 return InsertionDone; 1437 return InsertionDone;
1430 1438
1431 const AtomicString& idValue = getIdAttribute(); 1439 const AtomicString& idValue = getIdAttribute();
1432 if (!idValue.isNull()) 1440 if (!idValue.isNull())
1433 updateId(scope, nullAtom, idValue); 1441 updateId(scope, nullAtom, idValue);
1434 1442
1435 const AtomicString& nameValue = getNameAttribute(); 1443 const AtomicString& nameValue = getNameAttribute();
(...skipping 2273 matching lines...) Expand 10 before | Expand all | Expand 10 after
3709 3717
3710 DEFINE_TRACE_WRAPPERS(Element) 3718 DEFINE_TRACE_WRAPPERS(Element)
3711 { 3719 {
3712 if (hasRareData()) { 3720 if (hasRareData()) {
3713 visitor->traceWrappers(elementRareData()); 3721 visitor->traceWrappers(elementRareData());
3714 } 3722 }
3715 ContainerNode::traceWrappers(visitor); 3723 ContainerNode::traceWrappers(visitor);
3716 } 3724 }
3717 3725
3718 } // namespace blink 3726 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/core.gypi ('k') | third_party/WebKit/Source/core/dom/custom/CEReactionsScope.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698