Version: 0.7.2-cvs (using KDE 3.3.1, (3.1)) Compiler: gcc version 3.3.5 (Debian 1:3.3.5-2) OS: Linux (ppc) release 2.6.8-powerpc When using ajdust time and date dialog, and choosing "use exif time", the time is not updated in the property popup, until you click on the property button to have a look at the exif info. After that, the time is ok in the property popup, but this does not have an effect on the ordering (if using date ordering). You have to change folder in order to reorder the photos.
CVS commit by pahlibar: hold the file dates separately from the kfileitems and on refresh, reread the file dates and resort the items. BUG: 98189 M +29 -0 albumiconview.cpp 1.107 M +4 -0 kipiinterface.cpp 1.19 --- kdeextragear-3/digikam/digikam/albumiconview.cpp #1.106:1.107 @@ -40,4 +40,5 @@ #include <qdatetime.h> #include <qfileinfo.h> +#include <qfile.h> #include <qguardedptr.h> #include <qdragobject.h> @@ -82,4 +83,11 @@ #include <libkexif/kexifdata.h> +extern "C" +{ +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> +} + // Local includes. @@ -1494,4 +1502,22 @@ void AlbumIconView::refreshItems(const K return; + // we do two things here: + // 1. refresh the timestamp + // 2. refresh the thumbnails + + for (KURL::List::const_iterator it = urlList.begin(); + it != urlList.end(); ++it) + { + AlbumIconItem* iconItem = findItem((*it).url()); + if (!iconItem) + continue; + + struct stat st; + if (::stat(QFile::encodeName((*it).path()), &st) == 0) + { + iconItem->time_ = st.st_mtime; + } + } + if (d->thumbJob.isNull()) { @@ -1516,4 +1542,7 @@ void AlbumIconView::refreshItems(const K d->thumbJob->addItems(urlList); } + + // trigger a delayed update, in case we need to resort items + triggerUpdate(); } --- kdeextragear-3/digikam/digikam/kipiinterface.cpp #1.18:1.19 @@ -175,4 +175,8 @@ void DigikamImageInfo::setTime(const QDa << endl; } + else + { + AlbumManager::instance()->refreshItemHandler( _url ); + } }