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

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

Issue 1639723003: [css-flexbox] Use correct aspect ratio for min-size: auto (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more tests & a bugfix Created 4 years, 10 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) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 LayoutUnit flowAwarePaddingEnd() const; 120 LayoutUnit flowAwarePaddingEnd() const;
121 LayoutUnit flowAwarePaddingBefore() const; 121 LayoutUnit flowAwarePaddingBefore() const;
122 LayoutUnit flowAwarePaddingAfter() const; 122 LayoutUnit flowAwarePaddingAfter() const;
123 LayoutUnit flowAwareMarginStartForChild(const LayoutBox& child) const; 123 LayoutUnit flowAwareMarginStartForChild(const LayoutBox& child) const;
124 LayoutUnit flowAwareMarginEndForChild(const LayoutBox& child) const; 124 LayoutUnit flowAwareMarginEndForChild(const LayoutBox& child) const;
125 LayoutUnit flowAwareMarginBeforeForChild(const LayoutBox& child) const; 125 LayoutUnit flowAwareMarginBeforeForChild(const LayoutBox& child) const;
126 LayoutUnit crossAxisMarginExtentForChild(const LayoutBox& child) const; 126 LayoutUnit crossAxisMarginExtentForChild(const LayoutBox& child) const;
127 LayoutUnit crossAxisScrollbarExtent() const; 127 LayoutUnit crossAxisScrollbarExtent() const;
128 LayoutUnit crossAxisScrollbarExtentForChild(const LayoutBox& child) const; 128 LayoutUnit crossAxisScrollbarExtentForChild(const LayoutBox& child) const;
129 LayoutPoint flowAwareLocationForChild(const LayoutBox& child) const; 129 LayoutPoint flowAwareLocationForChild(const LayoutBox& child) const;
130 bool useChildAspectRatio(const LayoutBox& child) const;
131 LayoutUnit computeMainSizeFromAspectRatio(const LayoutBox& child, Length cro ssSizeLength) const;
130 void setFlowAwareLocationForChild(LayoutBox& child, const LayoutPoint&); 132 void setFlowAwareLocationForChild(LayoutBox& child, const LayoutPoint&);
131 void adjustAlignmentForChild(LayoutBox& child, LayoutUnit); 133 void adjustAlignmentForChild(LayoutBox& child, LayoutUnit);
132 ItemPosition alignmentForChild(const LayoutBox& child) const; 134 ItemPosition alignmentForChild(const LayoutBox& child) const;
133 LayoutUnit mainAxisBorderAndPaddingExtentForChild(const LayoutBox& child) co nst; 135 LayoutUnit mainAxisBorderAndPaddingExtentForChild(const LayoutBox& child) co nst;
134 LayoutUnit computeInnerFlexBaseSizeForChild(LayoutBox& child, ChildLayoutTyp e = LayoutIfNeeded); 136 LayoutUnit computeInnerFlexBaseSizeForChild(LayoutBox& child, ChildLayoutTyp e = LayoutIfNeeded);
135 bool mainAxisLengthIsDefinite(const LayoutBox& child, const Length& flexBasi s) const; 137 bool mainAxisLengthIsDefinite(const LayoutBox& child, const Length& flexBasi s) const;
138 bool crossAxisLengthIsDefinite(const LayoutBox& child, const Length& flexBas is) const;
136 bool childFlexBaseSizeRequiresLayout(const LayoutBox& child) const; 139 bool childFlexBaseSizeRequiresLayout(const LayoutBox& child) const;
137 bool needToStretchChildLogicalHeight(const LayoutBox& child) const; 140 bool needToStretchChildLogicalHeight(const LayoutBox& child) const;
138 bool childHasIntrinsicMainAxisSize(const LayoutBox& child) const; 141 bool childHasIntrinsicMainAxisSize(const LayoutBox& child) const;
142 bool childHasAspectRatio(const LayoutBox& child) const;
139 EOverflow mainAxisOverflowForChild(const LayoutBox& child) const; 143 EOverflow mainAxisOverflowForChild(const LayoutBox& child) const;
140 EOverflow crossAxisOverflowForChild(const LayoutBox& child) const; 144 EOverflow crossAxisOverflowForChild(const LayoutBox& child) const;
141 145
142 void layoutFlexItems(bool relayoutChildren, SubtreeLayoutScope&); 146 void layoutFlexItems(bool relayoutChildren, SubtreeLayoutScope&);
143 LayoutUnit autoMarginOffsetInMainAxis(const OrderedFlexItemList&, LayoutUnit & availableFreeSpace); 147 LayoutUnit autoMarginOffsetInMainAxis(const OrderedFlexItemList&, LayoutUnit & availableFreeSpace);
144 void updateAutoMarginsInMainAxis(LayoutBox& child, LayoutUnit autoMarginOffs et); 148 void updateAutoMarginsInMainAxis(LayoutBox& child, LayoutUnit autoMarginOffs et);
145 bool hasAutoMarginsInCrossAxis(const LayoutBox& child) const; 149 bool hasAutoMarginsInCrossAxis(const LayoutBox& child) const;
146 bool updateAutoMarginsInCrossAxis(LayoutBox& child, LayoutUnit availableAlig nmentSpace); 150 bool updateAutoMarginsInCrossAxis(LayoutBox& child, LayoutUnit availableAlig nmentSpace);
147 void repositionLogicalHeightDependentFlexItems(Vector<LineContext>&); 151 void repositionLogicalHeightDependentFlexItems(Vector<LineContext>&);
148 LayoutUnit clientLogicalBottomAfterRepositioning(); 152 LayoutUnit clientLogicalBottomAfterRepositioning();
(...skipping 30 matching lines...) Expand all
179 183
180 mutable OrderIterator m_orderIterator; 184 mutable OrderIterator m_orderIterator;
181 int m_numberOfInFlowChildrenOnFirstLine; 185 int m_numberOfInFlowChildrenOnFirstLine;
182 }; 186 };
183 187
184 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutFlexibleBox, isFlexibleBox()); 188 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutFlexibleBox, isFlexibleBox());
185 189
186 } // namespace blink 190 } // namespace blink
187 191
188 #endif // LayoutFlexibleBox_h 192 #endif // LayoutFlexibleBox_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698