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

Unified Diff: Source/core/rendering/RenderObject.h

Issue 665673004: Move selection invalidation to the invalidation phase (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Tentative fix, up for slammin' reviews Created 6 years, 2 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/RenderObject.h
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h
index bdeea0899053be872952974f06ddaaccbb26027c..6aa2a76b9dbd42f1bda0dfd19c11a21027477a36 100644
--- a/Source/core/rendering/RenderObject.h
+++ b/Source/core/rendering/RenderObject.h
@@ -998,6 +998,9 @@ public:
const LayoutRect& previousPaintInvalidationRect() const { return m_previousPaintInvalidationRect; }
void setPreviousPaintInvalidationRect(const LayoutRect& rect) { m_previousPaintInvalidationRect = rect; }
+ const LayoutRect& previousSelectionRectForPaintInvalidation() const { return m_previousSelectionRectForPaintInvalidation; }
+ void setpreviousSelectionRectForPaintInvalidation(const LayoutRect& rect) { m_previousSelectionRectForPaintInvalidation = rect; setShouldInvalidateSelection(); }
Xianzhu 2014/10/30 23:35:42 /setprevious/setPrevious/ And it seems better to
Julien - ping for review 2014/10/31 22:31:03 Doh', fixed!
+
// The previous position of the top-left corner of the object in its previous paint backing.
const LayoutPoint& previousPositionFromPaintInvalidationBacking() const { return m_previousPositionFromPaintInvalidationBacking; }
void setPreviousPositionFromPaintInvalidationBacking(const LayoutPoint& positionFromPaintInvalidationBacking) { m_previousPositionFromPaintInvalidationBacking = positionFromPaintInvalidationBacking; }
@@ -1391,9 +1394,12 @@ private:
// Store state between styleWillChange and styleDidChange
static bool s_affectsParentBlock;
- // This stores the paint invalidation rect from the previous layout.
+ // This stores the paint invalidation rect from the previous frame.
LayoutRect m_previousPaintInvalidationRect;
+ // This stores the selection invalidation rect from the previous frame.
+ LayoutRect m_previousSelectionRectForPaintInvalidation;
Xianzhu 2014/10/30 23:35:42 Seems not the best to add another rect :( As only
dsinclair 2014/10/31 14:03:16 Global maps make things more confusing. Do we know
Xianzhu 2014/10/31 15:52:35 Got the feeling that every bit in RenderObject is
Julien - ping for review 2014/10/31 22:31:03 I think I have found a way to make a map work (did
+
// This stores the position in the paint invalidation backing's coordinate.
// It is used to detect renderer shifts that forces a full invalidation.
LayoutPoint m_previousPositionFromPaintInvalidationBacking;

Powered by Google App Engine
This is Rietveld 408576698