Bug 233403

Summary: Quick search combobox not updated after creating tags
Product: [Applications] kdepim Reporter: Thomas McGuire <mcguire>
Component: messagelistAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: normal CC: unnamedrambler
Priority: LO Keywords: akonadi-ports-regression
Version: unspecified   
Target Milestone: ---   
Platform: Unlisted Binaries   
OS: Linux   
Latest Commit: Version Fixed In:
Bug Depends on:    
Bug Blocks: 223438    

Description Thomas McGuire 2010-04-05 20:01:14 UTC
When creating new tags from within KMail, the quick search combobox in the message list is not updates, one has to restart KMail to see new tags there.
Comment 1 Casey Link 2010-05-28 04:10:41 UTC
This is going to be a tricky fix.

Listening to Nepomuk is too slow, so the only other way to do it is like in TagActionManager: have the configuration dialog inform listeners when the taglist has changed. Call the intermediary object TagListMonitor.

The problem is that the quick search combo lives in messagelist, which is a dependency of kmailprivate (where the config dialog lives).

So, TagListMonitor cannot be in the kmailprivate lib (like TagActionManager), but it needs to be in a lib that the config dialog can access.

Anyone know of such a lib? Where can TagListMonitor be placed without strongly coupling these libraries?
Comment 2 Thomas McGuire 2010-05-28 12:27:48 UTC
Why not simply add a new public method to the messagelist view library that updates the search combobox, and call that from within KMail? That way, there wouldn't be any dependency changes.

Alternatively, you can go the TagListMonitor way. In that case, simply put the class into messagecore/, which is a dependency of both KMail and the message list.
Comment 3 Casey Link 2010-05-28 15:58:01 UTC
> Why not simply add a new public method to the messagelist view library that
> updates the search combobox, and call that from within KMail?
I considered that, but figured that would introduce excessive coupling.

TagListMonitor might be overkill, especially if the quicksearch is the
only one interested in taglist changes.
Comment 4 Casey Link 2010-05-28 17:32:50 UTC
SVN commit 1131637 by link:

Add a TagListMonitor class to inform interested parties when the list of
tags has changed.
BUG: 233403

 M  +2 -0      kmail/configuredialog.cpp  
 M  +1 -0      messagecore/CMakeLists.txt  
 A             messagecore/taglistmonitor.cpp   [License: GPL (v2/3)]
 A             messagecore/taglistmonitor.h   [License: GPL (v2/3)]
 M  +6 -0      messagelist/widget.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1131637