Thanks Ananta.<div><br></div><div>Marcel,</div><div><br></div><div>current implementation do not compile here :</div><div><br></div><div><div>[ 88%] Building CXX object core/digikam/CMakeFiles/digikam.dir/digikamadaptor.cpp.o</div>

<div>Linking CXX executable digikam</div><div>CMakeFiles/digikam.dir/album/albumwatch.cpp.o: In function `Digikam::AlbumWatch::AlbumWatchPriv::determineMode()':</div><div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:93: undefined reference to `Digikam::KInotify::KInotify(QObject*)'</div>

<div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:93: undefined reference to `Digikam::KInotify::available() const'</div><div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:93: undefined reference to `Digikam::KInotify::~KInotify()'</div>

<div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:93: undefined reference to `Digikam::KInotify::~KInotify()'</div><div>CMakeFiles/digikam.dir/album/albumwatch.cpp.o: In function `Digikam::AlbumWatch::clear()':</div>

<div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:167: undefined reference to `Digikam::KInotify::removeAllWatches()'</div><div>CMakeFiles/digikam.dir/album/albumwatch.cpp.o: In function `Digikam::AlbumWatch::slotAlbumAdded(Digikam::Album*)':</div>

<div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:211: undefined reference to `Digikam::KInotify::watchDirectory(QString const&)'</div><div>CMakeFiles/digikam.dir/album/albumwatch.cpp.o: In function `Digikam::AlbumWatch::slotAlbumAboutToBeDeleted(Digikam::Album*)':</div>

<div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:239: undefined reference to `Digikam::KInotify::removeDirectory(QString const&)'</div><div>CMakeFiles/digikam.dir/album/albumwatch.cpp.o: In function `Digikam::AlbumWatch::connectToKInotify()':</div>

<div>/mnt/data/Devel/GIT/2.x/core/digikam/album/albumwatch.cpp:262: undefined reference to `Digikam::KInotify::KInotify(QObject*)'</div><div>collect2: ld a retourné 1 code d'état d'exécution</div><div>make[2]: *** [core/digikam/digikam] Erreur 1</div>

<div>make[1]: *** [core/digikam/CMakeFiles/digikam.dir/all] Erreur 2</div><div>make: *** [all] Erreur 2</div></div><div><br></div><div>Perhaos it's an export problem, as usual. I will try to clean up all and rebuild to see...</div>

<div><br></div><div>Gilles</div><div><br><div class="gmail_quote">2011/11/8 Ananta Palani <span dir="ltr"><<a href="mailto:anantapalani@gmail.com">anantapalani@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

Yes, this is the highest priority for me. I would like to fix all file handling in Windows. Right now it is extremely slow, and deleting a file is not possible. This is not only a problem for digiKam, but also for KDE on Windows in general (see, for example, Dolphin). I will try to implement these improvements as time allows.<br>

<font color="#888888">
<br>-Ananta</font><div><div></div><div class="h5"><br><br><div class="gmail_quote">On Tue, Nov 8, 2011 at 9:14 AM, Gilles Caulier <span dir="ltr"><<a href="mailto:caulier.gilles@gmail.com" target="_blank">caulier.gilles@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thanks Marcel for the info ,<div><br></div><div>Ananta Palani who work under Windows to port digiKam. He build installer and can help us around this subject...</div><div><br></div><div>Best</div><div><br></div><div>Gilles Caulier<br>




<br>2011/11/8 Marcel Wiesweg <<a href="mailto:marcel.wiesweg@gmx.de" target="_blank">marcel.wiesweg@gmx.de</a>>:<br>><br>><br>>> Marcel,<br>>><br>>> very interesting solution. I'm sure that some bugzilla files will be<br>




>> closed in the future.<br>>><br>>> KInotify do not exist in KDELibs yet ? Or do you have customized this<br>>> implementation for digiKam ?<br>><br>> It's not yet in kdelibs, it was only recently written for use inside the Nepomuk indexer. The code was copied and slightly customized from Nepomuk Core.<br>




> In the current form, I'm not sure it will ever be in kdelibs: For Linux, it's the best solution, because we get information in better quality, and we get the information which we really need (closed-after-write). But Inotify is definitely Linux-only.<br>




> If there are comparable solutions for Windows and Mac, the way to go would be to extend KDirWatch API and offer this cross-platform. But I dont know about available APIs on these systems.<br>><br>> Marcel<br>> --<br>




> NEU: FreePhone - 0ct/min Handyspartarif mit Geld-zurück-Garantie!<br>> Jetzt informieren: <a href="http://www.gmx.net/de/go/freephone" target="_blank">http://www.gmx.net/de/go/freephone</a><br>> _______________________________________________<br>




> Digikam-devel mailing list<br>> <a href="mailto:Digikam-devel@kde.org" target="_blank">Digikam-devel@kde.org</a><br>> <a href="https://mail.kde.org/mailman/listinfo/digikam-devel" target="_blank">https://mail.kde.org/mailman/listinfo/digikam-devel</a><br>




><br>> --------------------------------------------------------------------------------------------------------------<div><br><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Marcel,</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">very interesting solution. I'm sure that some bugzilla files will be</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">closed in the future.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">

<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">KInotify do not exist in KDELibs yet ? Or do you have customized this</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">implementation for digiKam ?</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Best</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Gilles</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br>> --------------------------------------------------------------------------------------------------------------</div><div><br><div><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Git commit dcf2ba9d7e92d51b049bdd354f82dd</span><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">bf75e51a31 by Marcel Wiesweg.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Committed on 07/11/2011 at 22:47.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Pushed by mwiesweg into branch 'master'.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">On Linux, use Inotify directly for file notification changes</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Use Sebastian Trueg's KInotify wrapper, if Inotify is available.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">This gives much more detailed reports and especially info when a file</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">has been closed after write. For a detailed explanation, see</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<a href="http://trueg.wordpress.com/2011/10/13/taking-a-break-from-crash-fixing-for-usability/" style="color:rgb(87, 151, 176);font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)" target="_blank">http://trueg.wordpress.com/2011/10/13/taking-a-break-from-crash-fixing-for-usability/</a><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Separate the file watch code from AlbumManager to a new class, AlbumWatch.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">Do not watch directories recursively (convenient API, but often inefficient implementation</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">out of our reach). We scan the directories anyway, it is possible and efficient to</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">add each directory = album separately.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">If Inotify is not available (non-linux), the previous code based on</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">KDirWatch and KIO is still used.</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">CCMAIL: </span><a href="mailto:digikam-devel@kde.org" style="color:rgb(87, 151, 176);font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)" target="_blank">digikam-devel@kde.org</a><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">M  +5    -2    CMakeLists.txt</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">M  +1    -1    digikam/CMakeLists.txt</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">M  +7    -209  digikam/album/albummanager.cpp</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">M  +0    -5    digikam/album/albummanager.h</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">A  +512  -0    digikam/album/albumwatch.cpp     [License: GPL (v2+)]</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">A  +90   -0    digikam/album/albumwatch.h     [License: GPL (v2+)]</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">A  +517  -0    libs/3rdparty/kinotify/</span><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">kinotify.cpp     [License: LGPL (v2+)]</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">A  +198  -0    libs/3rdparty/kinotify/</span><span style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">kinotify.h     [License: LGPL (v2+)]</span><br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)">




<br style="font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)"><a href="http://commits.kde.org/digikam/dcf2ba9d7e92d51b049bdd354f82ddbf75e51a31" style="color:rgb(87, 151, 176);font-family:arial, sans-serif;font-size:13px;background-color:rgb(255, 255, 255)" target="_blank">http://commits.kde.org/digikam/dcf2ba9d7e92d51b049bdd354f82ddbf75e51a31</a></div>




</div></div>
</blockquote></div><br>
</div></div><br>_______________________________________________<br>
Digikam-devel mailing list<br>
<a href="mailto:Digikam-devel@kde.org">Digikam-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/digikam-devel" target="_blank">https://mail.kde.org/mailman/listinfo/digikam-devel</a><br>
<br></blockquote></div><br></div>