mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 14:20:20 +00:00
Hide ASLayoutOptions from the user
This commit is contained in:
@@ -14,13 +14,13 @@
|
||||
#import "ASLayoutSpecUtilities.h"
|
||||
#import "ASStackLayoutSpecUtilities.h"
|
||||
#import "ASLayoutable.h"
|
||||
#import "ASLayoutOptions.h"
|
||||
|
||||
static CGFloat crossOffset(const ASStackLayoutSpecStyle &style,
|
||||
const ASStackUnpositionedItem &l,
|
||||
const CGFloat crossSize)
|
||||
{
|
||||
ASLayoutOptions *layoutOptions = [ASLayoutSpec layoutOptionsForChild:l.child];
|
||||
switch (alignment(layoutOptions.alignSelf, style.alignItems)) {
|
||||
switch (alignment(l.child.layoutOptions.alignSelf, style.alignItems)) {
|
||||
case ASStackLayoutAlignItemsEnd:
|
||||
return crossSize - crossDimension(style.direction, l.layout.size);
|
||||
case ASStackLayoutAlignItemsCenter:
|
||||
@@ -49,15 +49,14 @@ static ASStackPositionedLayout stackedLayout(const ASStackLayoutSpecStyle &style
|
||||
CGPoint p = directionPoint(style.direction, offset, 0);
|
||||
BOOL first = YES;
|
||||
auto stackedChildren = AS::map(unpositionedLayout.items, [&](const ASStackUnpositionedItem &l) -> ASLayout *{
|
||||
ASLayoutOptions *layoutOptions = [ASLayoutSpec layoutOptionsForChild:l.child];
|
||||
p = p + directionPoint(style.direction, layoutOptions.spacingBefore, 0);
|
||||
p = p + directionPoint(style.direction, l.child.layoutOptions.spacingBefore, 0);
|
||||
if (!first) {
|
||||
p = p + directionPoint(style.direction, style.spacing, 0);
|
||||
}
|
||||
first = NO;
|
||||
l.layout.position = p + directionPoint(style.direction, 0, crossOffset(style, l, crossSize));
|
||||
|
||||
p = p + directionPoint(style.direction, stackDimension(style.direction, l.layout.size) + layoutOptions.spacingAfter, 0);
|
||||
p = p + directionPoint(style.direction, stackDimension(style.direction, l.layout.size) + l.child.layoutOptions.spacingAfter, 0);
|
||||
return l.layout;
|
||||
});
|
||||
return {stackedChildren, crossSize};
|
||||
|
||||
Reference in New Issue
Block a user