Bug 1349750 - Add HitTestingTreeNode::IsScrollThumbNode(). r=kats draft
authorBotond Ballo <botond@mozilla.com>
Fri, 05 May 2017 18:05:52 -0400
changeset 577146 10518e52777e39743587adcca6c73b9f6382646e
parent 577145 edd32f6d2988c38df4cdf470fadf155136baed80
child 577147 a380346fefd9e0fbcbbbcdcd61c0272b727acfed
push id58627
push userbballo@mozilla.com
push dateFri, 12 May 2017 22:26:26 +0000
reviewerskats
bugs1349750
milestone55.0a1
Bug 1349750 - Add HitTestingTreeNode::IsScrollThumbNode(). r=kats MozReview-Commit-ID: GMKg3akA9qp
gfx/layers/apz/src/HitTestingTreeNode.cpp
gfx/layers/apz/src/HitTestingTreeNode.h
--- a/gfx/layers/apz/src/HitTestingTreeNode.cpp
+++ b/gfx/layers/apz/src/HitTestingTreeNode.cpp
@@ -108,19 +108,25 @@ HitTestingTreeNode::MatchesScrollDragMet
   return ((mScrollThumbData.mDirection == ScrollDirection::HORIZONTAL &&
            aDragMetrics.mDirection == AsyncDragMetrics::HORIZONTAL) ||
           (mScrollThumbData.mDirection == ScrollDirection::VERTICAL &&
            aDragMetrics.mDirection == AsyncDragMetrics::VERTICAL)) &&
          mScrollViewId == aDragMetrics.mViewId;
 }
 
 bool
+HitTestingTreeNode::IsScrollThumbNode() const
+{
+  return mScrollThumbData.mDirection != ScrollDirection::NONE;
+}
+
+bool
 HitTestingTreeNode::IsScrollbarNode() const
 {
-  return mIsScrollbarContainer || (mScrollThumbData.mDirection != ScrollDirection::NONE);
+  return mIsScrollbarContainer || IsScrollThumbNode();
 }
 
 FrameMetrics::ViewID
 HitTestingTreeNode::GetScrollTargetId() const
 {
   return mScrollViewId;
 }
 
--- a/gfx/layers/apz/src/HitTestingTreeNode.h
+++ b/gfx/layers/apz/src/HitTestingTreeNode.h
@@ -90,17 +90,18 @@ public:
   bool IsOutsideClip(const ParentLayerPoint& aPoint) const;
 
   /* Scrollbar info */
 
   void SetScrollbarData(FrameMetrics::ViewID aScrollViewId,
                         const ScrollThumbData& aThumbData,
                         bool aIsScrollContainer);
   bool MatchesScrollDragMetrics(const AsyncDragMetrics& aDragMetrics) const;
-  bool IsScrollbarNode() const;
+  bool IsScrollbarNode() const;  // Scroll thumb or scrollbar container layer.
+  bool IsScrollThumbNode() const;  // Scroll thumb container layer.
   FrameMetrics::ViewID GetScrollTargetId() const;
   const ScrollThumbData& GetScrollThumbData() const;
 
   /* Fixed pos info */
 
   void SetFixedPosData(FrameMetrics::ViewID aFixedPosTarget);
   FrameMetrics::ViewID GetFixedPosTarget() const;