Version: (using KDE Devel) Installed from: Compiled sources It would be great to be able to go directly to the right channel when a notification is popped up. I've already written a working patch that you can find attached.
Created attachment 11257 [details] Patch for this bug This patch applies cleanly just now and works correctly here, may be I've missed some corner cases anyway
Created attachment 11259 [details] New patch This patch shows more user friendly links: Chat in #channel Chat with nick It still has a little problem, the notification appears in the middle of kicker instead of near the systray.
Created attachment 11260 [details] Popup placement issue fixed
SVN commit 419645 by cartman: Kopete like clickable notifications. Patch by Isaac Clerencia. Might need some polish but good enough for now. Thanks for the patch! CCMAIL:isaac@sindominio.net BUG:106482 M +2 -2 Makefile.am M +7 -3 notificationhandler.cpp A popup.cpp [License: GPL (v2+)] A popup.h [License: GPL (v2+)] --- trunk/extragear/network/konversation/src/Makefile.am #419644:419645 @@ -43,7 +43,7 @@ watchednicknames_preferences.ui generalbehavior_preferences.ui connectionbehavior_preferences.ui \ prefspageconnectionbehavior.cpp fontappearance_preferences.ui prefspagefontsappearance.cpp \ nicklistbehavior_preferences.ui prefspagenicklistbehavior.cpp \ - konvibookmarkhandler.cpp konvibookmarkmenu.cpp + konvibookmarkhandler.cpp konvibookmarkmenu.cpp popup.cpp konversation_LDADD = $(COMPAT_LIBS) $(LIB_KIO) $(LIB_KABC) $(LIB_KIMIFACE) linkaddressbook/liblinkaddressbookui.la @@ -77,5 +77,5 @@ dcctransferrecv.h dccdetaildialog.h insertchardialog.h editnotifydialog.h serverison.h \ servergroupsettings.h serversettings.h servergroupdialog.h serverdialog.h channeldialog.h \ identitydialog.h topiclabel.h channeloptionsdialog.h joinchanneldialog.h \ - prefspageconnectionbehavior.h prefspagefontsappearance.h prefspagenicklistbehavior.h + prefspageconnectionbehavior.h prefspagefontsappearance.h prefspagenicklistbehavior.h popup.h --- trunk/extragear/network/konversation/src/notificationhandler.cpp #419644:419645 @@ -19,6 +19,7 @@ #include "chatwindow.h" #include "konversationapplication.h" #include "konversationmainwindow.h" +#include "popup.h" #include "trayicon.h" #include "server.h" @@ -47,9 +48,10 @@ QString cleanedMessage = Konversation::removeIrcMarkup(message); QString cutup = addLineBreaks(cleanedMessage); +// KNotifyClient::event(winId(), "message", QString("<qt><%1> %2</qt>").arg(fromNick).arg(cutup)); + Popup *pop = new Popup(m_mainWindow,chatWin, + QString("<qt><%2> %3</qt>").arg(chatWin->getName()).arg(fromNick).arg(cutup)); - KNotifyClient::event(winId(), "message", QString("<qt><%1> %2</qt>").arg(fromNick).arg(cutup)); - if(!KonversationApplication::preferences.trayNotifyOnlyOwnNick()) { startTrayNotification(chatWin); } @@ -75,7 +77,9 @@ QString cleanedMessage = Konversation::removeIrcMarkup(message); QString cutup = addLineBreaks(cleanedMessage); - KNotifyClient::event(winId(), "nick", QString("<qt><%1> %2</qt>").arg(fromNick).arg(cutup)); +// KNotifyClient::event(winId(), "nick", QString("<qt><%1> %2</qt>").arg(fromNick).arg(cutup)); + Popup *pop = new Popup(m_mainWindow,chatWin, + QString("<qt><%2> %3</qt>").arg(chatWin->getName()).arg(fromNick).arg(cutup)); startTrayNotification(chatWin);
Reopening as it needs a better solution.
Similar to bug #141569.
*** Bug 141569 has been marked as a duplicate of this bug. ***
Any progress on this?