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

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

Issue 1920453003: [css-flexbox] Implement new abspos handling (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix test Created 4 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: third_party/WebKit/Source/core/layout/LayoutFlexibleBox.h
diff --git a/third_party/WebKit/Source/core/layout/LayoutFlexibleBox.h b/third_party/WebKit/Source/core/layout/LayoutFlexibleBox.h
index 96b647f5898b4b15ec3a8465ddd5439b7d768f75..da579835746e95018733786e6a59994654160f63 100644
--- a/third_party/WebKit/Source/core/layout/LayoutFlexibleBox.h
+++ b/third_party/WebKit/Source/core/layout/LayoutFlexibleBox.h
@@ -70,6 +70,16 @@ public:
LayoutUnit childLogicalWidthForPercentageResolution(const LayoutBox& child);
void clearCachedMainSizeForChild(const LayoutBox& child);
+
+ LayoutUnit staticMainAxisPositionForPositionedChild(const LayoutBox& child);
+ LayoutUnit staticCrossAxisPositionForPositionedChild(const LayoutBox& child);
+
+ LayoutUnit staticInlinePositionForPositionedChild(const LayoutBox& child);
+ LayoutUnit staticBlockPositionForPositionedChild(const LayoutBox& child);
+
+ // Returns true if the position changed. In that case, the child will have to be
+ // laid out again.
+ bool setStaticPositionForPositionedLayout(LayoutBox& child);
protected:
void computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const override;
@@ -82,11 +92,6 @@ private:
NegativeFlexibility,
};
- enum PositionedLayoutMode {
- FlipForRowReverse,
- NoFlipForRowReverse,
- };
-
enum ChildLayoutType {
LayoutIfNeeded,
ForceLayout,
@@ -177,7 +182,7 @@ private:
void resetAutoMarginsAndLogicalTopInCrossAxis(LayoutBox& child);
void setOverrideMainAxisSizeForChild(LayoutBox& child, LayoutUnit childPreferredSize);
- void prepareChildForPositionedLayout(LayoutBox& child, LayoutUnit mainAxisOffset, LayoutUnit crossAxisOffset, PositionedLayoutMode);
+ void prepareChildForPositionedLayout(LayoutBox& child);
size_t numberOfInFlowPositionedChildren(const OrderedFlexItemList&) const;
void layoutAndPlaceChildren(LayoutUnit& crossAxisOffset, const OrderedFlexItemList&, const Vector<LayoutUnit, 16>& childSizes, LayoutUnit availableFreeSpace, bool relayoutChildren, SubtreeLayoutScope&, Vector<LineContext>&);
void layoutColumnReverse(const OrderedFlexItemList&, LayoutUnit crossAxisOffset, LayoutUnit availableFreeSpace);
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutBlock.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698