Clean up ahead of PR.

// FREEBIE
pull/1/head
Matthew Chen 8 years ago
parent 257f8249bf
commit 88c874e4e6

@ -60,6 +60,7 @@ NS_ASSUME_NONNULL_BEGIN
// be evacuated before the cell becomes visible again.
@property (nonatomic) BOOL isCellVisible;
// The width of the collection view.
@property (nonatomic) int contentWidth;
- (void)loadForDisplay;

@ -265,6 +265,10 @@ NS_ASSUME_NONNULL_BEGIN
// });
}
// We now eagerly create out view hierarchy (to do this exactly once per cell usage)
// but lazy-load any expensive media (photo, gif, etc.) used in those views. Note that
// this lazy-load can fail, in which case we modify the view hierarchy to use an "error"
// state. The didCellMediaFailToLoad reflects media load fails.
- (nullable id)tryToLoadCellMedia:(nullable id (^)())loadCellMediaBlock mediaView:(UIView *)mediaView
{
OWSAssert(self.attachmentStream);
@ -298,12 +302,6 @@ NS_ASSUME_NONNULL_BEGIN
{
if (!self.isCellVisible) {
// Eagerly unload.
if (self.stillImageView.image || self.animatedImageView.image) {
DDLogError(@"%@ ---- ensureViewMediaState unloading[%zd]: %@",
self.logTag,
self.viewItem.row,
self.viewItem.interaction.description);
}
self.stillImageView.image = nil;
self.animatedImageView.image = nil;
return;
@ -314,10 +312,6 @@ NS_ASSUME_NONNULL_BEGIN
if (self.stillImageView.image) {
return;
}
DDLogError(@"%@ ---- ensureViewMediaState loading[%zd]: %@",
self.logTag,
self.viewItem.row,
self.viewItem.interaction.description);
self.stillImageView.image = [self tryToLoadCellMedia:^{
OWSAssert([self.attachmentStream isImage]);
return self.attachmentStream.image;
@ -346,10 +340,6 @@ NS_ASSUME_NONNULL_BEGIN
mediaView:self.animatedImageView];
break;
}
case OWSMessageCellType_Audio:
// TODO: Lazy load audio length in audio cells.
// [self loadForAudioDisplay];
break;
case OWSMessageCellType_Video: {
if (self.stillImageView.image) {
return;
@ -370,6 +360,7 @@ NS_ASSUME_NONNULL_BEGIN
case OWSMessageCellType_OversizeTextMessage:
case OWSMessageCellType_GenericAttachment:
case OWSMessageCellType_DownloadingAttachment:
case OWSMessageCellType_Audio:
// Inexpensive cell types don't need to lazy-load or eagerly-unload.
break;
}

Loading…
Cancel
Save