Version: 0.9.2-final (using KDE KDE 3.5.7) Installed from: Debian testing/unstable Packages I delete some photos, clicking on "Do not ask again". This is fine, until I move an album to trash, at which point the confirmation dialog shows up for the next photo I delete. Note that I am not complaining about the confirmation dialog for the album trashing, but the fact that it makes digikam forget about the "do not ask again" checkbox.
SVN commit 707624 by mwiesweg: Only save "Do not show again" if the checkbox has been visible BUG: 149469 M +7 -1 deletedialog.cpp M +1 -0 deletedialog.h --- trunk/extragear/graphics/digikam/libs/dialogs/deletedialog.cpp #707623:707624 @@ -179,6 +179,7 @@ DeleteDialog::DeleteDialog(QWidget *parent) : KDialog(parent), m_saveShouldDeleteUserPreference(true), + m_saveDoNotShowAgain(false), m_trashGuiItem(i18n("&Send to Trash"), "trashcan_full") { setButtons(Ok | Cancel); @@ -226,7 +227,11 @@ { settings->setUseTrash(!shouldDelete()); } - settings->setShowTrashDeleteDialog(!m_widget->ddDoNotShowAgain->isChecked()); + if (m_saveDoNotShowAgain) + { + kDebug() << "setShowTrashDeleteDialog " << !m_widget->ddDoNotShowAgain->isChecked() << endl; + settings->setShowTrashDeleteDialog(!m_widget->ddDoNotShowAgain->isChecked()); + } settings->saveSettings(); @@ -249,6 +254,7 @@ // access the widget directly, signals will be fired to DeleteDialog and DeleteWidget m_widget->ddShouldDelete->setChecked(false); m_widget->ddCheckBoxStack->raiseWidget(m_widget->ddDoNotShowAgain); + m_saveDoNotShowAgain = true; break; case DeleteDialogMode::NoChoiceDeletePermanently: m_widget->ddShouldDelete->setChecked(true); --- trunk/extragear/graphics/digikam/libs/dialogs/deletedialog.h #707623:707624 @@ -138,6 +138,7 @@ private: bool m_saveShouldDeleteUserPreference; + bool m_saveDoNotShowAgain; KGuiItem m_trashGuiItem;
SVN commit 707625 by mwiesweg: Backport fix for 149469 CCBUGS: 149469 M +6 -1 deletedialog.cpp M +1 -0 deletedialog.h --- branches/extragear/kde3/graphics/digikam/libs/dialogs/deletedialog.cpp #707624:707625 @@ -188,6 +188,7 @@ true // use separator between buttons and the main widget ), m_saveShouldDeleteUserPreference(true), + m_saveDoNotShowAgain(false), m_trashGuiItem(i18n("&Send to Trash"), "trashcan_full") { m_widget = new DeleteWidget(this, "delete_dialog_widget"); @@ -233,7 +234,10 @@ { settings->setUseTrash(!shouldDelete()); } - settings->setShowTrashDeleteDialog(!m_widget->ddDoNotShowAgain->isChecked()); + if (m_saveDoNotShowAgain) + { + settings->setShowTrashDeleteDialog(!m_widget->ddDoNotShowAgain->isChecked()); + } settings->saveSettings(); @@ -256,6 +260,7 @@ // access the widget directly, signals will be fired to DeleteDialog and DeleteWidget m_widget->ddShouldDelete->setChecked(false); m_widget->ddCheckBoxStack->raiseWidget(m_widget->ddDoNotShowAgain); + m_saveDoNotShowAgain = true; break; case DeleteDialogMode::NoChoiceDeletePermanently: m_widget->ddShouldDelete->setChecked(true); --- branches/extragear/kde3/graphics/digikam/libs/dialogs/deletedialog.h #707624:707625 @@ -125,6 +125,7 @@ private: bool m_saveShouldDeleteUserPreference; + bool m_saveDoNotShowAgain; KGuiItem m_trashGuiItem;