mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-24 07:05:35 +00:00
[ASImageNode] More refined naming and documentation for [ASImageNode shouldShowImageScalingOverlay]
This commit is contained in:
@@ -57,10 +57,6 @@
|
||||
|
||||
@end
|
||||
|
||||
@interface ASImageNode ()
|
||||
@property (nonatomic, strong) ASTextNode *debugLabelNode;
|
||||
@end
|
||||
|
||||
@implementation ASImageNode
|
||||
{
|
||||
@private
|
||||
@@ -74,6 +70,8 @@
|
||||
BOOL _forceUpscaling; //Defaults to NO.
|
||||
CGRect _cropRect; // Defaults to CGRectMake(0.5, 0.5, 0, 0)
|
||||
CGRect _cropDisplayBounds;
|
||||
|
||||
ASTextNode *_debugLabelNode;
|
||||
}
|
||||
|
||||
@synthesize image = _image;
|
||||
@@ -95,7 +93,7 @@
|
||||
_cropDisplayBounds = CGRectNull;
|
||||
_placeholderColor = ASDisplayNodeDefaultPlaceholderColor();
|
||||
|
||||
if ([ASImageNode shouldShowImageDebugOverlay]) {
|
||||
if ([ASImageNode shouldShowImageScalingOverlay]) {
|
||||
_debugLabelNode = [[ASTextNode alloc] init];
|
||||
_debugLabelNode.layerBacked = YES;
|
||||
[self addSubnode:_debugLabelNode];
|
||||
@@ -120,7 +118,6 @@
|
||||
{
|
||||
ASDN::MutexLocker l(_imageLock);
|
||||
// if a preferredFrameSize is set, call the superclass to return that instead of using the image size.
|
||||
[_debugLabelNode measure:constrainedSize];
|
||||
if (CGSizeEqualToSize(self.preferredFrameSize, CGSizeZero) == NO)
|
||||
return [super calculateSizeThatFits:constrainedSize];
|
||||
else if (_image)
|
||||
@@ -221,7 +218,6 @@
|
||||
CGSize boundsSizeInPixels = CGSizeMake(floorf(bounds.size.width * contentsScale), floorf(bounds.size.height * contentsScale));
|
||||
|
||||
if (_debugLabelNode) {
|
||||
// NSLog(@"widthScale = %f, heightScale = %f", imageSizeInPixels.width / boundsSizeInPixels.width, imageSizeInPixels.height / boundsSizeInPixels.height);
|
||||
CGFloat pixelCountRatio = (imageSizeInPixels.width * imageSizeInPixels.height) / (boundsSizeInPixels.width * boundsSizeInPixels.height);
|
||||
if (pixelCountRatio != 1.0) {
|
||||
NSString *scaleString = [NSString stringWithFormat:@"%.2fx", pixelCountRatio];
|
||||
|
||||
@@ -9,13 +9,15 @@
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "ASImageNode.h"
|
||||
|
||||
@interface ASImageNode (Debug)
|
||||
@interface ASImageNode (Debugging)
|
||||
|
||||
/**
|
||||
* Class method to enable visualization of an ASImageNode's image size. For app debugging purposes only.
|
||||
* @param enabled Specify YES to turn on this debug feature when messaging the ASImageNode class.
|
||||
* Enables an ASImageNode debug label that shows the ratio of pixels in the source image to those in
|
||||
* the displayed bounds (including cropRect). This helps detect excessive image fetching / downscaling,
|
||||
* as well as upscaling (such as providing a URL not suitable for a Retina device). For dev purposes only.
|
||||
* @param enabled Specify YES to show the label on all ASImageNodes with non-1.0x source-to-bounds pixel ratio.
|
||||
*/
|
||||
+ (void)setImageDebugEnabled:(BOOL)enable;
|
||||
+ (BOOL)shouldShowImageDebugOverlay;
|
||||
+ (void)setShouldShowImageScalingOverlay:(BOOL)show;
|
||||
+ (BOOL)shouldShowImageScalingOverlay;
|
||||
|
||||
@end
|
||||
@@ -8,20 +8,19 @@
|
||||
|
||||
#import "AsyncDisplayKit+Debug.h"
|
||||
#import "ASDisplayNode+Subclasses.h"
|
||||
#import "ASTextNode.h"
|
||||
|
||||
static BOOL __enableImageSizeOverlay = NO;
|
||||
static BOOL __shouldShowImageScalingOverlay = NO;
|
||||
|
||||
@implementation ASImageNode (Debug)
|
||||
@implementation ASImageNode (Debugging)
|
||||
|
||||
+ (void)setImageDebugEnabled:(BOOL)enable;
|
||||
+ (void)setShouldShowImageScalingOverlay:(BOOL)show;
|
||||
{
|
||||
__enableImageSizeOverlay = enable;
|
||||
__shouldShowImageScalingOverlay = show;
|
||||
}
|
||||
|
||||
+ (BOOL)shouldShowImageDebugOverlay
|
||||
+ (BOOL)shouldShowImageScalingOverlay
|
||||
{
|
||||
return __enableImageSizeOverlay;
|
||||
return __shouldShowImageScalingOverlay;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user