improve dealing with user credentials
This patch improves using Balsa binaries built with “libsecret” support in situations where the Secret Service is not available or usable. It should fix the issues described in #52 (closed). To this end, an environment variable is used to force using the obfuscated config file.
Any libsecret error messages are reported through desktop notifications instead of just writing them as debug messages.
Add a toggle icon to password text entry widgets to show/hide the value (note: not in the GcrUi.PromptDialog).
Signed-off-by: Albrecht Dreß albrecht.dress@posteo.de
Details:
- libbalsa/address-book-(carddav|ldap).c, libbalsa/server.c: refactor loading and saving credentials, respect the env. variable to disable using libsecret, use password entry helper
- libbalsa/libbalsa-conf.[ch]: add method to check the env. variable to disable using libsecret
- libbalsa/misc.[ch]: add helper to configure a GtkEnry as password entry, with a toggle icon to show/hide the value
- libbalsa/server-config.c, src/balsa-app.c: respect the env. variable to disable using libsecret, use password entry helper
- src/address-book-config.c: use password entry helper
- README.md: improve documentation re. storing credentials
Closes #52 (closed)