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

Unified Diff: third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h

Issue 2299533002: WIP: Construct SPV2's scroll paint property tree (Closed)
Patch Set: Add more paint property builder tests, update comments/documentation" Created 4 years, 3 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/core/paint/PaintPropertyTreeBuilder.h
diff --git a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h
index f98daf2017a0962a0d114cdc9d2b3137c3a5255f..31a849b37ecec044dea609afc08071df6d1b16ba 100644
--- a/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h
+++ b/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h
@@ -8,6 +8,7 @@
#include "platform/geometry/LayoutPoint.h"
#include "platform/graphics/paint/ClipPaintPropertyNode.h"
#include "platform/graphics/paint/EffectPaintPropertyNode.h"
+#include "platform/graphics/paint/ScrollPaintPropertyNode.h"
#include "platform/graphics/paint/TransformPaintPropertyNode.h"
#include "wtf/RefPtr.h"
@@ -43,6 +44,10 @@ struct PaintPropertyTreeBuilderContext {
// the transform and paint offset above. Also the actual raster region may be affected
// by layerization and occlusion tracking.
const ClipPaintPropertyNode* clip = nullptr;
+ // The scroll node contains information for compositor-thread scrolling such as the
+ // scrolling hierarchy, the extent that can be scrolled, etc. Because scroll nodes reference
+ // a scroll offset transform, scroll nodes should be updated if the transform tree changes.
+ const ScrollPaintPropertyNode* scroll = nullptr;
};
ContainingBlockContext current;
@@ -86,7 +91,7 @@ private:
static void updateOverflowClip(const LayoutObject&, PaintPropertyTreeBuilderContext&);
static void updatePerspective(const LayoutObject&, PaintPropertyTreeBuilderContext&);
static void updateSvgLocalToBorderBoxTransform(const LayoutObject&, PaintPropertyTreeBuilderContext&);
- static void updateScrollTranslation(const LayoutObject&, PaintPropertyTreeBuilderContext&);
+ static void updateScrollAndScrollTranslation(const LayoutObject&, PaintPropertyTreeBuilderContext&);
static void updateOutOfFlowContext(const LayoutObject&, PaintPropertyTreeBuilderContext&);
};

Powered by Google App Engine
This is Rietveld 408576698