UI: messages view
Enable gif animation
Change-Id: I28371de138e5b9e05303bb1c0cf7f2b63f2c68a3
diff --git a/src/MessagesVC.mm b/src/MessagesVC.mm
index 44e9033..41fc300 100644
--- a/src/MessagesVC.mm
+++ b/src/MessagesVC.mm
@@ -351,15 +351,15 @@
paragraphStyle,NSParagraphStyleAttributeName, nil];
NSAttributedString* alternativeString = [[NSAttributedString alloc] initWithString:fileName attributes:alternativeNametAttr];
result.transferedFileName.attributedAlternateTitle = alternativeString;
- NSImage* image = [self getImageForFilePath:name size:MAX_TRANSFERED_IMAGE_SIZE];
+ NSImage* image = [self getImageForFilePath:name];
if (([name rangeOfString:@"/"].location == NSNotFound)) {
- image = [self getImageForFilePath:[self getDataTransferPath:interactionID] size:MAX_TRANSFERED_IMAGE_SIZE];
+ image = [self getImageForFilePath:[self getDataTransferPath:interactionID]];
}
if(image != nil) {
- result.transferedImage.image = [image roundCorners:14];
- [result updateImageConstraint:image.size.width andHeight:image.size.height];
- [result.transferedImage setAction:@selector(imagePreview:)];
- [result.transferedImage setTarget:self];
+ result.transferedImage.image = image;
+ [result updateImageConstraintWithMax: MAX_TRANSFERED_IMAGE_SIZE];
+ [result.openImagebutton setAction:@selector(imagePreview:)];
+ [result.openImagebutton setTarget:self];
}
}
[result setupForInteraction:interactionID];
@@ -525,12 +525,21 @@
if( interaction.status == lrc::api::interaction::Status::TRANSFER_FINISHED) {
NSString* name = @(interaction.body.c_str());
- NSImage* image = [self getImageForFilePath:name size:MAX_TRANSFERED_IMAGE_SIZE];
+ NSImage* image = [self getImageForFilePath:name];
if (([name rangeOfString:@"/"].location == NSNotFound)) {
- image = [self getImageForFilePath:[self getDataTransferPath:it->first] size:MAX_TRANSFERED_IMAGE_SIZE];
+ image = [self getImageForFilePath:[self getDataTransferPath:it->first]];
}
if (image != nil) {
- return image.size.height + TIME_BOX_HEIGHT;
+ CGFloat widthScaleFactor = MAX_TRANSFERED_IMAGE_SIZE / image.size.width;
+ CGFloat heightScaleFactor = MAX_TRANSFERED_IMAGE_SIZE / image.size.height;
+ CGFloat heigt = 0;
+ if((widthScaleFactor >= 1) && (heightScaleFactor >= 1)) {
+ heigt = image.size.height;
+ } else {
+ CGFloat scale = MIN(widthScaleFactor, heightScaleFactor);
+ heigt = image.size.height * scale;
+ }
+ return heigt + TIME_BOX_HEIGHT;
}
}
return BUBBLE_HEIGHT_FOR_TRANSFERED_FILE + TIME_BOX_HEIGHT;
@@ -573,14 +582,11 @@
return @(info.path.c_str());
}
--(NSImage*) getImageForFilePath: (NSString *) path size:(CGFloat)size {
+-(NSImage*) getImageForFilePath: (NSString *) path {
if (path.length <= 0) {return nil;}
if (![[NSFileManager defaultManager] fileExistsAtPath: path]) {return nil;}
NSImage* transferedImage = [[NSImage alloc] initWithContentsOfFile: path];
- if(transferedImage != nil) {
- return [transferedImage imageResizeInsideMax: size];
- }
- return nil;
+ return transferedImage;
}
-(CGSize) sizeFor:(NSString *) message maxWidth:(CGFloat) width {