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

Unified Diff: Source/core/rendering/style/RenderStyle.h

Issue 236203020: Separate repaint and layout requirements of StyleDifference (Step 1) (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Update layout test expectations Created 6 years, 8 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: Source/core/rendering/style/RenderStyle.h
diff --git a/Source/core/rendering/style/RenderStyle.h b/Source/core/rendering/style/RenderStyle.h
index 8474a7ff7cecd4685e598a5e9463095ee981c207..d5e29a2a657bce2c53d3b6721eb51128f870b5ee 100644
--- a/Source/core/rendering/style/RenderStyle.h
+++ b/Source/core/rendering/style/RenderStyle.h
@@ -41,6 +41,7 @@
#include "core/rendering/style/StyleBackgroundData.h"
#include "core/rendering/style/StyleBoxData.h"
#include "core/rendering/style/StyleDeprecatedFlexibleBoxData.h"
+#include "core/rendering/style/StyleDifference.h"
#include "core/rendering/style/StyleFilterData.h"
#include "core/rendering/style/StyleFlexibleBoxData.h"
#include "core/rendering/style/StyleGridData.h"
@@ -360,7 +361,7 @@ public:
static StyleRecalcChange stylePropagationDiff(const RenderStyle* oldStyle, const RenderStyle* newStyle);
// Computes how much visual invalidation the style change causes: layout, repaint or recomposite.
- StyleDifference visualInvalidationDiff(const RenderStyle&, unsigned& changedContextSensitiveProperties) const;
+ StyleDifference visualInvalidationDiff(const RenderStyle&) const;
enum IsAtShadowBoundary {
AtShadowBoundary,
@@ -1778,7 +1779,14 @@ private:
Color lightingColor() const { return svgStyle()->lightingColor(); }
void appendContent(PassOwnPtr<ContentData>);
- StyleDifference repaintOnlyDiff(const RenderStyle& other, unsigned& changedContextSensitiveProperties) const;
+
+ bool diffNeedsLayoutAndRepaintLayer(const RenderStyle& other) const;
+ bool diffNeedsLayoutAndRepaintSelf(const RenderStyle& other) const;
+ bool diffNeedsLayoutOnly(const RenderStyle& other) const;
+ bool diffNeedsRepaintLayerOnly(const RenderStyle& other) const;
+ bool diffNeedsRepaintOnly(const RenderStyle& other) const;
+ bool diffNeedsRecompositeLayerOnly(const RenderStyle& other) const;
+ void addContextSensitiveDiffFlags(const RenderStyle& other, StyleDifference&) const;
};
inline int adjustForAbsoluteZoom(int value, float zoomFactor)

Powered by Google App Engine
This is Rietveld 408576698