Skip to content
This repository was archived by the owner on Feb 2, 2023. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion AsyncDisplayKit/ASDisplayNode.mm
Original file line number Diff line number Diff line change
Expand Up @@ -2076,7 +2076,7 @@ - (void)setPreferredFrameSize:(CGSize)preferredFrameSize
ASDN::MutexLocker l(_propertyLock);
if (! CGSizeEqualToSize(_preferredFrameSize, preferredFrameSize)) {
_preferredFrameSize = preferredFrameSize;
self.sizeRange = ASRelativeSizeRangeMake(ASRelativeSizeMakeWithCGSize(_preferredFrameSize), ASRelativeSizeMakeWithCGSize(_preferredFrameSize));
self.sizeRange = ASRelativeSizeRangeMakeWithExactCGSize(_preferredFrameSize);
[self invalidateCalculatedLayout];
}
}
Expand Down
13 changes: 5 additions & 8 deletions AsyncDisplayKit/Layout/ASDimension.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@
#import <UIKit/UIKit.h>
#import <AsyncDisplayKit/ASBaseDefines.h>

/**
A dimension relative to constraints to be provided in the future.
*/
/** A dimension relative to constraints to be provided in the future. */
typedef NS_ENUM(NSInteger, ASRelativeDimensionType) {
/** Just a number. It will always resolve to exactly this amount. This is the default type. */
ASRelativeDimensionTypePoints,
Expand All @@ -40,7 +38,7 @@ extern ASRelativeDimension const ASRelativeDimensionUnconstrained;
ASDISPLAYNODE_EXTERN_C_BEGIN
NS_ASSUME_NONNULL_BEGIN

#pragma mark ASRelativeDimension
#pragma mark - ASRelativeDimension

extern ASRelativeDimension ASRelativeDimensionMake(ASRelativeDimensionType type, CGFloat value);

Expand All @@ -56,8 +54,7 @@ extern NSString *NSStringFromASRelativeDimension(ASRelativeDimension dimension);

extern CGFloat ASRelativeDimensionResolve(ASRelativeDimension dimension, CGFloat parent);

#pragma mark -
#pragma mark ASSizeRange
#pragma mark - ASSizeRange

extern ASSizeRange ASSizeRangeMake(CGSize min, CGSize max);

Expand All @@ -68,8 +65,8 @@ extern ASSizeRange ASSizeRangeMakeExactSize(CGSize size);
extern CGSize ASSizeRangeClamp(ASSizeRange sizeRange, CGSize size);

/**
Intersects another size range. If the other size range does not overlap in either dimension, this size range
"wins" by returning a single point within its own range that is closest to the non-overlapping range.
* Intersects another size range. If the other size range does not overlap in either dimension, this size range
* "wins" by returning a single point within its own range that is closest to the non-overlapping range.
*/
extern ASSizeRange ASSizeRangeIntersect(ASSizeRange sizeRange, ASSizeRange otherSizeRange);

Expand Down
5 changes: 2 additions & 3 deletions AsyncDisplayKit/Layout/ASDimension.mm
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

ASRelativeDimension const ASRelativeDimensionUnconstrained = {};

#pragma mark ASRelativeDimension
#pragma mark - ASRelativeDimension

ASRelativeDimension ASRelativeDimensionMake(ASRelativeDimensionType type, CGFloat value)
{
Expand Down Expand Up @@ -61,8 +61,7 @@ CGFloat ASRelativeDimensionResolve(ASRelativeDimension dimension, CGFloat parent
}
}

#pragma mark -
#pragma mark ASSizeRange
#pragma mark - ASSizeRange

ASSizeRange ASSizeRangeMake(CGSize min, CGSize max)
{
Expand Down
18 changes: 9 additions & 9 deletions AsyncDisplayKit/Layout/ASRelativeSize.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,23 +35,24 @@ extern ASRelativeSizeRange const ASRelativeSizeRangeUnconstrained;
ASDISPLAYNODE_EXTERN_C_BEGIN
NS_ASSUME_NONNULL_BEGIN

#pragma mark -
#pragma mark ASRelativeSize
#pragma mark - ASRelativeSize

extern ASRelativeSize ASRelativeSizeMake(ASRelativeDimension width, ASRelativeDimension height);

/** Convenience constructor to provide size in Points. */
extern ASRelativeSize ASRelativeSizeMakeWithCGSize(CGSize size);

/** Convenience constructor to provide size in Percentage. */
extern ASRelativeSize ASRelativeSizeMakeWithPercent(CGFloat percent);

/** Resolve this relative size relative to a parent size. */
extern CGSize ASRelativeSizeResolveSize(ASRelativeSize relativeSize, CGSize parentSize);

extern BOOL ASRelativeSizeEqualToRelativeSize(ASRelativeSize lhs, ASRelativeSize rhs);

extern NSString *NSStringFromASRelativeSize(ASRelativeSize size);

#pragma mark -
#pragma mark ASRelativeSizeRange
#pragma mark - ASRelativeSizeRange

extern ASRelativeSizeRange ASRelativeSizeRangeMake(ASRelativeSize min, ASRelativeSize max);

Expand All @@ -60,16 +61,15 @@ extern ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactRelativeSize(ASRelati

extern ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactCGSize(CGSize exact);

extern ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactPercent(CGFloat percent);

extern ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactRelativeDimensions(ASRelativeDimension exactWidth,
ASRelativeDimension exactHeight);

extern BOOL ASRelativeSizeRangeEqualToRelativeSizeRange(ASRelativeSizeRange lhs, ASRelativeSizeRange rhs);

/**
Provided a parent size, compute final dimensions for this RelativeSizeRange to arrive at a SizeRange.
*/
extern ASSizeRange ASRelativeSizeRangeResolve(ASRelativeSizeRange relativeSizeRange,
CGSize parentSize);
/** Provided a parent size, compute final dimensions for this RelativeSizeRange to arrive at a SizeRange. */
extern ASSizeRange ASRelativeSizeRangeResolve(ASRelativeSizeRange relativeSizeRange, CGSize parentSize);

NS_ASSUME_NONNULL_END
ASDISPLAYNODE_EXTERN_C_END
17 changes: 13 additions & 4 deletions AsyncDisplayKit/Layout/ASRelativeSize.mm
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@

ASRelativeSizeRange const ASRelativeSizeRangeUnconstrained = {};

#pragma mark -
#pragma mark ASRelativeSize
#pragma mark - ASRelativeSize

ASRelativeSize ASRelativeSizeMake(ASRelativeDimension width, ASRelativeDimension height)
{
Expand All @@ -26,6 +25,12 @@ ASRelativeSize ASRelativeSizeMakeWithCGSize(CGSize size)
ASRelativeDimensionMakeWithPoints(size.height));
}

ASRelativeSize ASRelativeSizeMakeWithPercent(CGFloat percent)
{
return ASRelativeSizeMake(ASRelativeDimensionMakeWithPercent(percent),
ASRelativeDimensionMakeWithPercent(percent));
}

CGSize ASRelativeSizeResolveSize(ASRelativeSize relativeSize, CGSize parentSize)
{
return CGSizeMake(ASRelativeDimensionResolve(relativeSize.width, parentSize.width),
Expand All @@ -45,8 +50,7 @@ BOOL ASRelativeSizeEqualToRelativeSize(ASRelativeSize lhs, ASRelativeSize rhs)
NSStringFromASRelativeDimension(size.height)];
}

#pragma mark -
#pragma mark ASRelativeSizeRange
#pragma mark - ASRelativeSizeRange

ASRelativeSizeRange ASRelativeSizeRangeMake(ASRelativeSize min, ASRelativeSize max)
{
Expand All @@ -63,6 +67,11 @@ ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactCGSize(CGSize exact)
return ASRelativeSizeRangeMakeWithExactRelativeSize(ASRelativeSizeMakeWithCGSize(exact));
}

ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactPercent(CGFloat percent)
{
return ASRelativeSizeRangeMakeWithExactRelativeSize(ASRelativeSizeMakeWithPercent(percent));
}

ASRelativeSizeRange ASRelativeSizeRangeMakeWithExactRelativeDimensions(ASRelativeDimension exactWidth,
ASRelativeDimension exactHeight)
{
Expand Down