[Digikam-devel] Introduction and comments about bug:137320

Arnd Baecker arnd.baecker at web.de
Thu Mar 6 15:43:28 GMT 2008


On Thu, 6 Mar 2008, Gilles Caulier wrote:

> 2008/3/6, Arnd Baecker <arnd.baecker at web.de>:

[...]

>> In principle
>>      IconItem *fItem = firstItem();
>>      IconItem *lItem = lastItem();
>> would technically work, but I am not sure, whether that would
>> do what we want ...
>
>
> Yes this is right, but to have tested this patch on my computer, this is not
> enough to solve the problem. thumbs rendering is broken.

Yes, I can confirm this
(Essentially, in an album with many entries, just move
to a place in the middle - only the thumbnail of the first visible
item is shown).

Things are better if one uses
         IconItem *fItem = findFirstVisibleItem(r);;
         IconItem *lItem = lastItem();
but somehow it does not loop over all images, i.e.,
     while (item)
     {
         if (item->isDirty())
             return item;
         if (item == lastItem)
             break;
         item = (AlbumIconItem*)item->nextItem();
         DWarning() << "nextItemToThumbnail: " << item->imageInfo()->name() << endl;
     }

only shows a few "nextItemToThumbnail: ..." messages on the konsole,
but not more.

So is there something in PixmapManager which does not
trigger it correctly ?
(I don't really understand the logic in
PixmapManager::slotCompleted()
where d->thumbJob->kill() is called when a thumbJob is not Null  -
again a few more comments in the code would really help ;-)

Best, Arnd




More information about the Digikam-devel mailing list