Swiftgram/submodules/LegacyComponents/LegacyComponents/TGMediaAsset+TGMediaEditableItem.m
Peter d153fe0f21 Add 'submodules/LegacyComponents/' from commit 'd5594346161c1b7f203d1e87068bbe77bcaac019'
git-subtree-dir: submodules/LegacyComponents
git-subtree-mainline: 608630530451e02e5aec48389d144dbf7a3625b9
git-subtree-split: d5594346161c1b7f203d1e87068bbe77bcaac019
2019-06-11 18:51:15 +01:00

45 lines
1.4 KiB
Objective-C

#import "TGMediaAsset+TGMediaEditableItem.h"
#import <LegacyComponents/TGMediaAssetImageSignals.h>
#import <LegacyComponents/LegacyComponents.h>
#import <LegacyComponents/TGPhotoEditorUtils.h>
@implementation TGMediaAsset (TGMediaEditableItem)
- (NSString *)uniqueIdentifier
{
return self.identifier;
}
- (CGSize)originalSize
{
if (![TGMediaAssetImageSignals usesPhotoFramework])
return TGFitSize(self.dimensions, TGMediaAssetImageLegacySizeLimit);
return self.dimensions;
}
- (SSignal *)thumbnailImageSignal
{
CGFloat scale = MIN(2.0f, TGScreenScaling());
CGFloat thumbnailImageSide = TGPhotoThumbnailSizeForCurrentScreen().width * scale;
return [TGMediaAssetImageSignals imageForAsset:self imageType:TGMediaAssetImageTypeAspectRatioThumbnail size:CGSizeMake(thumbnailImageSide, thumbnailImageSide)];
}
- (SSignal *)screenImageSignal:(NSTimeInterval)__unused position
{
return [TGMediaAssetImageSignals imageForAsset:self imageType:TGMediaAssetImageTypeScreen size:TGPhotoEditorScreenImageMaxSize()];
}
- (SSignal *)originalImageSignal:(NSTimeInterval)position
{
if (self.isVideo)
return [TGMediaAssetImageSignals videoThumbnailForAsset:self size:self.dimensions timestamp:CMTimeMakeWithSeconds(position, NSEC_PER_SEC)];
return [[TGMediaAssetImageSignals imageForAsset:self imageType:TGMediaAssetImageTypeFullSize size:CGSizeZero] takeLast];
}
@end