Chromium Code Reviews| Index: third_party/WebKit/Source/core/dom/Node.cpp | 
| diff --git a/third_party/WebKit/Source/core/dom/Node.cpp b/third_party/WebKit/Source/core/dom/Node.cpp | 
| index 7018a3bc473fb3124ca0479161f0bceaf3d82b9b..15b68633bc7978861bf511a393fe43df9fa27d28 100644 | 
| --- a/third_party/WebKit/Source/core/dom/Node.cpp | 
| +++ b/third_party/WebKit/Source/core/dom/Node.cpp | 
| @@ -2303,6 +2303,37 @@ bool Node::isUserActionElementFocused() const | 
| return document().userActionElements().isFocused(this); | 
| } | 
| +void Node::setCustomElementState(CustomElementState newState) | 
| +{ | 
| + CustomElementState oldState = getCustomElementState(); | 
| + | 
| + switch (newState) { | 
| + case CustomElementState::Uncustomized: | 
| + NOTREACHED(); // Everything starts in this state | 
| + return; | 
| + | 
| + case CustomElementState::Undefined: | 
| + DCHECK(CustomElementState::Uncustomized == oldState); | 
| + break; | 
| + | 
| + case CustomElementState::Customized: | 
| + DCHECK(CustomElementState::Undefined == oldState); | 
| 
 
dominicc (has gone to gerrit)
2016/05/18 07:56:21
When upgrading, don't you go from undefined -> cus
 
kojii
2016/05/18 08:32:15
Do you mean uncustomized -> customized?
From crea
 
 | 
| + break; | 
| + } | 
| + | 
| + DCHECK(isHTMLElement()); | 
| + DCHECK(V0Upgraded != getV0CustomElementState()); | 
| + | 
| + setFlag(CustomElementFlag); | 
| + if (newState == CustomElementState::Customized) | 
| + setFlag(CustomElementCustomizedFlag); | 
| + DCHECK(newState == getCustomElementState()); | 
| + | 
| + // TODO(kojii): Should fire pseudoStateChanged() when :defined selector is | 
| + // ready. | 
| + // toElement(this)->pseudoStateChanged(CSSSelector::PseudoDefined); | 
| +} | 
| + | 
| void Node::setV0CustomElementState(V0CustomElementState newState) | 
| { | 
| V0CustomElementState oldState = getV0CustomElementState(); | 
| @@ -2322,6 +2353,7 @@ void Node::setV0CustomElementState(V0CustomElementState newState) | 
| } | 
| DCHECK(isHTMLElement() || isSVGElement()); | 
| + DCHECK(CustomElementState::Customized != getCustomElementState()); | 
| setFlag(V0CustomElementFlag); | 
| setFlag(newState == V0Upgraded, V0CustomElementUpgradedFlag); |