[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Captions in KDE
From:       Matthias Ettrich <ettrich () divan ! troll ! no>
Date:       2000-10-28 14:14:58
[Download RAW message or body]


We need to find a way to improve our window captions. The situation
in current KDE 2 is far from being optimal, and I'm not convinced at all
that makeStdCaption is a good thing to call from KDialog and KMainWindow.

The problem I have with this is the following:

 1) We end up with a lot of bogus captions. KFind (before I fixed it today)
    showed for example "Find Files - KFind" when started from the commandline
    and "Find Files - Find Files" when started from the panel.
    And that despite the fact that the code explicitely calls
    setCaption( i18n( "Find Files") )  due to the standard caption handling

    I call this bogus, since we agreed a long time ago that we don't want
    to have any unspecified knames in the caption. Thins like KFind, 
    KEdit-0.9pl4, KSCD0.7, KWrite etc. do not belong into captions. The
    equivalent on MS-Window would be if MS-Office had word.exe in the caption.
    These are binary or executable names, NOT user names.


 2) We end up with a lot of duplicatd captions like "Terminal - Terminal". I 
    fixed a couple of those before the 2.0 release, but there are still plenty
    left. And it seems I'm the only one being bothered by this?!


So what's the solution? 
I suggest that we give up the concept of that we can guess a proper user
caption applciation name. 

makeStdCaption should simply return the argument it gets, *unless* the
code explicitely specified a user program name in KAbout data.

Unfortunatly that user program name is already contaminated. Even
the documentation encourages wrong usage. It says for example:

    * @param programName A displayable program name string. This string
     *        should be marked for translation. Example: I18N_NOOP("KEdit")
     *o

And that is wrong, totally wrong. Nobody wants to read KEdit in the caption.
If the user uses KEdit as Editor, having the name "Editor" in there is just
fine.

So maybe we need something like captionName in addition to programName? 
Programs that have a name like Konqueror will set this one, for other progarms
we either return nothing or programName.mid(1) if programName[0]=='K' and
programName[1].isUpper().

The classic example is KMail. Do you believe a user who uses KMail also
uses another graphical mail client at the same time? I don't think so.
So why not simply show "Mail" in the caption, isntead of "KMail"?
The purpose of the caption is not to do advertisement , but to help the
users associating taskbar entries with windows. If we could get rid of the
bogus Ks in the captions, we would present our users a much more integrated
usage experience. 


We started that discussion several times, and somehow we always failed.
This time I will not give up that early. Anybody willing to join the crusade
for useful captions? :)

Matthias - matthias

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic