Changeset 190845 in webkit
- Timestamp:
- Oct 11, 2015, 12:18:58 AM (10 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 4 deleted
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/CMakeLists.txt
r190840 r190845 1844 1844 1845 1845 html/shadow/AutoFillButtonElement.cpp 1846 html/shadow/ContentDistributor.cpp1847 1846 html/shadow/DetailsMarkerControl.cpp 1848 html/shadow/InsertionPoint.cpp1849 1847 html/shadow/MediaControlElementTypes.cpp 1850 1848 html/shadow/MediaControlElements.cpp -
trunk/Source/WebCore/ChangeLog
r190844 r190845 1 2015-10-10 Antti Koivisto <antti@apple.com> 2 3 Remove InsertionPoint and ContentDistributor 4 https://bugs.webkit.org/show_bug.cgi?id=150004 5 6 Rubber-stamped by Sam Weinig. 7 8 Now that <details> is on top of the modern Shadow DOM remove the last vestiges of the V0 Shadow DOM API. 9 10 * CMakeLists.txt: 11 * WebCore.vcxproj/WebCore.vcxproj: 12 * WebCore.xcodeproj/project.pbxproj: 13 * css/SelectorChecker.cpp: 14 * css/StyleResolver.cpp: 15 * dom/ContainerNode.cpp: 16 * dom/Element.cpp: 17 (WebCore::shouldUseNodeRenderingTraversalSlowPath): 18 (WebCore::Element::resetNeedsNodeRenderingTraversalSlowPath): 19 * dom/Node.cpp: 20 (WebCore::Node::parentOrShadowHostElement): 21 (WebCore::Node::insertedInto): 22 (WebCore::Node::insertionParentForBinding): Deleted. 23 * dom/Node.h: 24 (WebCore::Node::isCharacterDataNode): 25 (WebCore::Node::isFrameOwnerElement): 26 (WebCore::Node::isPluginElement): 27 (WebCore::Node::isImageControlsRootElement): 28 (WebCore::Node::isImageControlsButtonElement): 29 (WebCore::Node::isDocumentFragment): 30 (WebCore::Node::isShadowRoot): 31 (WebCore::Node::isInsertionPointNode): Deleted. 32 (WebCore::Node::isInsertionPoint): Deleted. 33 * dom/NodeRenderingTraversal.cpp: 34 (WebCore::NodeRenderingTraversal::traverseParent): 35 (WebCore::NodeRenderingTraversal::traverseFirstChild): 36 (WebCore::NodeRenderingTraversal::traverseLastChild): 37 (WebCore::NodeRenderingTraversal::traverseNextSibling): 38 (WebCore::NodeRenderingTraversal::traversePreviousSibling): 39 (WebCore::NodeRenderingTraversal::parentSlow): 40 (WebCore::NodeRenderingTraversal::nextInScope): 41 (WebCore::NodeRenderingTraversal::previousInScope): 42 (WebCore::NodeRenderingTraversal::parentInScope): 43 (WebCore::NodeRenderingTraversal::lastChildInScope): 44 (WebCore::NodeRenderingTraversal::nodeCanBeDistributed): Deleted. 45 (WebCore::NodeRenderingTraversal::findFirstSiblingEnteringInsertionPoints): Deleted. 46 (WebCore::NodeRenderingTraversal::findFirstEnteringInsertionPoints): Deleted. 47 (WebCore::NodeRenderingTraversal::findFirstFromDistributedNode): Deleted. 48 (WebCore::NodeRenderingTraversal::findLastSiblingEnteringInsertionPoints): Deleted. 49 (WebCore::NodeRenderingTraversal::findLastEnteringInsertionPoints): Deleted. 50 (WebCore::NodeRenderingTraversal::findLastFromDistributedNode): Deleted. 51 * dom/ShadowRoot.h: 52 (WebCore::ShadowRoot::distributor): Deleted. 53 * html/HTMLInputElement.cpp: 54 * html/HTMLSlotElement.cpp: 55 * html/HTMLSlotElement.h: 56 * html/shadow/ContentDistributor.cpp: Removed. 57 * html/shadow/ContentDistributor.h: Removed. 58 * html/shadow/InsertionPoint.cpp: Removed. 59 * html/shadow/InsertionPoint.h: Removed. 60 * page/FocusController.cpp: 61 (WebCore::FocusController::previousFocusableElement): 62 * testing/Internals.cpp: 63 1 64 2015-10-10 Simon Fraser <simon.fraser@apple.com> 2 65 -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
r190840 r190845 17316 17316 <ClCompile Include="..\html\parser\XSSAuditorDelegate.cpp" /> 17317 17317 <ClCompile Include="..\html\shadow\AutoFillButtonElement.cpp" /> 17318 <ClCompile Include="..\html\shadow\ContentDistributor.cpp" />17319 17318 <ClCompile Include="..\html\shadow\DetailsMarkerControl.cpp" /> 17320 <ClCompile Include="..\html\shadow\InsertionPoint.cpp" />17321 17319 <ClCompile Include="..\html\shadow\MediaControlElements.cpp" /> 17322 17320 <ClCompile Include="..\html\shadow\MediaControlElementTypes.cpp" /> … … 22373 22371 <ClInclude Include="..\html\parser\XSSAuditorDelegate.h" /> 22374 22372 <ClInclude Include="..\html\shadow\AutoFillButtonElement.h" /> 22375 <ClInclude Include="..\html\shadow\ContentDistributor.h" />22376 22373 <ClInclude Include="..\html\shadow\DetailsMarkerControl.h" /> 22377 <ClInclude Include="..\html\shadow\InsertionPoint.h" />22378 22374 <ClInclude Include="..\html\shadow\MediaControlElements.h" /> 22379 22375 <ClInclude Include="..\html\shadow\MediaControlElementTypes.h" /> -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r190794 r190845 2231 2231 550A0BC9085F6039007353D6 /* QualifiedName.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 550A0BC7085F6039007353D6 /* QualifiedName.cpp */; }; 2232 2232 550A0BCA085F6039007353D6 /* QualifiedName.h in Headers */ = {isa = PBXBuildFile; fileRef = 550A0BC8085F6039007353D6 /* QualifiedName.h */; settings = {ATTRIBUTES = (Private, ); }; }; 2233 57B791A314C6A62900F202D1 /* ContentDistributor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 57B7919F14C6A62900F202D1 /* ContentDistributor.cpp */; };2234 57B791A414C6A62900F202D1 /* ContentDistributor.h in Headers */ = {isa = PBXBuildFile; fileRef = 57B791A014C6A62900F202D1 /* ContentDistributor.h */; settings = {ATTRIBUTES = (Private, ); }; };2235 57CF497414EE36D700ECFF14 /* InsertionPoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 57CF497214EE36D700ECFF14 /* InsertionPoint.cpp */; };2236 57CF497514EE36D700ECFF14 /* InsertionPoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 57CF497314EE36D700ECFF14 /* InsertionPoint.h */; };2237 2233 580371611A66F00A00BAF519 /* ClipRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5803715F1A66F00A00BAF519 /* ClipRect.cpp */; }; 2238 2234 580371621A66F00A00BAF519 /* ClipRect.h in Headers */ = {isa = PBXBuildFile; fileRef = 580371601A66F00A00BAF519 /* ClipRect.h */; settings = {ATTRIBUTES = (Private, ); }; }; … … 9600 9596 550A0BC8085F6039007353D6 /* QualifiedName.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = QualifiedName.h; sourceTree = "<group>"; tabWidth = 8; usesTabs = 0; }; 9601 9597 55D408F71A7C631800C78450 /* SVGImageClients.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGImageClients.h; sourceTree = "<group>"; }; 9602 57B7919F14C6A62900F202D1 /* ContentDistributor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ContentDistributor.cpp; sourceTree = "<group>"; };9603 57B791A014C6A62900F202D1 /* ContentDistributor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContentDistributor.h; sourceTree = "<group>"; };9604 57CF497214EE36D700ECFF14 /* InsertionPoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InsertionPoint.cpp; sourceTree = "<group>"; };9605 57CF497314EE36D700ECFF14 /* InsertionPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InsertionPoint.h; sourceTree = "<group>"; };9606 9598 5803715F1A66F00A00BAF519 /* ClipRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ClipRect.cpp; sourceTree = "<group>"; }; 9607 9599 580371601A66F00A00BAF519 /* ClipRect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClipRect.h; sourceTree = "<group>"; }; … … 16174 16166 7C1E97251A9F9834007BF0FB /* AutoFillButtonElement.cpp */, 16175 16167 7C1E97261A9F9834007BF0FB /* AutoFillButtonElement.h */, 16176 57B7919F14C6A62900F202D1 /* ContentDistributor.cpp */,16177 57B791A014C6A62900F202D1 /* ContentDistributor.h */,16178 16168 A7C9ABF61357A3BF00F5503F /* DetailsMarkerControl.cpp */, 16179 16169 A7C9ABF71357A3BF00F5503F /* DetailsMarkerControl.h */, 16180 16170 510192D318B6B9B7007FC7A1 /* ImageControlsRootElement.cpp */, 16181 16171 510192D418B6B9B7007FC7A1 /* ImageControlsRootElement.h */, 16182 57CF497214EE36D700ECFF14 /* InsertionPoint.cpp */,16183 57CF497314EE36D700ECFF14 /* InsertionPoint.h */,16184 16172 417253A81354BBBC00360F2A /* MediaControlElements.cpp */, 16185 16173 417253A91354BBBC00360F2A /* MediaControlElements.h */, … … 24501 24489 E1A1470811102B1500EEC0F3 /* ContainerNodeAlgorithms.h in Headers */, 24502 24490 BC5EB9810E82072500B25965 /* ContentData.h in Headers */, 24503 57B791A414C6A62900F202D1 /* ContentDistributor.h in Headers */,24504 24491 51B45D211AB8D1E200117CD2 /* ContentExtension.h in Headers */, 24505 24492 5CDFA6C81AA4F2DA00EA8746 /* ContentExtensionActions.h in Headers */, … … 25567 25554 C348612415FDE21E007A1CC9 /* InputTypeNames.h in Headers */, 25568 25555 93309DEA099E64920056E581 /* InsertIntoTextNodeCommand.h in Headers */, 25569 57CF497514EE36D700ECFF14 /* InsertionPoint.h in Headers */,25570 25556 93309DEC099E64920056E581 /* InsertLineBreakCommand.h in Headers */, 25571 25557 D07DEABA0A36554A00CA30F8 /* InsertListCommand.h in Headers */, … … 28339 28325 A7A78CD51532BA62006C21E4 /* ContainerNodeAlgorithms.cpp in Sources */, 28340 28326 BC5EB9800E82072500B25965 /* ContentData.cpp in Sources */, 28341 57B791A314C6A62900F202D1 /* ContentDistributor.cpp in Sources */,28342 28327 51B45D201AB8D1E200117CD2 /* ContentExtension.cpp in Sources */, 28343 28328 7C93F34D1AA6BF0700A98BAB /* ContentExtensionCompiler.cpp in Sources */, … … 29139 29124 C348612315FDE21E007A1CC9 /* InputTypeNames.cpp in Sources */, 29140 29125 93309DE9099E64920056E581 /* InsertIntoTextNodeCommand.cpp in Sources */, 29141 57CF497414EE36D700ECFF14 /* InsertionPoint.cpp in Sources */,29142 29126 93309DEB099E64920056E581 /* InsertLineBreakCommand.cpp in Sources */, 29143 29127 D07DEAB90A36554A00CA30F8 /* InsertListCommand.cpp in Sources */, -
trunk/Source/WebCore/css/SelectorChecker.cpp
r190680 r190845 46 46 #include "HTMLProgressElement.h" 47 47 #include "HTMLStyleElement.h" 48 #include "InsertionPoint.h"49 48 #include "InspectorInstrumentation.h" 50 49 #include "NodeRenderStyle.h" -
trunk/Source/WebCore/css/StyleResolver.cpp
r190347 r190845 81 81 #include "HTMLTableElement.h" 82 82 #include "HTMLTextAreaElement.h" 83 #include "InsertionPoint.h"84 83 #include "InspectorInstrumentation.h" 85 84 #include "KeyframeList.h" -
trunk/Source/WebCore/dom/ContainerNode.cpp
r190233 r190845 38 38 #include "HTMLTableRowsCollection.h" 39 39 #include "InlineTextBox.h" 40 #include "InsertionPoint.h"41 40 #include "JSLazyEventListener.h" 42 41 #include "JSNode.h" -
trunk/Source/WebCore/dom/Element.cpp
r190840 r190845 56 56 #include "HTMLTemplateElement.h" 57 57 #include "IdTargetObserverRegistry.h" 58 #include "InsertionPoint.h"59 58 #include "KeyboardEvent.h" 60 59 #include "MainFrame.h" … … 1623 1622 static bool shouldUseNodeRenderingTraversalSlowPath(const Element& element) 1624 1623 { 1625 if (element.isShadowRoot()) 1626 return true; 1627 return element.isInsertionPoint() || element.shadowRoot(); 1624 return element.isShadowRoot() || element.shadowRoot(); 1628 1625 } 1629 1626 -
trunk/Source/WebCore/dom/Node.cpp
r190834 r190845 47 47 #include "HTMLSlotElement.h" 48 48 #include "HTMLStyleElement.h" 49 #include "InsertionPoint.h"50 49 #include "InspectorController.h" 51 50 #include "KeyboardEvent.h" … … 1134 1133 } 1135 1134 1136 Node* Node::insertionParentForBinding() const1137 {1138 return findInsertionPointOf(this);1139 }1140 1141 1135 Node::InsertionNotificationRequest Node::insertedInto(ContainerNode& insertionPoint) 1142 1136 { -
trunk/Source/WebCore/dom/Node.h
r190210 r190845 258 258 virtual bool isFrameOwnerElement() const { return false; } 259 259 virtual bool isPluginElement() const { return false; } 260 virtual bool isInsertionPointNode() const { return false; }261 260 #if ENABLE(SERVICE_CONTROLS) 262 261 virtual bool isImageControlsRootElement() const { return false; } … … 268 267 bool isDocumentFragment() const { return getFlag(IsDocumentFragmentFlag); } 269 268 bool isShadowRoot() const { return isDocumentFragment() && isTreeScope(); } 270 bool isInsertionPoint() const { return getFlag(NeedsNodeRenderingTraversalSlowPathFlag) && isInsertionPointNode(); }271 // Returns Node rather than InsertionPoint. Should be used only for language bindings.272 Node* insertionParentForBinding() const;273 269 274 270 bool needsNodeRenderingTraversalSlowPath() const; … … 656 652 CreateSVGElement = CreateStyledElement | IsSVGFlag | HasCustomStyleResolveCallbacksFlag, 657 653 CreateDocument = CreateContainer | InDocumentFlag, 658 CreateInsertionPoint = CreateHTMLElement | NeedsNodeRenderingTraversalSlowPathFlag,659 654 CreateEditingText = CreateText | IsEditingTextFlag, 660 655 CreateMathMLElement = CreateStyledElement | IsMathMLFlag -
trunk/Source/WebCore/dom/NodeRenderingTraversal.cpp
r189239 r190845 29 29 #include "NodeRenderingTraversal.h" 30 30 31 #include "InsertionPoint.h"32 31 #include "ShadowRoot.h" 33 32 … … 35 34 36 35 namespace NodeRenderingTraversal { 37 38 static Node* findFirstSiblingEnteringInsertionPoints(const Node*);39 static Node* findFirstEnteringInsertionPoints(const Node*);40 static Node* findFirstFromDistributedNode(const Node*, const InsertionPoint*);41 static Node* findLastSiblingEnteringInsertionPoints(const Node*);42 static Node* findLastEnteringInsertionPoints(const Node*);43 static Node* findLastFromDistributedNode(const Node*, const InsertionPoint*);44 45 static inline bool nodeCanBeDistributed(const Node* node)46 {47 ASSERT(node);48 Node* parent = parentNodeForDistribution(node);49 if (!parent)50 return false;51 52 if (parent->isShadowRoot())53 return false;54 55 if (is<Element>(*parent) && downcast<Element>(*parent).shadowRoot())56 return true;57 58 return false;59 }60 61 static Node* findFirstSiblingEnteringInsertionPoints(const Node* node)62 {63 for (const Node* sibling = node; sibling; sibling = sibling->nextSibling()) {64 if (Node* found = findFirstEnteringInsertionPoints(sibling))65 return found;66 }67 return nullptr;68 }69 70 static Node* findFirstEnteringInsertionPoints(const Node* node)71 {72 ASSERT(node);73 if (!isActiveInsertionPoint(node))74 return const_cast<Node*>(node);75 const InsertionPoint& insertionPoint = downcast<InsertionPoint>(*node);76 if (Node* found = findFirstFromDistributedNode(insertionPoint.firstDistributed(), &insertionPoint))77 return found;78 return findFirstSiblingEnteringInsertionPoints(node->firstChild());79 }80 81 static Node* findFirstFromDistributedNode(const Node* node, const InsertionPoint* insertionPoint)82 {83 for (const Node* next = node; next; next = insertionPoint->nextDistributedTo(next)) {84 if (Node* found = findFirstEnteringInsertionPoints(next))85 return found;86 }87 return nullptr;88 }89 90 static Node* findLastSiblingEnteringInsertionPoints(const Node* node)91 {92 for (const Node* sibling = node; sibling; sibling = sibling->previousSibling()) {93 if (Node* found = findLastEnteringInsertionPoints(sibling))94 return found;95 }96 return nullptr;97 }98 99 static Node* findLastEnteringInsertionPoints(const Node* node)100 {101 ASSERT(node);102 if (!isActiveInsertionPoint(node))103 return const_cast<Node*>(node);104 const InsertionPoint& insertionPoint = downcast<InsertionPoint>(*node);105 if (Node* found = findLastFromDistributedNode(insertionPoint.lastDistributed(), &insertionPoint))106 return found;107 return findLastSiblingEnteringInsertionPoints(node->lastChild());108 }109 110 static Node* findLastFromDistributedNode(const Node* node, const InsertionPoint* insertionPoint)111 {112 for (const Node* next = node; next; next = insertionPoint->previousDistributedTo(next)) {113 if (Node* found = findLastEnteringInsertionPoints(next))114 return found;115 }116 return nullptr;117 }118 36 119 37 enum ShadowRootCrossing { CrossShadowRoot, DontCrossShadowRoot }; … … 124 42 return nullptr; 125 43 126 if (nodeCanBeDistributed(node)) { 127 if (InsertionPoint* insertionPoint = findInsertionPointOf(node)) 128 return traverseParent(insertionPoint, shadowRootCrossing); 44 ContainerNode* parent = node->parentNode(); 45 if (parent && parent->shadowRoot()) 129 46 return nullptr; 130 } 131 ContainerNode* parent = node->parentNode(); 47 132 48 if (!parent) 133 49 return nullptr; … … 136 52 return shadowRootCrossing == CrossShadowRoot ? downcast<ShadowRoot>(parent)->host() : parent; 137 53 138 if (is<InsertionPoint>(*parent)) {139 const InsertionPoint& insertionPoint = downcast<InsertionPoint>(*parent);140 if (insertionPoint.hasDistribution())141 return nullptr;142 if (insertionPoint.isActive())143 return traverseParent(parent, shadowRootCrossing);144 }145 54 return parent; 146 55 } … … 154 63 node = node->shadowRoot(); 155 64 } 156 return findFirstSiblingEnteringInsertionPoints(node->firstChild());65 return node->firstChild(); 157 66 } 158 67 … … 165 74 node = node->shadowRoot(); 166 75 } 167 return findLastSiblingEnteringInsertionPoints(node->lastChild());76 return node->lastChild(); 168 77 } 169 78 … … 171 80 { 172 81 ASSERT(node); 173 174 InsertionPoint* insertionPoint; 175 if (nodeCanBeDistributed(node) && (insertionPoint = findInsertionPointOf(node))) { 176 Node* found = findFirstFromDistributedNode(insertionPoint->nextDistributedTo(node), insertionPoint); 177 if (found) 178 return found; 179 return traverseNextSibling(insertionPoint); 180 } 181 182 for (const Node* sibling = node->nextSibling(); sibling; sibling = sibling->nextSibling()) { 183 if (Node* found = findFirstEnteringInsertionPoints(sibling)) 184 return found; 185 } 186 if (node->parentNode() && isActiveInsertionPoint(node->parentNode())) 187 return traverseNextSibling(node->parentNode()); 188 189 return nullptr; 82 return node->nextSibling(); 190 83 } 191 84 … … 193 86 { 194 87 ASSERT(node); 195 196 InsertionPoint* insertionPoint; 197 if (nodeCanBeDistributed(node) && (insertionPoint = findInsertionPointOf(node))) { 198 Node* found = findLastFromDistributedNode(insertionPoint->previousDistributedTo(node), insertionPoint); 199 if (found) 200 return found; 201 return traversePreviousSibling(insertionPoint); 202 } 203 204 for (const Node* sibling = node->previousSibling(); sibling; sibling = sibling->previousSibling()) { 205 if (Node* found = findLastEnteringInsertionPoints(sibling)) 206 return found; 207 } 208 if (node->parentNode() && isActiveInsertionPoint(node->parentNode())) 209 return traversePreviousSibling(node->parentNode()); 210 211 return nullptr; 88 return node->previousSibling(); 212 89 } 213 90 … … 242 119 Node* nextInScope(const Node* node) 243 120 { 244 ASSERT(!isActiveInsertionPoint(node));245 246 121 if (Node* next = traverseFirstChild(node, DontCrossShadowRoot)) 247 122 return next; … … 256 131 Node* previousInScope(const Node* node) 257 132 { 258 ASSERT(!isActiveInsertionPoint(node));259 260 133 if (Node* current = traversePreviousSibling(node)) { 261 134 while (Node* child = traverseLastChild(current, DontCrossShadowRoot)) … … 268 141 Node* parentInScope(const Node* node) 269 142 { 270 ASSERT(!isActiveInsertionPoint(node));271 272 143 return traverseParent(node, DontCrossShadowRoot); 273 144 } … … 275 146 Node* lastChildInScope(const Node* node) 276 147 { 277 ASSERT(!isActiveInsertionPoint(node));278 279 148 return traverseLastChild(node, DontCrossShadowRoot); 280 149 } -
trunk/Source/WebCore/dom/ShadowRoot.h
r190840 r190845 38 38 39 39 class AuthorStyleSheets; 40 class ContentDistributor;41 40 class HTMLSlotElement; 42 41 class SlotAssignment; 43 42 44 class ShadowRoot : public DocumentFragment, public TreeScope {43 class ShadowRoot final : public DocumentFragment, public TreeScope { 45 44 public: 46 45 enum class Type : uint8_t { … … 86 85 87 86 virtual void removeAllEventListeners() override; 88 89 virtual ContentDistributor* distributor() { return nullptr; }90 87 91 88 #if ENABLE(SHADOW_DOM) || ENABLE(DETAILS_ELEMENT) -
trunk/Source/WebCore/html/HTMLInputElement.cpp
r190613 r190845 50 50 #include "HTMLParserIdioms.h" 51 51 #include "IdTargetObserver.h" 52 #include "InsertionPoint.h"53 52 #include "KeyboardEvent.h" 54 53 #include "Language.h" -
trunk/Source/WebCore/html/HTMLSlotElement.cpp
r190840 r190845 31 31 #include "ElementChildIterator.h" 32 32 #include "HTMLNames.h" 33 #include "ShadowRoot.h" 33 34 34 35 namespace WebCore { -
trunk/Source/WebCore/html/HTMLSlotElement.h
r190840 r190845 30 30 31 31 #include "HTMLElement.h" 32 #include "InsertionPoint.h"33 32 #include "Range.h" 34 33 -
trunk/Source/WebCore/page/FocusController.cpp
r189239 r190845 497 497 Element* FocusController::previousFocusableElement(FocusNavigationScope scope, Node* start, KeyboardEvent* event) 498 498 { 499 using namespace NodeRenderingTraversal;500 501 499 Node* last = nullptr; 502 for (Node* node = scope.rootNode(); node; node = lastChildInScope(node))500 for (Node* node = scope.rootNode(); node; node = NodeRenderingTraversal::lastChildInScope(node)) 503 501 last = node; 504 502 ASSERT(last); … … 509 507 int startingTabIndex; 510 508 if (start) { 511 startingNode = previousInScope(start);509 startingNode = NodeRenderingTraversal::previousInScope(start); 512 510 startingTabIndex = adjustedTabIndex(*start, *event); 513 511 } else { … … 518 516 // However, if a node is excluded from the normal tabbing cycle, the previous focusable node is determined by tree order 519 517 if (startingTabIndex < 0) { 520 for (Node* node = startingNode; node; node = previousInScope(node)) {518 for (Node* node = startingNode; node; node = NodeRenderingTraversal::previousInScope(node)) { 521 519 if (!is<Element>(*node)) 522 520 continue; -
trunk/Source/WebCore/testing/Internals.cpp
r190604 r190845 38 38 #include "ClientRect.h" 39 39 #include "ClientRectList.h" 40 #include "ContentDistributor.h"41 40 #include "Cursor.h" 42 41 #include "DOMPath.h"
Note:
See TracChangeset
for help on using the changeset viewer.