[Digikam-devel] [Bug 141663] Keep getting prompted to Apply Comments

Marcel Wiesweg marcel.wiesweg at gmx.de
Sat Feb 17 22:02:55 GMT 2007


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=141663         




------- Additional Comments From marcel.wiesweg gmx de  2007-02-17 23:02 -------
SVN commit 634639 by mwiesweg:

Change this and that, without knowing if it is related to the bug

CCBUG: 141663


 M  +17 -6     imagedescedittab.cpp  


--- trunk/extragear/graphics/digikam/libs/imageproperties/imagedescedittab.cpp #634638:634639
 @ -448,10 +448,18  @
     if (d->currInfos.isEmpty())
         return;
 
+    bool progressInfo = (d->currInfos.count() > 1);
     emit signalProgressBarMode(StatusProgressBar::ProgressBarMode,
                                i18n("Applying changes to pictures. Please wait..."));
     MetadataWriteSettings writeSettings = MetadataHub::defaultWriteSettings();
 
+    // debugging - use this to indicate reentry from event loop (kapp->processEvents)
+    // remove before final release
+    if (d->ignoreImageAttributesWatch)
+    {
+        kdWarning() << "ImageDescEditTab::slotApplyAllChanges(): re-entering from event loop!" << endl;
+    }
+
     // we are now changing attributes ourselves
     d->ignoreImageAttributesWatch = true;
     AlbumManager::instance()->albumDB()->beginTransaction();
 @ -464,7 +472,8  @
         d->hub.write(info->filePath(), MetadataHub::FullWrite, writeSettings);
 
         emit signalProgressValue((int)((i++/(float)d->currInfos.count())*100.0));
-        kapp->processEvents();
+        if (progressInfo)
+            kapp->processEvents();
     }
     AlbumManager::instance()->albumDB()->commitTransaction();
     d->ignoreImageAttributesWatch = false;
 @ -508,11 +517,13  @
 {
     if (infos.isEmpty())
     {
-       d->commentsEdit->clear();
-       d->currInfos.clear();
-       d->hub = MetadataHub();
-       setEnabled(false);
-       return;
+        d->hub = MetadataHub();
+        d->commentsEdit->blockSignals(true);
+        d->commentsEdit->clear();
+        d->commentsEdit->blockSignals(false);
+        d->currInfos.clear();
+        setEnabled(false);
+        return;
     }
 
     setEnabled(true);



More information about the Digikam-devel mailing list