On Sunday 20 January 2008, Olivier Goffart wrote:

> Le dimanche 20 janvier 2008, Oleg Girko a écrit :
> > Hi!
> >
> > The patch attached to this message fixes 2 annoying inconveniences in
> > Kopete ICQ authorisation request dialog.
>
> I don't know ICQ code so I can't comment that.
> Anway, I think Kopete::Ui::ContactAddedNotifyDialog should be used instead
> of a custom one in order to uniformize authorisations dialog in kopete.

This is not about notification that somebody added you as a contact.
This is about dialog window which pops up when somebody asks you for 
authorisation to add you to his contact list.

> > This is just a minor patch to relieve user interface pain in ICQ protocol
> > support only. The long-term solution should be a major refactoring of
> > event handling in Kopete to handle authorisation requests and other
> > special messages the way uniform with regular messages.
>
> Adding a KNotification in ContactAddedNotifyDialog will brobably be a good
> idea.

KNotification is useful for that, but using KNotification only will not be 
sufficient. There are events which require your attention, there are also 
events which require your interaction. The way KNotification works makes it 
good for attracting attention of user (like playing sound or showing a tiny 
popup in the corner of the screen for a short period of time).

But it has a limitation that it can be easily missed if user didn't pay 
attention for some reason or just went out for a brief period of time.
Some people (like me) would like not to miss those events, so the arrival of 
event should be confirmed by some user action. Also, some events require user 
interaction anyway (user must accept or decline authorisation request, for 
example).

The first which comes to mind is persistent notification provided by the same 
KNotification. Popup can contain some user interface elements and disappear 
only as a result of mouse click. However, this is not very useful and 
sometimes can be very annoying.

Imagine that you are watching a movie or playing a videogame. Suddenly popup 
appears in the corner of your screen requiring your interaction. At that 
point interaction is either highly undesirable (you have to interrupt 
watching your movie) or even impossible (videogame grabbed your mouse and 
keyboard). For some events user interaction is required that is more complex 
than just clicking on a popup (like entering authorisation refusal reason, 
for example), so KNotification is not sufficient in this case.

Now let's look at the way other IM clients notify users about events.
For example, Psi shows icon animation in contact list when event concerning 
particular contact arrives. The animation is different for different event 
types: authorisation requests, messages etc. If the event concerning a 
contact not in contact list arrives, temporary contact appears in the contact 
list. In any case, dialog or window corresponding to the event pops up only 
after user clicked on a contact with animated icon. No unexpected popups on 
asynchronous events.

Unlike Psi, Kopete uses icon animation only for incoming messages. All other 
events either open dialog windows immediately or show a brief notification 
which can be missed. The both ways are wrong because they represent two 
extremes: either require immediate attention or attract attention for a brief 
period of time without a trace left.

My opinion is that the way Psi handles events is more consistent, convenient 
and pleasant for user. Kopete should be able to handle events the similar 
way. And for those who still like dialog windows suddenly popping up in the 
middle of the screen or those who don't care much about people adding them to 
their contact lists, this behaviour should be configurable.

-- Oleg Girko, http://www.infoserver.ru/~ol/
_______________________________________________
kopete-devel mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kopete-devel

Reply via email to