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

Unified Diff: third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h

Issue 2698473006: Set layer scroll data from PaintArtifactCompositor (Closed)
Patch Set: More comments Created 3 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h
diff --git a/third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h b/third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h
index ea1bc43bcb96b410b3a5c4ad798ae9035b55c2bd..60ec0322eced880ad484648f262fc089e19971e0 100644
--- a/third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h
+++ b/third_party/WebKit/Source/platform/graphics/paint/ScrollPaintPropertyNode.h
@@ -18,6 +18,7 @@
namespace blink {
using MainThreadScrollingReasons = uint32_t;
+class WebLayerScrollClient;
// A scroll node contains auxiliary scrolling information which includes how far
// an area can be scrolled, main thread scrolling reasons, etc. Scroll nodes
@@ -43,10 +44,11 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
const IntSize& bounds,
bool userScrollableHorizontal,
bool userScrollableVertical,
- MainThreadScrollingReasons mainThreadScrollingReasons) {
+ MainThreadScrollingReasons mainThreadScrollingReasons,
+ WebLayerScrollClient* scrollClient) {
return adoptRef(new ScrollPaintPropertyNode(
std::move(parent), clip, bounds, userScrollableHorizontal,
- userScrollableVertical, mainThreadScrollingReasons));
+ userScrollableVertical, mainThreadScrollingReasons, scrollClient));
}
void update(PassRefPtr<const ScrollPaintPropertyNode> parent,
@@ -54,7 +56,8 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
const IntSize& bounds,
bool userScrollableHorizontal,
bool userScrollableVertical,
- MainThreadScrollingReasons mainThreadScrollingReasons) {
+ MainThreadScrollingReasons mainThreadScrollingReasons,
+ WebLayerScrollClient* scrollClient) {
DCHECK(!isRoot());
DCHECK(parent != this);
m_parent = parent;
@@ -63,6 +66,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
m_userScrollableHorizontal = userScrollableHorizontal;
m_userScrollableVertical = userScrollableVertical;
m_mainThreadScrollingReasons = mainThreadScrollingReasons;
+ m_scrollClient = scrollClient;
}
const ScrollPaintPropertyNode* parent() const { return m_parent.get(); }
@@ -94,6 +98,8 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects;
}
+ WebLayerScrollClient* scrollClient() const { return m_scrollClient; }
+
#if DCHECK_IS_ON()
// The clone function is used by FindPropertiesNeedingUpdate.h for recording
// a scroll node before it has been updated, to later detect changes.
@@ -101,7 +107,8 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
RefPtr<ScrollPaintPropertyNode> cloned =
adoptRef(new ScrollPaintPropertyNode(
m_parent, m_clip, m_bounds, m_userScrollableHorizontal,
- m_userScrollableVertical, m_mainThreadScrollingReasons));
+ m_userScrollableVertical, m_mainThreadScrollingReasons,
+ m_scrollClient));
return cloned;
}
@@ -112,7 +119,8 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
m_bounds == o.m_bounds &&
m_userScrollableHorizontal == o.m_userScrollableHorizontal &&
m_userScrollableVertical == o.m_userScrollableVertical &&
- m_mainThreadScrollingReasons == o.m_mainThreadScrollingReasons;
+ m_mainThreadScrollingReasons == o.m_mainThreadScrollingReasons &&
+ m_scrollClient == o.m_scrollClient;
}
String toTreeString() const;
@@ -126,13 +134,15 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
IntSize bounds,
bool userScrollableHorizontal,
bool userScrollableVertical,
- MainThreadScrollingReasons mainThreadScrollingReasons)
+ MainThreadScrollingReasons mainThreadScrollingReasons,
+ WebLayerScrollClient* scrollClient)
: m_parent(parent),
m_clip(clip),
m_bounds(bounds),
m_userScrollableHorizontal(userScrollableHorizontal),
m_userScrollableVertical(userScrollableVertical),
- m_mainThreadScrollingReasons(mainThreadScrollingReasons) {}
+ m_mainThreadScrollingReasons(mainThreadScrollingReasons),
+ m_scrollClient(scrollClient) {}
RefPtr<const ScrollPaintPropertyNode> m_parent;
IntSize m_clip;
@@ -140,6 +150,7 @@ class PLATFORM_EXPORT ScrollPaintPropertyNode
bool m_userScrollableHorizontal : 1;
bool m_userScrollableVertical : 1;
MainThreadScrollingReasons m_mainThreadScrollingReasons;
+ WebLayerScrollClient* m_scrollClient;
};
// Redeclared here to avoid ODR issues.

Powered by Google App Engine
This is Rietveld 408576698