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
