| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef ScrollPaintPropertyNode_h | 5 #ifndef ScrollPaintPropertyNode_h |
| 6 #define ScrollPaintPropertyNode_h | 6 #define ScrollPaintPropertyNode_h |
| 7 | 7 |
| 8 #include "platform/PlatformExport.h" | 8 #include "platform/PlatformExport.h" |
| 9 #include "platform/geometry/FloatSize.h" | 9 #include "platform/geometry/FloatSize.h" |
| 10 #include "platform/graphics/paint/TransformPaintPropertyNode.h" | 10 #include "platform/graphics/paint/TransformPaintPropertyNode.h" |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 // A scroll node contains auxiliary scrolling information for threaded scrolling | 23 // A scroll node contains auxiliary scrolling information for threaded scrolling |
| 24 // which includes how far an area can be scrolled, which transform node contains | 24 // which includes how far an area can be scrolled, which transform node contains |
| 25 // the scroll offset, etc. | 25 // the scroll offset, etc. |
| 26 // | 26 // |
| 27 // Main thread scrolling reasons force scroll updates to go to the main thread | 27 // Main thread scrolling reasons force scroll updates to go to the main thread |
| 28 // and can have dependencies on other nodes. For example, all parents of a | 28 // and can have dependencies on other nodes. For example, all parents of a |
| 29 // scroll node with background attachment fixed set should also have it set. | 29 // scroll node with background attachment fixed set should also have it set. |
| 30 class PLATFORM_EXPORT ScrollPaintPropertyNode | 30 class PLATFORM_EXPORT ScrollPaintPropertyNode |
| 31 : public RefCounted<ScrollPaintPropertyNode> { | 31 : public RefCounted<ScrollPaintPropertyNode> { |
| 32 public: | 32 public: |
| 33 // This node is really a sentinel, and does not represent a real scroll. |
| 33 static ScrollPaintPropertyNode* root(); | 34 static ScrollPaintPropertyNode* root(); |
| 34 | 35 |
| 35 static PassRefPtr<ScrollPaintPropertyNode> create( | 36 static PassRefPtr<ScrollPaintPropertyNode> create( |
| 36 PassRefPtr<const ScrollPaintPropertyNode> parent, | 37 PassRefPtr<const ScrollPaintPropertyNode> parent, |
| 37 PassRefPtr<const TransformPaintPropertyNode> scrollOffsetTranslation, | 38 PassRefPtr<const TransformPaintPropertyNode> scrollOffsetTranslation, |
| 38 const IntSize& clip, | 39 const IntSize& clip, |
| 39 const IntSize& bounds, | 40 const IntSize& bounds, |
| 40 bool userScrollableHorizontal, | 41 bool userScrollableHorizontal, |
| 41 bool userScrollableVertical, | 42 bool userScrollableVertical, |
| 42 MainThreadScrollingReasons mainThreadScrollingReasons) { | 43 MainThreadScrollingReasons mainThreadScrollingReasons) { |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 MainThreadScrollingReasons m_mainThreadScrollingReasons; | 155 MainThreadScrollingReasons m_mainThreadScrollingReasons; |
| 155 }; | 156 }; |
| 156 | 157 |
| 157 // Redeclared here to avoid ODR issues. | 158 // Redeclared here to avoid ODR issues. |
| 158 // See platform/testing/PaintPrinters.h. | 159 // See platform/testing/PaintPrinters.h. |
| 159 void PrintTo(const ScrollPaintPropertyNode&, std::ostream*); | 160 void PrintTo(const ScrollPaintPropertyNode&, std::ostream*); |
| 160 | 161 |
| 161 } // namespace blink | 162 } // namespace blink |
| 162 | 163 |
| 163 #endif // ScrollPaintPropertyNode_h | 164 #endif // ScrollPaintPropertyNode_h |
| OLD | NEW |