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

Side by Side Diff: third_party/WebKit/Source/core/html/HTMLSlotElement.h

Issue 2420883002: Revert of Fix FlatTreeTraversal for a slot in a document tree (Closed)
Patch Set: Created 4 years, 2 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) 2015 Google Inc. All rights reserved. 2 * Copyright (C) 2015 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 // shadow host. This method should be used only when m_assignedNodes is 86 // shadow host. This method should be used only when m_assignedNodes is
87 // dirty. e.g. To detect a slotchange event in DOM mutations. 87 // dirty. e.g. To detect a slotchange event in DOM mutations.
88 bool hasAssignedNodesSlow() const; 88 bool hasAssignedNodesSlow() const;
89 bool findHostChildWithSameSlotName() const; 89 bool findHostChildWithSameSlotName() const;
90 90
91 void enqueueSlotChangeEvent(); 91 void enqueueSlotChangeEvent();
92 92
93 void clearDistribution(); 93 void clearDistribution();
94 void saveAndClearDistribution(); 94 void saveAndClearDistribution();
95 95
96 bool supportsDistribution() const { return isInShadowTree(); }
97 void updateDistributedNodesManually();
98
99 static AtomicString normalizeSlotName(const AtomicString&); 96 static AtomicString normalizeSlotName(const AtomicString&);
100 97
101 DECLARE_VIRTUAL_TRACE(); 98 DECLARE_VIRTUAL_TRACE();
102 99
103 private: 100 private:
104 HTMLSlotElement(Document&); 101 HTMLSlotElement(Document&);
105 102
106 InsertionNotificationRequest insertedInto(ContainerNode*) final; 103 InsertionNotificationRequest insertedInto(ContainerNode*) final;
107 void removedFrom(ContainerNode*) final; 104 void removedFrom(ContainerNode*) final;
108 void willRecalcStyle(StyleRecalcChange) final; 105 void willRecalcStyle(StyleRecalcChange) final;
109 106
110 void dispatchSlotChangeEvent(); 107 void dispatchSlotChangeEvent();
111 108
112 HeapVector<Member<Node>> m_assignedNodes; 109 HeapVector<Member<Node>> m_assignedNodes;
113 HeapVector<Member<Node>> m_distributedNodes; 110 HeapVector<Member<Node>> m_distributedNodes;
114 HeapVector<Member<Node>> m_oldDistributedNodes; 111 HeapVector<Member<Node>> m_oldDistributedNodes;
115 HeapHashMap<Member<const Node>, size_t> m_distributedIndices; 112 HeapHashMap<Member<const Node>, size_t> m_distributedIndices;
116 bool m_slotchangeEventEnqueued = false; 113 bool m_slotchangeEventEnqueued = false;
117 }; 114 };
118 115
119 } // namespace blink 116 } // namespace blink
120 117
121 #endif // HTMLSlotElement_h 118 #endif // HTMLSlotElement_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698