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

Side by Side Diff: third_party/WebKit/Source/core/dom/Node.h

Issue 2420043002: Stop re-signaling a slotchange event (Closed)
Patch Set: rebased Created 4 years, 1 month 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 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. 6 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved.
7 * (http://www.torchmobile.com/) 7 * (http://www.torchmobile.com/)
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 enum class CustomElementState { 106 enum class CustomElementState {
107 // https://dom.spec.whatwg.org/#concept-element-custom-element-state 107 // https://dom.spec.whatwg.org/#concept-element-custom-element-state
108 Uncustomized = 0, 108 Uncustomized = 0,
109 Custom = 1 << nodeCustomElementShift, 109 Custom = 1 << nodeCustomElementShift,
110 Undefined = 2 << nodeCustomElementShift, 110 Undefined = 2 << nodeCustomElementShift,
111 Failed = 3 << nodeCustomElementShift, 111 Failed = 3 << nodeCustomElementShift,
112 112
113 NotDefinedFlag = 2 << nodeCustomElementShift, 113 NotDefinedFlag = 2 << nodeCustomElementShift,
114 }; 114 };
115 115
116 enum class SlotChangeType {
117 Initial,
118 Chained,
119 };
120
116 class NodeRareDataBase { 121 class NodeRareDataBase {
117 public: 122 public:
118 LayoutObject* layoutObject() const { return m_layoutObject; } 123 LayoutObject* layoutObject() const { return m_layoutObject; }
119 void setLayoutObject(LayoutObject* layoutObject) { 124 void setLayoutObject(LayoutObject* layoutObject) {
120 m_layoutObject = layoutObject; 125 m_layoutObject = layoutObject;
121 } 126 }
122 127
123 protected: 128 protected:
124 NodeRareDataBase(LayoutObject* layoutObject) : m_layoutObject(layoutObject) {} 129 NodeRareDataBase(LayoutObject* layoutObject) : m_layoutObject(layoutObject) {}
125 130
(...skipping 661 matching lines...) Expand 10 before | Expand all | Expand 10 after
787 void decrementConnectedSubframeCount(); 792 void decrementConnectedSubframeCount();
788 793
789 StaticNodeList* getDestinationInsertionPoints(); 794 StaticNodeList* getDestinationInsertionPoints();
790 HTMLSlotElement* assignedSlot() const; 795 HTMLSlotElement* assignedSlot() const;
791 HTMLSlotElement* assignedSlotForBinding(); 796 HTMLSlotElement* assignedSlotForBinding();
792 797
793 bool isFinishedParsingChildren() const { 798 bool isFinishedParsingChildren() const {
794 return getFlag(IsFinishedParsingChildrenFlag); 799 return getFlag(IsFinishedParsingChildrenFlag);
795 } 800 }
796 801
797 void checkSlotChange(); 802 void checkSlotChange(SlotChangeType);
798 void checkSlotChangeAfterInserted() { checkSlotChange(); } 803 void checkSlotChangeAfterInserted() {
799 void checkSlotChangeBeforeRemoved() { checkSlotChange(); } 804 checkSlotChange(SlotChangeType::Initial);
805 }
806 void checkSlotChangeBeforeRemoved() {
807 checkSlotChange(SlotChangeType::Initial);
808 }
800 809
801 DECLARE_VIRTUAL_TRACE(); 810 DECLARE_VIRTUAL_TRACE();
802 811
803 DECLARE_VIRTUAL_TRACE_WRAPPERS(); 812 DECLARE_VIRTUAL_TRACE_WRAPPERS();
804 813
805 unsigned lengthOfContents() const; 814 unsigned lengthOfContents() const;
806 815
807 v8::Local<v8::Object> wrap(v8::Isolate*, 816 v8::Local<v8::Object> wrap(v8::Isolate*,
808 v8::Local<v8::Object> creationContext) override; 817 v8::Local<v8::Object> creationContext) override;
809 v8::Local<v8::Object> associateWithWrapper( 818 v8::Local<v8::Object> associateWithWrapper(
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
1043 } // namespace blink 1052 } // namespace blink
1044 1053
1045 #ifndef NDEBUG 1054 #ifndef NDEBUG
1046 // Outside the WebCore namespace for ease of invocation from gdb. 1055 // Outside the WebCore namespace for ease of invocation from gdb.
1047 void showNode(const blink::Node*); 1056 void showNode(const blink::Node*);
1048 void showTree(const blink::Node*); 1057 void showTree(const blink::Node*);
1049 void showNodePath(const blink::Node*); 1058 void showNodePath(const blink::Node*);
1050 #endif 1059 #endif
1051 1060
1052 #endif // Node_h 1061 #endif // Node_h
OLDNEW
« no previous file with comments | « third_party/WebKit/LayoutTests/shadow-dom/slotchange.html ('k') | third_party/WebKit/Source/core/dom/Node.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698