From f61a6ba5ff6ea3ebecd3cf6677cdd79abd4d24f9 Mon Sep 17 00:00:00 2001 From: Ross Boucher Date: Fri, 8 Jan 2010 09:34:43 -0800 Subject: [PATCH] Fix an issue where _CPImageAndTextView, if it had an image, wouldn't show the image if it hadn't already been loaded. In other words, it now listens for image load events and redisplays. --- AppKit/_CPImageAndTextView.j | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/AppKit/_CPImageAndTextView.j b/AppKit/_CPImageAndTextView.j index c21db7c2c..d5755c60d 100644 --- a/AppKit/_CPImageAndTextView.j +++ b/AppKit/_CPImageAndTextView.j @@ -285,13 +285,28 @@ var HORIZONTAL_MARGIN = 3.0, { if (_image == anImage) return; - + + if ([_image delegate] === self) + [_image setDelegate:nil]; + _image = anImage; _flags |= _CPImageAndTextViewImageChangedFlag; - + + if ([_image loadStatus] !== CPImageLoadStatusCompleted) + [_image setDelegate:self]; + [self setNeedsLayout]; } +- (void)imageDidLoad:(id)anImage +{ + if (anImage === _image) + { + _flags |= _CPImageAndTextViewImageChangedFlag; + [self setNeedsLayout]; + } +} + - (CPImage)image { return _image;