diff --git a/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.h b/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.h index b386eb97f3..84ba5fa367 100644 --- a/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.h +++ b/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.h @@ -10,6 +10,7 @@ @interface ASTextKitFontSizeAdjuster : NSObject +@property (nonatomic, assign) CGSize constrainedSize; - (instancetype)initWithContext:(ASTextKitContext *)context minimumScaleFactor:(CGFloat)minimumScaleFactor diff --git a/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.m b/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.m index 9ba7bb6ddb..731c19c208 100644 --- a/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.m +++ b/AsyncDisplayKit/TextKit/ASTextKitFontSizeAdjuster.m @@ -13,7 +13,6 @@ { __weak ASTextKitContext *_context; CGFloat _minimumScaleFactor; - CGSize _constrainedSize; } - (instancetype)initWithContext:(ASTextKitContext *)context @@ -28,7 +27,6 @@ return self; } - - (CGSize)sizeForAttributedString:(NSAttributedString *)attrString { return [attrString boundingRectWithSize:CGSizeMake(CGFLOAT_MAX, CGFLOAT_MAX) diff --git a/AsyncDisplayKit/TextKit/ASTextKitRenderer.mm b/AsyncDisplayKit/TextKit/ASTextKitRenderer.mm index 90527cc6f9..5c0c144452 100755 --- a/AsyncDisplayKit/TextKit/ASTextKitRenderer.mm +++ b/AsyncDisplayKit/TextKit/ASTextKitRenderer.mm @@ -125,11 +125,12 @@ static NSCharacterSet *_defaultAvoidTruncationCharacterSet() _sizeIsCalculated = NO; _constrainedSize = constrainedSize; // If the context isn't created yet, it will be initialized with the appropriate size when next accessed. - if (_context) { + if (_context || _fontSizeAdjuster) { // If we're updating an existing context, make sure to use the same inset logic used during initialization. // This codepath allows us to reuse the CGSize shadowConstrainedSize = [[self shadower] insetSizeWithConstrainedSize:constrainedSize]; - _context.constrainedSize = shadowConstrainedSize; + if (_context) _context.constrainedSize = shadowConstrainedSize; + if (_fontSizeAdjuster) _fontSizeAdjuster.constrainedSize = shadowConstrainedSize; } } }