Bug 233403 - Quick search combobox not updated after creating tags
Summary: Quick search combobox not updated after creating tags
Status: RESOLVED FIXED
Alias: None
Product: kdepim
Classification: Applications
Component: messagelist (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: LO normal
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords: akonadi-ports-regression
Depends on:
Blocks: 223438
  Show dependency treegraph
 
Reported: 2010-04-05 20:01 UTC by Thomas McGuire
Modified: 2010-05-28 17:32 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
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