Bug 123209

Summary: "Join the channel foo" stays in status bar even after mouse off /topic # link
Product: [Applications] konversation Reporter: Philippe Cloutier <chealer>
Component: generalAssignee: Konversation Developers <konversation-devel>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 0.19   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
Latest Commit: Version Fixed In:

Description Philippe Cloutier 2006-03-07 05:34:31 UTC
Version:           0.19 (using KDE KDE 3.5.1)
Installed from:    Debian testing/unstable Packages
Compiler:          GCC 4 
OS:                Linux

When a channel's topic contains a string starting with "#", konversation parses it as a link to a channel on the same network. When the mouse hovers such a link, the status bar reads "Join the channel #foo". The problem is that the status bar isn't always updated when the mouse leaves the link. The message will disappear if I switch to a different channel window. If the link appears on the first line of the topic, and I leave the area by bringing the mouse up, the message will stay. Similarly if the link is on the last line and I bring the mouse in the conversation log. Or if I hit Alt-Tab. Apparently the only mouse movement which will clear the message is to go over a different area of the topic, or to get over a link in the conversation window.
This should be trivial to reproduce.

As I've used 0.18 quite a bit, this seems to be a 0.19 regression.

I have first experienced this bug in a irritating manner, being on #debian, which topic's contains "NOTE: this is NOT #ubuntu". konversation started to display "Join the channel #ubuntu" frequently, before I knew that there was a feature to print that when the mouse went over a channel link. Ubuntu being a Debian fork, you can guess why I say it is irritating ;) Otherwise, this is a minor bug.
Comment 1 Philippe Cloutier 2006-03-07 08:07:06 UTC
I forgot to mention that this actually applies to any link in /topic...so a URL too will stay in the status bar in the same conditions.
Comment 2 Eike Hein 2006-06-26 14:59:18 UTC
SVN commit 555137 by hein:

Clear the status bar when the mouse cursor leaves the topic widget.
BUG:123209


 M  +1 -0      ChangeLog  
 M  +6 -0      src/topiclabel.cpp  
 M  +1 -1      src/topiclabel.h  


--- trunk/extragear/network/konversation/ChangeLog #555136:555137
@@ -49,6 +49,7 @@
 - Significantly cleaned up tab completion code
 - Fix default custom browser setting
 - Fix display of some watched nicks online info messages in the ircview
+- Fix status bar link info not being cleared when the mouse cursor leaves the topic widget
 
 Changes from 0.18 to 0.19
 We are extremely pleased to announce the immediate release of Konversation 0.19. The focus
--- trunk/extragear/network/konversation/src/topiclabel.cpp #555136:555137
@@ -102,6 +102,12 @@
         KActiveLabel::contentsMouseMoveEvent(e);
     }
 
+    void TopicLabel::leaveEvent(QEvent*)
+    {
+       emit clearStatusText();
+       m_lastStatusText = QString::null;
+    }
+
     void TopicLabel::openLink(const QString& link)
     {
         if (!link.isEmpty())
--- trunk/extragear/network/konversation/src/topiclabel.h #555136:555137
@@ -46,7 +46,7 @@
             virtual void contentsMousePressEvent(QMouseEvent *e);
             virtual void contentsMouseReleaseEvent(QMouseEvent *e);
             virtual void contentsMouseMoveEvent(QMouseEvent *e);
-
+            virtual void leaveEvent (QEvent*);
             void resizeEvent(QResizeEvent*);
 
         protected slots: