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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutBlockFlow.h

Issue 1974323002: Move inlineElementContinuation() to LayoutBlockFlow. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Code review. Created 4 years, 7 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved. 5 * Copyright (C) 2003-2013 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
7 * Copyright (C) 2013 Google Inc. All rights reserved. 7 * Copyright (C) 2013 Google Inc. All rights reserved.
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions are 10 * modification, are permitted provided that the following conditions are
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 146
147 void removeFloatingObjectsFromDescendants(); 147 void removeFloatingObjectsFromDescendants();
148 void markAllDescendantsWithFloatsForLayout(LayoutBox* floatToRemove = nullpt r, bool inLayout = true); 148 void markAllDescendantsWithFloatsForLayout(LayoutBox* floatToRemove = nullpt r, bool inLayout = true);
149 void markSiblingsWithFloatsForLayout(LayoutBox* floatToRemove = nullptr); 149 void markSiblingsWithFloatsForLayout(LayoutBox* floatToRemove = nullptr);
150 150
151 bool containsFloats() const { return m_floatingObjects && !m_floatingObjects ->set().isEmpty(); } 151 bool containsFloats() const { return m_floatingObjects && !m_floatingObjects ->set().isEmpty(); }
152 bool containsFloat(LayoutBox*) const; 152 bool containsFloat(LayoutBox*) const;
153 153
154 void removeFloatingObjects(); 154 void removeFloatingObjects();
155 155
156 LayoutInline* inlineElementContinuation() const;
157
156 void addChild(LayoutObject* newChild, LayoutObject* beforeChild = nullptr) o verride; 158 void addChild(LayoutObject* newChild, LayoutObject* beforeChild = nullptr) o verride;
157 void removeChild(LayoutObject*) override; 159 void removeChild(LayoutObject*) override;
158 160
159 void moveAllChildrenIncludingFloatsTo(LayoutBlock* toBlock, bool fullRemoveI nsert); 161 void moveAllChildrenIncludingFloatsTo(LayoutBlock* toBlock, bool fullRemoveI nsert);
160 162
161 void childBecameFloatingOrOutOfFlow(LayoutBox* child); 163 void childBecameFloatingOrOutOfFlow(LayoutBox* child);
162 void collapseAnonymousBlockChild(LayoutBlockFlow* child); 164 void collapseAnonymousBlockChild(LayoutBlockFlow* child);
163 165
164 bool generatesLineBoxesForInlineChild(LayoutObject*); 166 bool generatesLineBoxesForInlineChild(LayoutObject*);
165 167
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 void setLogicalTopForChild(LayoutBox& child, LayoutUnit logicalTop); 340 void setLogicalTopForChild(LayoutBox& child, LayoutUnit logicalTop);
339 void determineLogicalLeftPositionForChild(LayoutBox& child); 341 void determineLogicalLeftPositionForChild(LayoutBox& child);
340 342
341 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse t, IncludeBlockVisualOverflowOrNot) const override; 343 void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffse t, IncludeBlockVisualOverflowOrNot) const override;
342 344
343 PaintInvalidationReason invalidatePaintIfNeeded(const PaintInvalidationState &) override; 345 PaintInvalidationReason invalidatePaintIfNeeded(const PaintInvalidationState &) override;
344 346
345 Node* nodeForHitTest() const final; 347 Node* nodeForHitTest() const final;
346 bool hitTestChildren(HitTestResult&, const HitTestLocation& locationInContai ner, const LayoutPoint& accumulatedOffset, HitTestAction) override; 348 bool hitTestChildren(HitTestResult&, const HitTestLocation& locationInContai ner, const LayoutPoint& accumulatedOffset, HitTestAction) override;
347 349
350 LayoutSize accumulateInFlowPositionOffsets() const override;
351
348 private: 352 private:
349 bool layoutBlockFlow(bool relayoutChildren, LayoutUnit& pageLogicalHeight, S ubtreeLayoutScope&); 353 bool layoutBlockFlow(bool relayoutChildren, LayoutUnit& pageLogicalHeight, S ubtreeLayoutScope&);
350 void layoutBlockChildren(bool relayoutChildren, SubtreeLayoutScope&, LayoutU nit beforeEdge, LayoutUnit afterEdge); 354 void layoutBlockChildren(bool relayoutChildren, SubtreeLayoutScope&, LayoutU nit beforeEdge, LayoutUnit afterEdge);
351 355
352 void markDescendantsWithFloatsForLayoutIfNeeded(LayoutBlockFlow& child, Layo utUnit newLogicalTop, LayoutUnit previousFloatLogicalBottom); 356 void markDescendantsWithFloatsForLayoutIfNeeded(LayoutBlockFlow& child, Layo utUnit newLogicalTop, LayoutUnit previousFloatLogicalBottom);
353 bool positionAndLayoutOnceIfNeeded(LayoutBox& child, LayoutUnit newLogicalTo p, BlockChildrenLayoutInfo&); 357 bool positionAndLayoutOnceIfNeeded(LayoutBox& child, LayoutUnit newLogicalTo p, BlockChildrenLayoutInfo&);
354 358
355 // Handle breaking policy before the child, and insert a forced break in fro nt of it if needed. 359 // Handle breaking policy before the child, and insert a forced break in fro nt of it if needed.
356 // Returns true if a forced break was inserted. 360 // Returns true if a forced break was inserted.
357 bool insertForcedBreakBeforeChildIfNeeded(LayoutBox& child, BlockChildrenLay outInfo&); 361 bool insertForcedBreakBeforeChildIfNeeded(LayoutBox& child, BlockChildrenLay outInfo&);
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
658 662
659 // END METHODS DEFINED IN LayoutBlockFlowLine 663 // END METHODS DEFINED IN LayoutBlockFlowLine
660 664
661 }; 665 };
662 666
663 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBlockFlow, isLayoutBlockFlow()); 667 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutBlockFlow, isLayoutBlockFlow());
664 668
665 } // namespace blink 669 } // namespace blink
666 670
667 #endif // LayoutBlockFlow_h 671 #endif // LayoutBlockFlow_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutBlock.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698