Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2004-2011, 2014 Apple Inc. All rights reserved. | 5 * Copyright (C) 2004-2011, 2014 Apple Inc. All rights reserved. |
| 6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) | 6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 84 class SVGQualifiedName; | 84 class SVGQualifiedName; |
| 85 class ShadowRoot; | 85 class ShadowRoot; |
| 86 template <typename NodeType> class StaticNodeTypeList; | 86 template <typename NodeType> class StaticNodeTypeList; |
| 87 using StaticNodeList = StaticNodeTypeList<Node>; | 87 using StaticNodeList = StaticNodeTypeList<Node>; |
| 88 class StyleChangeReasonForTracing; | 88 class StyleChangeReasonForTracing; |
| 89 class TagCollection; | 89 class TagCollection; |
| 90 class Text; | 90 class Text; |
| 91 class TouchEvent; | 91 class TouchEvent; |
| 92 | 92 |
| 93 const int nodeStyleChangeShift = 19; | 93 const int nodeStyleChangeShift = 19; |
| 94 const int nodeCustomElementShift = 21; | |
| 94 | 95 |
| 95 enum StyleChangeType { | 96 enum StyleChangeType { |
| 96 NoStyleChange = 0, | 97 NoStyleChange = 0, |
| 97 LocalStyleChange = 1 << nodeStyleChangeShift, | 98 LocalStyleChange = 1 << nodeStyleChangeShift, |
| 98 SubtreeStyleChange = 2 << nodeStyleChangeShift, | 99 SubtreeStyleChange = 2 << nodeStyleChangeShift, |
| 99 NeedsReattachStyleChange = 3 << nodeStyleChangeShift, | 100 NeedsReattachStyleChange = 3 << nodeStyleChangeShift, |
| 100 }; | 101 }; |
| 101 | 102 |
| 102 enum class CustomElementState { | 103 enum class CustomElementState { |
| 104 // https://dom.spec.whatwg.org/#concept-element-custom-element-state | |
| 103 Uncustomized = 0, | 105 Uncustomized = 0, |
| 104 Custom = 1, | 106 Custom = 1 << nodeCustomElementShift, |
| 105 Undefined = 2, | 107 Undefined = 2 << nodeCustomElementShift, |
| 108 Failed = 3 << nodeCustomElementShift, | |
| 109 | |
| 110 NotDefinedFlag = 2 << nodeCustomElementShift, | |
| 106 }; | 111 }; |
| 107 | 112 |
| 108 CORE_EXPORT std::ostream& operator<<(std::ostream&, CustomElementState); | 113 CORE_EXPORT std::ostream& operator<<(std::ostream&, CustomElementState); |
| 109 | 114 |
| 110 class NodeRareDataBase { | 115 class NodeRareDataBase { |
| 111 public: | 116 public: |
| 112 LayoutObject* layoutObject() const { return m_layoutObject; } | 117 LayoutObject* layoutObject() const { return m_layoutObject; } |
| 113 void setLayoutObject(LayoutObject* layoutObject) { m_layoutObject = layoutOb ject; } | 118 void setLayoutObject(LayoutObject* layoutObject) { m_layoutObject = layoutOb ject; } |
| 114 | 119 |
| 115 protected: | 120 protected: |
| (...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 246 bool isTextNode() const { return getFlag(IsTextFlag); } | 251 bool isTextNode() const { return getFlag(IsTextFlag); } |
| 247 bool isHTMLElement() const { return getFlag(IsHTMLFlag); } | 252 bool isHTMLElement() const { return getFlag(IsHTMLFlag); } |
| 248 bool isSVGElement() const { return getFlag(IsSVGFlag); } | 253 bool isSVGElement() const { return getFlag(IsSVGFlag); } |
| 249 | 254 |
| 250 bool isPseudoElement() const { return getPseudoId() != PseudoIdNone; } | 255 bool isPseudoElement() const { return getPseudoId() != PseudoIdNone; } |
| 251 bool isBeforePseudoElement() const { return getPseudoId() == PseudoIdBefore; } | 256 bool isBeforePseudoElement() const { return getPseudoId() == PseudoIdBefore; } |
| 252 bool isAfterPseudoElement() const { return getPseudoId() == PseudoIdAfter; } | 257 bool isAfterPseudoElement() const { return getPseudoId() == PseudoIdAfter; } |
| 253 bool isFirstLetterPseudoElement() const { return getPseudoId() == PseudoIdFi rstLetter; } | 258 bool isFirstLetterPseudoElement() const { return getPseudoId() == PseudoIdFi rstLetter; } |
| 254 virtual PseudoId getPseudoId() const { return PseudoIdNone; } | 259 virtual PseudoId getPseudoId() const { return PseudoIdNone; } |
| 255 | 260 |
| 256 bool isCustomElement() const { return getFlag(CustomElementFlag); } | 261 CustomElementState getCustomElementState() const { return static_cast<Custom ElementState>(m_nodeFlags & CustomElementStateMask); } |
| 257 CustomElementState getCustomElementState() const; | |
| 258 void setCustomElementState(CustomElementState); | 262 void setCustomElementState(CustomElementState); |
| 259 bool isV0CustomElement() const { return getFlag(V0CustomElementFlag); } | 263 bool isV0CustomElement() const { return getFlag(V0CustomElementFlag); } |
| 260 enum V0CustomElementState { | 264 enum V0CustomElementState { |
| 261 V0NotCustomElement = 0, | 265 V0NotCustomElement = 0, |
| 262 V0WaitingForUpgrade = 1 << 0, | 266 V0WaitingForUpgrade = 1 << 0, |
| 263 V0Upgraded = 1 << 1 | 267 V0Upgraded = 1 << 1 |
| 264 }; | 268 }; |
| 265 V0CustomElementState getV0CustomElementState() const | 269 V0CustomElementState getV0CustomElementState() const |
| 266 { | 270 { |
| 267 return isV0CustomElement() | 271 return isV0CustomElement() |
| (...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 692 | 696 |
| 693 // Flags related to recalcStyle. | 697 // Flags related to recalcStyle. |
| 694 SVGFilterNeedsLayerUpdateFlag = 1 << 13, | 698 SVGFilterNeedsLayerUpdateFlag = 1 << 13, |
| 695 HasCustomStyleCallbacksFlag = 1 << 14, | 699 HasCustomStyleCallbacksFlag = 1 << 14, |
| 696 ChildNeedsStyleInvalidationFlag = 1 << 15, | 700 ChildNeedsStyleInvalidationFlag = 1 << 15, |
| 697 NeedsStyleInvalidationFlag = 1 << 16, | 701 NeedsStyleInvalidationFlag = 1 << 16, |
| 698 ChildNeedsDistributionRecalcFlag = 1 << 17, | 702 ChildNeedsDistributionRecalcFlag = 1 << 17, |
| 699 ChildNeedsStyleRecalcFlag = 1 << 18, | 703 ChildNeedsStyleRecalcFlag = 1 << 18, |
| 700 StyleChangeMask = 1 << nodeStyleChangeShift | 1 << (nodeStyleChangeShift + 1), | 704 StyleChangeMask = 1 << nodeStyleChangeShift | 1 << (nodeStyleChangeShift + 1), |
| 701 | 705 |
| 702 CustomElementFlag = 1 << 21, | 706 CustomElementStateMask = 1 << nodeCustomElementShift | 1 << (nodeCustomE lementShift + 1), |
|
dominicc (has gone to gerrit)
2016/07/26 05:47:42
Maybe 0x3 << nodeCustomElementShift is simpler to
| |
| 703 CustomElementCustomFlag = 1 << 22, | |
| 704 | 707 |
| 705 HasNameOrIsEditingTextFlag = 1 << 23, | 708 HasNameOrIsEditingTextFlag = 1 << 23, |
| 706 HasWeakReferencesFlag = 1 << 24, | 709 HasWeakReferencesFlag = 1 << 24, |
| 707 V8CollectableDuringMinorGCFlag = 1 << 25, | 710 V8CollectableDuringMinorGCFlag = 1 << 25, |
| 708 HasEventTargetDataFlag = 1 << 26, | 711 HasEventTargetDataFlag = 1 << 26, |
| 709 AlreadySpellCheckedFlag = 1 << 27, | 712 AlreadySpellCheckedFlag = 1 << 27, |
| 710 | 713 |
| 711 V0CustomElementFlag = 1 << 28, | 714 V0CustomElementFlag = 1 << 28, |
| 712 V0CustomElementUpgradedFlag = 1 << 29, | 715 V0CustomElementUpgradedFlag = 1 << 29, |
| 713 | 716 |
| (...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 892 } // namespace blink | 895 } // namespace blink |
| 893 | 896 |
| 894 #ifndef NDEBUG | 897 #ifndef NDEBUG |
| 895 // Outside the WebCore namespace for ease of invocation from gdb. | 898 // Outside the WebCore namespace for ease of invocation from gdb. |
| 896 void showNode(const blink::Node*); | 899 void showNode(const blink::Node*); |
| 897 void showTree(const blink::Node*); | 900 void showTree(const blink::Node*); |
| 898 void showNodePath(const blink::Node*); | 901 void showNodePath(const blink::Node*); |
| 899 #endif | 902 #endif |
| 900 | 903 |
| 901 #endif // Node_h | 904 #endif // Node_h |
| OLD | NEW |