Title: [239548] trunk/Source
Revision
239548
Author
[email protected]
Date
2018-12-24 11:20:18 -0800 (Mon, 24 Dec 2018)

Log Message

Change ScrollingNodeType to an enum class
https://bugs.webkit.org/show_bug.cgi?id=193009

Reviewed by Zalan Bujtas.

Change the ScrollingNodeType enum to an enum class.

No behavior change.

Source/WebCore:

* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::ensureRootStateNodeForFrameView):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::operator<<):
* page/scrolling/ScrollingCoordinator.h:
* page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
* page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::isFixedNode const):
(WebCore::ScrollingStateNode::isStickyNode const):
(WebCore::ScrollingStateNode::isFrameScrollingNode const):
(WebCore::ScrollingStateNode::isOverflowScrollingNode const):
* page/scrolling/ScrollingStateOverflowScrollingNode.cpp:
(WebCore::ScrollingStateOverflowScrollingNode::ScrollingStateOverflowScrollingNode):
* page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
* page/scrolling/ScrollingStateTree.cpp:
(WebCore::ScrollingStateTree::createNode):
(WebCore::ScrollingStateTree::attachNode):
* page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::isFixedNode const):
(WebCore::ScrollingTreeNode::isStickyNode const):
(WebCore::ScrollingTreeNode::isFrameScrollingNode const):
(WebCore::ScrollingTreeNode::isOverflowScrollingNode const):
* page/scrolling/ScrollingTreeOverflowScrollingNode.cpp:
(WebCore::ScrollingTreeOverflowScrollingNode::ScrollingTreeOverflowScrollingNode):
* page/scrolling/ios/ScrollingTreeIOS.cpp:
(WebCore::ScrollingTreeIOS::createScrollingTreeNode):
* page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::ScrollingTreeFixedNode):
* page/scrolling/mac/ScrollingTreeMac.cpp:
(ScrollingTreeMac::createScrollingTreeNode):
* page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::ScrollingTreeStickyNode):
* platform/graphics/GraphicsLayerClient.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::reattachSubframeScrollLayers):
(WebCore::scrollCoordinationRoleForNodeType):
(WebCore::RenderLayerCompositor::updateScrollCoordinationForThisFrame):
(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):

Source/WebKit:

* Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
(WebKit::encodeNodeAndDescendants):
(WebKit::RemoteScrollingCoordinatorTransaction::decode):
(WebKit::dump):
* UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
* UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::createScrollingTreeNode):
* UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::updateChildNodesAfterScroll):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (239547 => 239548)


--- trunk/Source/WebCore/ChangeLog	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/ChangeLog	2018-12-24 19:20:18 UTC (rev 239548)
@@ -1,3 +1,55 @@
+2018-12-24  Simon Fraser  <[email protected]>
+
+        Change ScrollingNodeType to an enum class
+        https://bugs.webkit.org/show_bug.cgi?id=193009
+
+        Reviewed by Zalan Bujtas.
+
+        Change the ScrollingNodeType enum to an enum class.
+        
+        No behavior change.
+
+        * page/scrolling/AsyncScrollingCoordinator.cpp:
+        (WebCore::AsyncScrollingCoordinator::ensureRootStateNodeForFrameView):
+        * page/scrolling/ScrollingCoordinator.cpp:
+        (WebCore::operator<<):
+        * page/scrolling/ScrollingCoordinator.h:
+        * page/scrolling/ScrollingStateFixedNode.cpp:
+        (WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
+        * page/scrolling/ScrollingStateNode.h:
+        (WebCore::ScrollingStateNode::isFixedNode const):
+        (WebCore::ScrollingStateNode::isStickyNode const):
+        (WebCore::ScrollingStateNode::isFrameScrollingNode const):
+        (WebCore::ScrollingStateNode::isOverflowScrollingNode const):
+        * page/scrolling/ScrollingStateOverflowScrollingNode.cpp:
+        (WebCore::ScrollingStateOverflowScrollingNode::ScrollingStateOverflowScrollingNode):
+        * page/scrolling/ScrollingStateStickyNode.cpp:
+        (WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
+        * page/scrolling/ScrollingStateTree.cpp:
+        (WebCore::ScrollingStateTree::createNode):
+        (WebCore::ScrollingStateTree::attachNode):
+        * page/scrolling/ScrollingTreeNode.h:
+        (WebCore::ScrollingTreeNode::isFixedNode const):
+        (WebCore::ScrollingTreeNode::isStickyNode const):
+        (WebCore::ScrollingTreeNode::isFrameScrollingNode const):
+        (WebCore::ScrollingTreeNode::isOverflowScrollingNode const):
+        * page/scrolling/ScrollingTreeOverflowScrollingNode.cpp:
+        (WebCore::ScrollingTreeOverflowScrollingNode::ScrollingTreeOverflowScrollingNode):
+        * page/scrolling/ios/ScrollingTreeIOS.cpp:
+        (WebCore::ScrollingTreeIOS::createScrollingTreeNode):
+        * page/scrolling/mac/ScrollingTreeFixedNode.mm:
+        (WebCore::ScrollingTreeFixedNode::ScrollingTreeFixedNode):
+        * page/scrolling/mac/ScrollingTreeMac.cpp:
+        (ScrollingTreeMac::createScrollingTreeNode):
+        * page/scrolling/mac/ScrollingTreeStickyNode.mm:
+        (WebCore::ScrollingTreeStickyNode::ScrollingTreeStickyNode):
+        * platform/graphics/GraphicsLayerClient.h:
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::reattachSubframeScrollLayers):
+        (WebCore::scrollCoordinationRoleForNodeType):
+        (WebCore::RenderLayerCompositor::updateScrollCoordinationForThisFrame):
+        (WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
+
 2018-12-22  Carlos Garcia Campos  <[email protected]>
 
         [HarfBuzz] Width not correctly reported as 0 for zero font size

Modified: trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -510,7 +510,7 @@
     // For non-main frames, it is only possible to arrive in this function from
     // RenderLayerCompositor::updateBacking where the node has already been created.
     ASSERT(frameView.frame().isMainFrame());
-    attachToStateTree(MainFrameScrollingNode, frameView.scrollLayerID(), 0, 0);
+    attachToStateTree(ScrollingNodeType::MainFrame, frameView.scrollLayerID(), 0, 0);
 }
 
 void AsyncScrollingCoordinator::updateFrameScrollingNode(ScrollingNodeID nodeID, GraphicsLayer* layer, GraphicsLayer* scrolledContentsLayer, GraphicsLayer* counterScrollingLayer, GraphicsLayer* insetClipLayer, const ScrollingGeometry& scrollingGeometry)

Modified: trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -417,19 +417,19 @@
 TextStream& operator<<(TextStream& ts, ScrollingNodeType nodeType)
 {
     switch (nodeType) {
-    case MainFrameScrollingNode:
+    case ScrollingNodeType::MainFrame:
         ts << "main-frame-scrolling";
         break;
-    case SubframeScrollingNode:
+    case ScrollingNodeType::Subframe:
         ts << "subframe-scrolling";
         break;
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
         ts << "overflow-scrolling";
         break;
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         ts << "fixed";
         break;
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         ts << "sticky";
         break;
     }

Modified: trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.h (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.h	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.h	2018-12-24 19:20:18 UTC (rev 239548)
@@ -54,7 +54,13 @@
 typedef unsigned SynchronousScrollingReasons;
 typedef uint64_t ScrollingNodeID;
 
-enum ScrollingNodeType { MainFrameScrollingNode, SubframeScrollingNode, OverflowScrollingNode, FixedNode, StickyNode };
+enum class ScrollingNodeType : uint8_t {
+    MainFrame,
+    Subframe,
+    Overflow,
+    Fixed,
+    Sticky
+};
 
 enum ScrollingStateTreeAsTextBehaviorFlags {
     ScrollingStateTreeAsTextBehaviorNormal                  = 0,

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateFixedNode.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -41,7 +41,7 @@
 }
 
 ScrollingStateFixedNode::ScrollingStateFixedNode(ScrollingStateTree& tree, ScrollingNodeID nodeID)
-    : ScrollingStateNode(FixedNode, tree, nodeID)
+    : ScrollingStateNode(ScrollingNodeType::Fixed, tree, nodeID)
 {
 }
 

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateNode.h	2018-12-24 19:20:18 UTC (rev 239548)
@@ -196,11 +196,11 @@
     
     ScrollingNodeType nodeType() const { return m_nodeType; }
 
-    bool isFixedNode() const { return m_nodeType == FixedNode; }
-    bool isStickyNode() const { return m_nodeType == StickyNode; }
+    bool isFixedNode() const { return m_nodeType == ScrollingNodeType::Fixed; }
+    bool isStickyNode() const { return m_nodeType == ScrollingNodeType::Sticky; }
     bool isScrollingNode() const { return isFrameScrollingNode() || isOverflowScrollingNode(); }
-    bool isFrameScrollingNode() const { return m_nodeType == MainFrameScrollingNode || m_nodeType == SubframeScrollingNode; }
-    bool isOverflowScrollingNode() const { return m_nodeType == OverflowScrollingNode; }
+    bool isFrameScrollingNode() const { return m_nodeType == ScrollingNodeType::MainFrame || m_nodeType == ScrollingNodeType::Subframe; }
+    bool isOverflowScrollingNode() const { return m_nodeType == ScrollingNodeType::Overflow; }
 
     virtual Ref<ScrollingStateNode> clone(ScrollingStateTree& adoptiveTree) = 0;
     Ref<ScrollingStateNode> cloneAndReset(ScrollingStateTree& adoptiveTree);

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateOverflowScrollingNode.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -39,7 +39,7 @@
 }
 
 ScrollingStateOverflowScrollingNode::ScrollingStateOverflowScrollingNode(ScrollingStateTree& stateTree, ScrollingNodeID nodeID)
-    : ScrollingStateScrollingNode(stateTree, OverflowScrollingNode, nodeID)
+    : ScrollingStateScrollingNode(stateTree, ScrollingNodeType::Overflow, nodeID)
 {
 }
 

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateStickyNode.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -41,7 +41,7 @@
 }
 
 ScrollingStateStickyNode::ScrollingStateStickyNode(ScrollingStateTree& tree, ScrollingNodeID nodeID)
-    : ScrollingStateNode(StickyNode, tree, nodeID)
+    : ScrollingStateNode(ScrollingNodeType::Sticky, tree, nodeID)
 {
 }
 

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateTree.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateTree.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateTree.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -68,15 +68,15 @@
 Ref<ScrollingStateNode> ScrollingStateTree::createNode(ScrollingNodeType nodeType, ScrollingNodeID nodeID)
 {
     switch (nodeType) {
-    case FixedNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
+        return ScrollingStateFrameScrollingNode::create(*this, nodeType, nodeID);
+    case ScrollingNodeType::Overflow:
+        return ScrollingStateOverflowScrollingNode::create(*this, nodeID);
+    case ScrollingNodeType::Fixed:
         return ScrollingStateFixedNode::create(*this, nodeID);
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         return ScrollingStateStickyNode::create(*this, nodeID);
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
-        return ScrollingStateFrameScrollingNode::create(*this, nodeType, nodeID);
-    case OverflowScrollingNode:
-        return ScrollingStateOverflowScrollingNode::create(*this, nodeID);
     }
     ASSERT_NOT_REACHED();
     return ScrollingStateFixedNode::create(*this, nodeID);
@@ -132,7 +132,7 @@
         // If we're resetting the root node, we should clear the HashMap and destroy the current children.
         clear();
 
-        setRootStateNode(ScrollingStateFrameScrollingNode::create(*this, MainFrameScrollingNode, newNodeID));
+        setRootStateNode(ScrollingStateFrameScrollingNode::create(*this, ScrollingNodeType::MainFrame, newNodeID));
         newNode = rootStateNode();
         m_hasNewRootStateNode = true;
     } else {
@@ -142,7 +142,7 @@
             return 0;
         }
 
-        if (nodeType == SubframeScrollingNode && parentID) {
+        if (nodeType == ScrollingNodeType::Subframe && parentID) {
             if (auto orphanedNode = m_orphanedSubframeNodes.take(newNodeID)) {
                 newNode = orphanedNode.get();
                 if (childIndex == notFound)

Modified: trunk/Source/WebCore/page/scrolling/ScrollingTreeNode.h (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingTreeNode.h	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTreeNode.h	2018-12-24 19:20:18 UTC (rev 239548)
@@ -47,11 +47,11 @@
     ScrollingNodeType nodeType() const { return m_nodeType; }
     ScrollingNodeID scrollingNodeID() const { return m_nodeID; }
     
-    bool isFixedNode() const { return nodeType() == FixedNode; }
-    bool isStickyNode() const { return nodeType() == StickyNode; }
+    bool isFixedNode() const { return nodeType() == ScrollingNodeType::Fixed; }
+    bool isStickyNode() const { return nodeType() == ScrollingNodeType::Sticky; }
     bool isScrollingNode() const { return isFrameScrollingNode() || isOverflowScrollingNode(); }
-    bool isFrameScrollingNode() const { return nodeType() == MainFrameScrollingNode || nodeType() == SubframeScrollingNode; }
-    bool isOverflowScrollingNode() const { return nodeType() == OverflowScrollingNode; }
+    bool isFrameScrollingNode() const { return nodeType() == ScrollingNodeType::MainFrame || nodeType() == ScrollingNodeType::Subframe; }
+    bool isOverflowScrollingNode() const { return nodeType() == ScrollingNodeType::Overflow; }
 
     virtual void commitStateBeforeChildren(const ScrollingStateNode&) = 0;
     virtual void commitStateAfterChildren(const ScrollingStateNode&) { }

Modified: trunk/Source/WebCore/page/scrolling/ScrollingTreeOverflowScrollingNode.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ScrollingTreeOverflowScrollingNode.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTreeOverflowScrollingNode.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -34,7 +34,7 @@
 namespace WebCore {
 
 ScrollingTreeOverflowScrollingNode::ScrollingTreeOverflowScrollingNode(ScrollingTree& scrollingTree, ScrollingNodeID nodeID)
-    : ScrollingTreeScrollingNode(scrollingTree, OverflowScrollingNode, nodeID)
+    : ScrollingTreeScrollingNode(scrollingTree, ScrollingNodeType::Overflow, nodeID)
 {
 }
 

Modified: trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeCoordinatedGraphics.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeCoordinatedGraphics.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeCoordinatedGraphics.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -49,15 +49,15 @@
 Ref<ScrollingTreeNode> ScrollingTreeCoordinatedGraphics::createScrollingTreeNode(ScrollingNodeType nodeType, ScrollingNodeID nodeID)
 {
     switch (nodeType) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
         return ScrollingTreeFrameScrollingNodeCoordinatedGraphics::create(*this, nodeType, nodeID);
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
         // Should not be reached -- caught by ASSERT_NOT_REACHED() below.
         break;
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         return ScrollingTreeFixedNode::create(*this, nodeID);
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         return ScrollingTreeStickyNode::create(*this, nodeID);
     }
 

Modified: trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeFixedNode.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeFixedNode.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeFixedNode.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -40,7 +40,7 @@
 }
 
 ScrollingTreeFixedNode::ScrollingTreeFixedNode(ScrollingTree& scrollingTree, ScrollingNodeID nodeID)
-    : ScrollingTreeNode(scrollingTree, FixedNode, nodeID)
+    : ScrollingTreeNode(scrollingTree, ScrollingNodeType::Fixed, nodeID)
 {
     scrollingTree.fixedOrStickyNodeAdded();
 }

Modified: trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeStickyNode.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeStickyNode.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingTreeStickyNode.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -40,7 +40,7 @@
 }
 
 ScrollingTreeStickyNode::ScrollingTreeStickyNode(ScrollingTree& scrollingTree, ScrollingNodeID nodeID)
-    : ScrollingTreeNode(scrollingTree, StickyNode, nodeID)
+    : ScrollingTreeNode(scrollingTree, ScrollingNodeType::Sticky, nodeID)
 {
     scrollingTree.fixedOrStickyNodeAdded();
 }

Modified: trunk/Source/WebCore/page/scrolling/ios/ScrollingTreeIOS.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/ios/ScrollingTreeIOS.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/ios/ScrollingTreeIOS.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -86,15 +86,15 @@
 Ref<ScrollingTreeNode> ScrollingTreeIOS::createScrollingTreeNode(ScrollingNodeType nodeType, ScrollingNodeID nodeID)
 {
     switch (nodeType) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
         return ScrollingTreeFrameScrollingNodeIOS::create(*this, nodeType, nodeID);
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
         ASSERT_NOT_REACHED();
         break;
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         return ScrollingTreeFixedNode::create(*this, nodeID);
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         return ScrollingTreeStickyNode::create(*this, nodeID);
     }
     ASSERT_NOT_REACHED();

Modified: trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeFixedNode.mm (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeFixedNode.mm	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeFixedNode.mm	2018-12-24 19:20:18 UTC (rev 239548)
@@ -42,7 +42,7 @@
 }
 
 ScrollingTreeFixedNode::ScrollingTreeFixedNode(ScrollingTree& scrollingTree, ScrollingNodeID nodeID)
-    : ScrollingTreeNode(scrollingTree, FixedNode, nodeID)
+    : ScrollingTreeNode(scrollingTree, ScrollingNodeType::Fixed, nodeID)
 {
     scrollingTree.fixedOrStickyNodeAdded();
 }

Modified: trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeMac.cpp (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeMac.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeMac.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -47,15 +47,15 @@
 Ref<ScrollingTreeNode> ScrollingTreeMac::createScrollingTreeNode(ScrollingNodeType nodeType, ScrollingNodeID nodeID)
 {
     switch (nodeType) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
         return ScrollingTreeFrameScrollingNodeMac::create(*this, nodeType, nodeID);
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
         ASSERT_NOT_REACHED();
         break;
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         return ScrollingTreeFixedNode::create(*this, nodeID);
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         return ScrollingTreeStickyNode::create(*this, nodeID);
     }
     ASSERT_NOT_REACHED();

Modified: trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeStickyNode.mm (239547 => 239548)


--- trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeStickyNode.mm	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeStickyNode.mm	2018-12-24 19:20:18 UTC (rev 239548)
@@ -44,7 +44,7 @@
 }
 
 ScrollingTreeStickyNode::ScrollingTreeStickyNode(ScrollingTree& scrollingTree, ScrollingNodeID nodeID)
-    : ScrollingTreeNode(scrollingTree, StickyNode, nodeID)
+    : ScrollingTreeNode(scrollingTree, ScrollingNodeType::Sticky, nodeID)
 {
     scrollingTree.fixedOrStickyNodeAdded();
 }

Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h (239547 => 239548)


--- trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayerClient.h	2018-12-24 19:20:18 UTC (rev 239548)
@@ -55,9 +55,9 @@
     AnimatedPropertyTransform,
     AnimatedPropertyOpacity,
     AnimatedPropertyBackgroundColor,
-    AnimatedPropertyFilter
+    AnimatedPropertyFilter,
 #if ENABLE(FILTERS_LEVEL_2)
-    , AnimatedPropertyWebkitBackdropFilter
+    AnimatedPropertyWebkitBackdropFilter,
 #endif
 };
 

Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (239547 => 239548)


--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -3806,7 +3806,7 @@
         if (!parentNodeID)
             continue;
 
-        scrollingCoordinator->attachToStateTree(child->isMainFrame() ? MainFrameScrollingNode : SubframeScrollingNode, frameScrollingNodeID, parentNodeID);
+        scrollingCoordinator->attachToStateTree(child->isMainFrame() ? ScrollingNodeType::MainFrame : ScrollingNodeType::Subframe, frameScrollingNodeID, parentNodeID);
     }
 }
 
@@ -3813,12 +3813,12 @@
 static inline LayerScrollCoordinationRole scrollCoordinationRoleForNodeType(ScrollingNodeType nodeType)
 {
     switch (nodeType) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
-    case OverflowScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
+    case ScrollingNodeType::Overflow:
         return Scrolling;
-    case FixedNode:
-    case StickyNode:
+    case ScrollingNodeType::Fixed:
+    case ScrollingNodeType::Sticky:
         return ViewportConstrained;
     }
     ASSERT_NOT_REACHED();
@@ -3874,7 +3874,7 @@
     FrameView& frameView = m_renderView.frameView();
     ASSERT(scrollingCoordinator->coordinatesScrollingForFrameView(frameView));
 
-    ScrollingNodeID nodeID = attachScrollingNode(*m_renderView.layer(), m_renderView.frame().isMainFrame() ? MainFrameScrollingNode : SubframeScrollingNode, parentNodeID);
+    ScrollingNodeID nodeID = attachScrollingNode(*m_renderView.layer(), m_renderView.frame().isMainFrame() ? ScrollingNodeType::MainFrame : ScrollingNodeType::Subframe, parentNodeID);
     ScrollingCoordinator::ScrollingGeometry scrollingGeometry;
     // FIXME(https://webkit.org/b/172917): Pass parentRelativeScrollableRect?
     scrollingGeometry.scrollOrigin = frameView.scrollOrigin();
@@ -3918,11 +3918,11 @@
     // Always call this even if the backing is already attached because the parent may have changed.
     // If a node plays both roles, fixed/sticky is always the ancestor node of scrolling.
     if (reasons & ViewportConstrained) {
-        ScrollingNodeType nodeType = MainFrameScrollingNode;
+        ScrollingNodeType nodeType = ScrollingNodeType::MainFrame;
         if (layer.renderer().isFixedPositioned())
-            nodeType = FixedNode;
+            nodeType = ScrollingNodeType::Fixed;
         else if (layer.renderer().style().position() == PositionType::Sticky)
-            nodeType = StickyNode;
+            nodeType = ScrollingNodeType::Sticky;
         else
             ASSERT_NOT_REACHED();
 
@@ -3937,15 +3937,15 @@
 
         if (changes & ScrollingNodeChangeFlags::LayerGeometry) {
             switch (nodeType) {
-            case FixedNode:
+            case ScrollingNodeType::Fixed:
                 scrollingCoordinator->updateNodeViewportConstraints(nodeID, computeFixedViewportConstraints(layer));
                 break;
-            case StickyNode:
+            case ScrollingNodeType::Sticky:
                 scrollingCoordinator->updateNodeViewportConstraints(nodeID, computeStickyViewportConstraints(layer));
                 break;
-            case MainFrameScrollingNode:
-            case SubframeScrollingNode:
-            case OverflowScrollingNode:
+            case ScrollingNodeType::MainFrame:
+            case ScrollingNodeType::Subframe:
+            case ScrollingNodeType::Overflow:
                 break;
             }
         }
@@ -3958,7 +3958,7 @@
         if (isRenderViewLayer)
             updateScrollCoordinationForThisFrame(parentNodeID);
         else {
-            ScrollingNodeType nodeType = OverflowScrollingNode;
+            ScrollingNodeType nodeType = ScrollingNodeType::Overflow;
             ScrollingNodeID nodeID = attachScrollingNode(layer, nodeType, parentNodeID);
             if (!nodeID)
                 return;

Modified: trunk/Source/WebKit/ChangeLog (239547 => 239548)


--- trunk/Source/WebKit/ChangeLog	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebKit/ChangeLog	2018-12-24 19:20:18 UTC (rev 239548)
@@ -1,3 +1,27 @@
+2018-12-24  Simon Fraser  <[email protected]>
+
+        Change ScrollingNodeType to an enum class
+        https://bugs.webkit.org/show_bug.cgi?id=193009
+
+        Reviewed by Zalan Bujtas.
+
+        Change the ScrollingNodeType enum to an enum class.
+        
+        No behavior change.
+
+        * Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
+        (WebKit::encodeNodeAndDescendants):
+        (WebKit::RemoteScrollingCoordinatorTransaction::decode):
+        (WebKit::dump):
+        * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
+        (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
+        * UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
+        (WebKit::RemoteScrollingTree::createScrollingTreeNode):
+        * UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
+        (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
+        * UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
+        (WebKit::ScrollingTreeScrollingNodeDelegateIOS::updateChildNodesAfterScroll):
+
 2018-12-23  Wenson Hsieh  <[email protected]>
 
         [iOS] Remove some unnecessary editing SPI after <rdar://problem/46047546>

Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp (239547 => 239548)


--- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -333,17 +333,17 @@
     ++encodedNodeCount;
 
     switch (stateNode.nodeType()) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
         encoder << downcast<ScrollingStateFrameScrollingNode>(stateNode);
         break;
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
         encoder << downcast<ScrollingStateOverflowScrollingNode>(stateNode);
         break;
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         encoder << downcast<ScrollingStateFixedNode>(stateNode);
         break;
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         encoder << downcast<ScrollingStateStickyNode>(stateNode);
         break;
     }
@@ -418,20 +418,20 @@
         ASSERT(!parentNodeID || newNode->parent());
         
         switch (nodeType) {
-        case MainFrameScrollingNode:
-        case SubframeScrollingNode:
+        case ScrollingNodeType::MainFrame:
+        case ScrollingNodeType::Subframe:
             if (!decoder.decode(downcast<ScrollingStateFrameScrollingNode>(*newNode)))
                 return false;
             break;
-        case OverflowScrollingNode:
+        case ScrollingNodeType::Overflow:
             if (!decoder.decode(downcast<ScrollingStateOverflowScrollingNode>(*newNode)))
                 return false;
             break;
-        case FixedNode:
+        case ScrollingNodeType::Fixed:
             if (!decoder.decode(downcast<ScrollingStateFixedNode>(*newNode)))
                 return false;
             break;
-        case StickyNode:
+        case ScrollingNodeType::Sticky:
             if (!decoder.decode(downcast<ScrollingStateStickyNode>(*newNode)))
                 return false;
             break;
@@ -562,17 +562,17 @@
         ts.dumpProperty("layer", static_cast<GraphicsLayer::PlatformLayerID>(node.layer()));
     
     switch (node.nodeType()) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
         dump(ts, downcast<ScrollingStateFrameScrollingNode>(node), changedPropertiesOnly);
         break;
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
         dump(ts, downcast<ScrollingStateOverflowScrollingNode>(node), changedPropertiesOnly);
         break;
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         dump(ts, downcast<ScrollingStateFixedNode>(node), changedPropertiesOnly);
         break;
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         dump(ts, downcast<ScrollingStateStickyNode>(node), changedPropertiesOnly);
         break;
     }

Modified: trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp (239547 => 239548)


--- trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -103,8 +103,8 @@
             currNode->setLayer(layerTreeHost.layerForID(currNode->layer()));
 
         switch (currNode->nodeType()) {
-        case MainFrameScrollingNode:
-        case SubframeScrollingNode: {
+        case ScrollingNodeType::MainFrame:
+        case ScrollingNodeType::Subframe: {
             ScrollingStateFrameScrollingNode& scrollingStateNode = downcast<ScrollingStateFrameScrollingNode>(*currNode);
             
             if (scrollingStateNode.hasChangedProperty(ScrollingStateScrollingNode::ScrolledContentsLayer))
@@ -127,7 +127,7 @@
                 scrollingStateNode.setFooterLayer(layerTreeHost.layerForID(scrollingStateNode.footerLayer()));
             break;
         }
-        case OverflowScrollingNode: {
+        case ScrollingNodeType::Overflow: {
             ScrollingStateOverflowScrollingNode& scrollingStateNode = downcast<ScrollingStateOverflowScrollingNode>(*currNode);
 
             if (scrollingStateNode.hasChangedProperty(ScrollingStateScrollingNode::ScrolledContentsLayer))
@@ -134,8 +134,8 @@
                 scrollingStateNode.setScrolledContentsLayer(layerTreeHost.layerForID(scrollingStateNode.scrolledContentsLayer()));
             break;
         }
-        case FixedNode:
-        case StickyNode:
+        case ScrollingNodeType::Fixed:
+        case ScrollingNodeType::Sticky:
             break;
         }
     }

Modified: trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp (239547 => 239548)


--- trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp	2018-12-24 19:20:18 UTC (rev 239548)
@@ -112,14 +112,14 @@
 Ref<ScrollingTreeNode> RemoteScrollingTree::createScrollingTreeNode(ScrollingNodeType nodeType, ScrollingNodeID nodeID)
 {
     switch (nodeType) {
-    case MainFrameScrollingNode:
-    case SubframeScrollingNode:
+    case ScrollingNodeType::MainFrame:
+    case ScrollingNodeType::Subframe:
 #if PLATFORM(IOS_FAMILY)
         return ScrollingTreeFrameScrollingNodeIOS::create(*this, nodeType, nodeID);
 #else
         return ScrollingTreeFrameScrollingNodeMac::create(*this, nodeType, nodeID);
 #endif
-    case OverflowScrollingNode:
+    case ScrollingNodeType::Overflow:
 #if PLATFORM(IOS_FAMILY)
         return ScrollingTreeOverflowScrollingNodeIOS::create(*this, nodeID);
 #else
@@ -126,9 +126,9 @@
         ASSERT_NOT_REACHED();
         break;
 #endif
-    case FixedNode:
+    case ScrollingNodeType::Fixed:
         return ScrollingTreeFixedNode::create(*this, nodeID);
-    case StickyNode:
+    case ScrollingNodeType::Sticky:
         return ScrollingTreeStickyNode::create(*this, nodeID);
     }
     ASSERT_NOT_REACHED();

Modified: trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm (239547 => 239548)


--- trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm	2018-12-24 19:20:18 UTC (rev 239548)
@@ -51,7 +51,7 @@
 {
     for (auto& currNode : stateTree.nodeMap().values()) {
         switch (currNode->nodeType()) {
-        case OverflowScrollingNode: {
+        case ScrollingNodeType::Overflow: {
             ScrollingStateOverflowScrollingNode& scrollingStateNode = downcast<ScrollingStateOverflowScrollingNode>(*currNode);
             
             if (scrollingStateNode.hasChangedProperty(ScrollingStateNode::ScrollLayer))
@@ -61,8 +61,8 @@
                 scrollingStateNode.setScrolledContentsLayer(layerTreeHost.layerForID(scrollingStateNode.scrolledContentsLayer()));
             break;
         };
-        case MainFrameScrollingNode:
-        case SubframeScrollingNode: {
+        case ScrollingNodeType::MainFrame:
+        case ScrollingNodeType::Subframe: {
             ScrollingStateFrameScrollingNode& scrollingStateNode = downcast<ScrollingStateFrameScrollingNode>(*currNode);
             
             if (scrollingStateNode.hasChangedProperty(ScrollingStateNode::ScrollLayer))
@@ -79,8 +79,8 @@
                 scrollingStateNode.setFooterLayer(layerTreeHost.layerForID(scrollingStateNode.footerLayer()));
             break;
         }
-        case FixedNode:
-        case StickyNode:
+        case ScrollingNodeType::Fixed:
+        case ScrollingNodeType::Sticky:
             if (currNode->hasChangedProperty(ScrollingStateNode::ScrollLayer))
                 currNode->setLayer(layerTreeHost.layerForID(currNode->layer()));
             break;

Modified: trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm (239547 => 239548)


--- trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm	2018-12-24 05:07:01 UTC (rev 239547)
+++ trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm	2018-12-24 19:20:18 UTC (rev 239548)
@@ -246,7 +246,7 @@
 
     FloatRect fixedPositionRect;
     auto* frameNode = scrollingNode().enclosingFrameNodeIncludingSelf();
-    if (frameNode && frameNode->nodeType() == SubframeScrollingNode)
+    if (frameNode && frameNode->nodeType() == ScrollingNodeType::Subframe)
         fixedPositionRect = frameNode->fixedPositionRect();
     else
         fixedPositionRect = scrollingTree().fixedPositionRect();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to