I was wondering why KDE still uses asterisks for substition in password fields. Look at this example:
Well, in Qt 4 it's really easy to change it. This is the QPlastique style using Unicode character 0x25CF, a bullet point. If that one doesn't exiss in the current font it falls back to 0x2022, a slightly smaller bullet point. Only if the current font doesn't provide either (which is fairly rare according to my tests), it will fall back to an asterisk. This algorithme is actually stol^Wborrowed from the Windows XP style, so why does Plastique still use asterisks by default? The reason is probably that it was supposed to resemble the Plastik style from KDE 3, which had to use asterisks since the
QStyle::SH_LineEdit_PasswordCharacter
style hint was not part of the QStyle API. in Qt 4 this style hint allows for specifying any other unicode character:
You might wonder why I think that this change, started by Apple in OS X and Microsoft in Windows XP is a good idea: Well first the character looks odd enough so that people will understand that this character is really supposed to shadow the password input. I know from personal experience that using asterisks, which can actually be part of a password tend to confuse some people. And secondly... well, it looks a lot better. It's more centered in most fonts while asterisks are usually displayed upwards in the line edit.
(For the technically inclined, i have uploaded
the sources for this small example, including a QPlastiqueStyle subclass that implements the change.)