Summary: | KPDF should remember document passwords in kwallet | ||
---|---|---|---|
Product: | [Applications] kpdf | Reporter: | Aaron Williams <aaronw> |
Component: | general | Assignee: | Albert Astals Cid <aacid> |
Status: | RESOLVED FIXED | ||
Severity: | wishlist | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Solaris | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Aaron Williams
2006-02-24 01:55:59 UTC
It is curious you ask this as we already do it. Isn't it happening for you? Are you sure you have kwallet installed and correctly configured? Ah, my mistake. It looks like it does do this, but I did not see an option asking if I would like to remember the password or not. In some cases one might not want to remember it. I'm so used to seeing the password dialogs asking if you want to remember the password or not that I assumed that since I didn't see it that it wasn't using the wallet. -Aaron SVN commit 599720 by pino: Show a 'keep password' checkbox when using a wallet so the user can decide if he wants the password saved in the wallet. BUG: 122605 M +4 -3 generator_pdf.cpp --- branches/KDE/3.5/kdegraphics/kpdf/core/generator_pdf/generator_pdf.cpp #599719:599720 @@ -109,6 +109,7 @@ bool firstInput = true; bool triedWallet = false; KWallet::Wallet * wallet = 0; + int keep = 1; while ( !pdfdoc->isOk() && pdfdoc->getErrorCode() == errEncrypted ) { QCString password; @@ -144,7 +145,7 @@ firstInput = false; // if the user presses cancel, abort opening - if ( KPasswordDialog::getPassword( password, prompt ) != KPasswordDialog::Accepted ) + if ( KPasswordDialog::getPassword( password, prompt, wallet ? &keep : 0 ) != KPasswordDialog::Accepted ) break; } @@ -154,8 +155,8 @@ pdfdoc = new PDFDoc( new GString( QFile::encodeName( filePath ) ), pwd2, pwd2 ); delete pwd2; - // 3. if the password is correct, store it to the wallet - if ( pdfdoc->isOk() && wallet && /*safety check*/ wallet->isOpen() ) + // 3. if the password is correct and the user chose to remember it, store it to the wallet + if ( pdfdoc->isOk() && wallet && /*safety check*/ wallet->isOpen() && keep > 0 ) { QString goodPass = QString::fromLocal8Bit( password.data() ); wallet->writePassword( filePath.section('/', -1, -1), goodPass ); |