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

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

Issue 1258693005: [css-flexbox] Correctly determine whether a percentage height is definite (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: fix tests Created 5 years, 4 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 | Annotate | Revision Log
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 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 94
95 bool hasOrthogonalFlow(LayoutBox& child) const; 95 bool hasOrthogonalFlow(LayoutBox& child) const;
96 bool isColumnFlow() const; 96 bool isColumnFlow() const;
97 bool isLeftToRightFlow() const; 97 bool isLeftToRightFlow() const;
98 bool isMultiline() const; 98 bool isMultiline() const;
99 Length flexBasisForChild(LayoutBox& child) const; 99 Length flexBasisForChild(LayoutBox& child) const;
100 LayoutUnit crossAxisExtentForChild(LayoutBox& child) const; 100 LayoutUnit crossAxisExtentForChild(LayoutBox& child) const;
101 LayoutUnit crossAxisIntrinsicExtentForChild(LayoutBox& child) const; 101 LayoutUnit crossAxisIntrinsicExtentForChild(LayoutBox& child) const;
102 LayoutUnit childIntrinsicHeight(LayoutBox& child) const; 102 LayoutUnit childIntrinsicHeight(LayoutBox& child) const;
103 LayoutUnit childIntrinsicWidth(LayoutBox& child) const; 103 LayoutUnit childIntrinsicWidth(LayoutBox& child) const;
104 bool mainAxisExtentIsDefinite() const;
105 LayoutUnit mainAxisExtentForChild(LayoutBox& child) const; 104 LayoutUnit mainAxisExtentForChild(LayoutBox& child) const;
106 LayoutUnit crossAxisExtent() const; 105 LayoutUnit crossAxisExtent() const;
107 LayoutUnit mainAxisExtent() const; 106 LayoutUnit mainAxisExtent() const;
108 LayoutUnit crossAxisContentExtent() const; 107 LayoutUnit crossAxisContentExtent() const;
109 LayoutUnit mainAxisContentExtent(LayoutUnit contentLogicalHeight); 108 LayoutUnit mainAxisContentExtent(LayoutUnit contentLogicalHeight);
110 LayoutUnit computeMainAxisExtentForChild(LayoutBox& child, SizeType, const L ength& size); 109 LayoutUnit computeMainAxisExtentForChild(LayoutBox& child, SizeType, const L ength& size);
111 WritingMode transformedWritingMode() const; 110 WritingMode transformedWritingMode() const;
112 LayoutUnit flowAwareBorderStart() const; 111 LayoutUnit flowAwareBorderStart() const;
113 LayoutUnit flowAwareBorderEnd() const; 112 LayoutUnit flowAwareBorderEnd() const;
114 LayoutUnit flowAwareBorderBefore() const; 113 LayoutUnit flowAwareBorderBefore() const;
115 LayoutUnit flowAwareBorderAfter() const; 114 LayoutUnit flowAwareBorderAfter() const;
116 LayoutUnit flowAwarePaddingStart() const; 115 LayoutUnit flowAwarePaddingStart() const;
117 LayoutUnit flowAwarePaddingEnd() const; 116 LayoutUnit flowAwarePaddingEnd() const;
118 LayoutUnit flowAwarePaddingBefore() const; 117 LayoutUnit flowAwarePaddingBefore() const;
119 LayoutUnit flowAwarePaddingAfter() const; 118 LayoutUnit flowAwarePaddingAfter() const;
120 LayoutUnit flowAwareMarginStartForChild(LayoutBox& child) const; 119 LayoutUnit flowAwareMarginStartForChild(LayoutBox& child) const;
121 LayoutUnit flowAwareMarginEndForChild(LayoutBox& child) const; 120 LayoutUnit flowAwareMarginEndForChild(LayoutBox& child) const;
122 LayoutUnit flowAwareMarginBeforeForChild(LayoutBox& child) const; 121 LayoutUnit flowAwareMarginBeforeForChild(LayoutBox& child) const;
123 LayoutUnit crossAxisMarginExtentForChild(LayoutBox& child) const; 122 LayoutUnit crossAxisMarginExtentForChild(LayoutBox& child) const;
124 LayoutUnit crossAxisScrollbarExtent() const; 123 LayoutUnit crossAxisScrollbarExtent() const;
125 LayoutUnit crossAxisScrollbarExtentForChild(LayoutBox& child) const; 124 LayoutUnit crossAxisScrollbarExtentForChild(LayoutBox& child) const;
126 LayoutPoint flowAwareLocationForChild(LayoutBox& child) const; 125 LayoutPoint flowAwareLocationForChild(LayoutBox& child) const;
127 // FIXME: Supporting layout deltas. 126 // FIXME: Supporting layout deltas.
128 void setFlowAwareLocationForChild(LayoutBox& child, const LayoutPoint&); 127 void setFlowAwareLocationForChild(LayoutBox& child, const LayoutPoint&);
129 void adjustAlignmentForChild(LayoutBox& child, LayoutUnit); 128 void adjustAlignmentForChild(LayoutBox& child, LayoutUnit);
130 ItemPosition alignmentForChild(LayoutBox& child) const; 129 ItemPosition alignmentForChild(LayoutBox& child) const;
131 LayoutUnit mainAxisBorderAndPaddingExtentForChild(LayoutBox& child) const; 130 LayoutUnit mainAxisBorderAndPaddingExtentForChild(LayoutBox& child) const;
132 LayoutUnit computeInnerFlexBaseSizeForChild(LayoutBox& child, ChildLayoutTyp e = LayoutIfNeeded); 131 LayoutUnit computeInnerFlexBaseSizeForChild(LayoutBox& child, ChildLayoutTyp e = LayoutIfNeeded);
133 bool mainAxisLengthIsIndefinite(const Length& flexBasis) const; 132 bool mainAxisLengthIsIndefinite(LayoutBox& child, const Length& flexBasis) c onst;
134 bool childFlexBaseSizeRequiresLayout(LayoutBox& child) const; 133 bool childFlexBaseSizeRequiresLayout(LayoutBox& child) const;
135 bool needToStretchChildLogicalHeight(LayoutBox& child) const; 134 bool needToStretchChildLogicalHeight(LayoutBox& child) const;
136 EOverflow mainAxisOverflowForChild(LayoutBox& child) const; 135 EOverflow mainAxisOverflowForChild(LayoutBox& child) const;
137 136
138 void layoutFlexItems(bool relayoutChildren, SubtreeLayoutScope&); 137 void layoutFlexItems(bool relayoutChildren, SubtreeLayoutScope&);
139 LayoutUnit autoMarginOffsetInMainAxis(const OrderedFlexItemList&, LayoutUnit & availableFreeSpace); 138 LayoutUnit autoMarginOffsetInMainAxis(const OrderedFlexItemList&, LayoutUnit & availableFreeSpace);
140 void updateAutoMarginsInMainAxis(LayoutBox& child, LayoutUnit autoMarginOffs et); 139 void updateAutoMarginsInMainAxis(LayoutBox& child, LayoutUnit autoMarginOffs et);
141 bool hasAutoMarginsInCrossAxis(LayoutBox& child) const; 140 bool hasAutoMarginsInCrossAxis(LayoutBox& child) const;
142 bool updateAutoMarginsInCrossAxis(LayoutBox& child, LayoutUnit availableAlig nmentSpace); 141 bool updateAutoMarginsInCrossAxis(LayoutBox& child, LayoutUnit availableAlig nmentSpace);
143 void repositionLogicalHeightDependentFlexItems(Vector<LineContext>&); 142 void repositionLogicalHeightDependentFlexItems(Vector<LineContext>&);
(...skipping 29 matching lines...) Expand all
173 172
174 mutable OrderIterator m_orderIterator; 173 mutable OrderIterator m_orderIterator;
175 int m_numberOfInFlowChildrenOnFirstLine; 174 int m_numberOfInFlowChildrenOnFirstLine;
176 }; 175 };
177 176
178 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutFlexibleBox, isFlexibleBox()); 177 DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutFlexibleBox, isFlexibleBox());
179 178
180 } // namespace blink 179 } // namespace blink
181 180
182 #endif // LayoutFlexibleBox_h 181 #endif // LayoutFlexibleBox_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698