NSTableView reloadDataForRowIndexes:columnIndexes: not working but reloadData is

I have an NSTableView (view based). The cells (views) have a NSImageView to display a thumbnail.


Thumbnails come from the web, and I load the thumbnails lazily. My class that handles the thumbnail loading has a delegate that sends back a message like this:


-(void)thumbnailCache:(nonnull MyThumbnailCacheObject*)thumbnailCache
loaddedThumbnailsForURLs:(nonnull NSArray<NSURL*>*)imageURLs
{
  //Get the  row indexes for the urls...and then call....reloadDataForRowIndexes:columnIndexes

     //table view doesnt have columns.
    [self.tableView reloadDataForRowIndexes:indexes columnIndexes:[NSIndexSet indexSetWithIndex:0]];
}


However the cells don't update. At first I thought it was a bug in my thumbnail loading, but a call to reloadData does update the cells properly.


Wrapping the reloadDataForRowIndexes:columnIndexes: in between beginUpdates and endUpdates calls makes no difference.


Does reloadDataForRowIndexes:columnIndexes: not work with view based table views? I'm tempted to just use reloadData and hope everything works out okay.

Have exactly the same issue (with Swift)

I have the same issue, with Swift, in 2022.

NSTableView reloadDataForRowIndexes:columnIndexes: not working but reloadData is
 
 
Q