Unify user notifications
Note: this is loosely related to #32 (closed); see also this thread on the mailing list…
Balsa uses two different mechanisms for displaying informational messages to the user:
-
balsa_information*
is configurable to- do nothing at all,
- show a dialogue,
- add the information to a list dialogue,
- show the information in the status bar or
- print the information to
stderr
depending upon the severity level,
-
libbalsa_information*
always sends a desktop notification (GNotification
) for every severity level.
Severity levels are Message, Warning, Error, Debug and Fatal, of which the latter is never used in the code.
IMHO, this mixture is confusing for the user, and should be unified.
Proposal:
- remove the unused Fatal severity level;
- remove the Debug severity level, and replace its (very few) messages by
g_debug()
; - drop
balsa_information*
, and replace it bylibbalsa_information*
; - remove the output methods 3 and 5 (list,
stderr
), add Desktop notification, and letlibbalsa_information*
use the configuration settings; - collect all messages with time stamp and severity in a list, which the user can show/save/clear in a separate dialogue, accessible from the File menu.
We should also aim at unifying the appearance of the messages:
- should they always start with a capital letter, and end with a full stop?
- do we want to allow newlines within the messages?
Opinions?