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

Unified Diff: third_party/WebKit/Source/core/layout/LayoutFlowThread.h

Issue 2748973002: Strictly unbreakable objects need to prevent interaction with the outside. (Closed)
Patch Set: Created 3 years, 9 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/layout/LayoutFlowThread.h
diff --git a/third_party/WebKit/Source/core/layout/LayoutFlowThread.h b/third_party/WebKit/Source/core/layout/LayoutFlowThread.h
index f0087d0d797398b942e8cffa7955b9ab0c269706..3654b455d19c0602101bdecf20883e24c5c8fd07 100644
--- a/third_party/WebKit/Source/core/layout/LayoutFlowThread.h
+++ b/third_party/WebKit/Source/core/layout/LayoutFlowThread.h
@@ -71,8 +71,24 @@ class CORE_EXPORT LayoutFlowThread : public LayoutBlockFlow {
virtual bool isLayoutMultiColumnFlowThread() const { return false; }
virtual bool isLayoutPagedFlowThread() const { return false; }
+ // Search mode when looking for an enclosing fragmentation context.
+ enum AncestorSearchConstraint {
+ // No constraints. Sometimes we just want to find all enclosing
+ // fragmentation contexts, e.g. to calculate the accumulated visual
+ // translation.
+ AnyAncestor,
+
+ // Consider fragmentation contexts that are strictly unbreakable (seen from
+ // the outside) to be isolated from the rest, so that such fragmentation
+ // contexts don't participate in fragmentation of enclosing fragmentation
+ // contexts, apart from taking up space and otherwise being completely
+ // unbreakable. This is typically what we want to do during layout.
+ IsolateUnbreakableContainers,
+ };
+
static LayoutFlowThread* locateFlowThreadContainingBlockOf(
- const LayoutObject&);
+ const LayoutObject&,
+ AncestorSearchConstraint = IsolateUnbreakableContainers);
void layout() override;

Powered by Google App Engine
This is Rietveld 408576698