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

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

Issue 131223003: Track intruding and overhanging floats (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 6 years, 11 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/FloatingObjects.h
diff --git a/Source/core/rendering/FloatingObjects.h b/Source/core/rendering/FloatingObjects.h
index ca3beb1a3450c5ef14f27ac36c3d992655f2742e..9b21837ecd33b97e5d8bc54d54a3998311625299 100644
--- a/Source/core/rendering/FloatingObjects.h
+++ b/Source/core/rendering/FloatingObjects.h
@@ -84,6 +84,9 @@ public:
void setIsInPlacedTree(bool value) { m_isInPlacedTree = value; }
#endif
+ bool isOverhangingOrIntruding() const { return m_isOverhangingOrIntruding; }
+ void setIsOverhangingOrIntruding(bool value) { m_isOverhangingOrIntruding = value; }
+
bool shouldPaint() const { return m_shouldPaint; }
void setShouldPaint(bool shouldPaint) { m_shouldPaint = shouldPaint; }
bool isDescendant() const { return m_isDescendant; }
@@ -109,6 +112,7 @@ private:
#ifndef NDEBUG
unsigned m_isInPlacedTree : 1;
#endif
+ unsigned m_isOverhangingOrIntruding : 1;
};
struct FloatingObjectHashFunctions {
@@ -134,8 +138,10 @@ public:
~FloatingObjects();
void clear();
+ void clearOverhangingAndIntrudingFloats();
void moveAllToFloatInfoMap(RendererToFloatInfoMap&);
FloatingObject* add(PassOwnPtr<FloatingObject>);
+ FloatingObject* addOverhangingOrIntrudingFloat(PassOwnPtr<FloatingObject>);
void remove(FloatingObject*);
void addPlacedObject(FloatingObject*);
void removePlacedObject(FloatingObject*);
@@ -172,6 +178,7 @@ private:
FloatingObjectInterval intervalForFloatingObject(FloatingObject*);
FloatingObjectSet m_set;
+ FloatingObjectSet m_overhangingOrIntrudingSet;
FloatingObjectTree m_placedFloatsTree;
unsigned m_leftObjectsCount;
unsigned m_rightObjectsCount;
« no previous file with comments | « LayoutTests/fast/block/float/float-selection-delete-crash-expected.txt ('k') | Source/core/rendering/FloatingObjects.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698