[Tracker] [patch] bug 503376 - Cannot disable evolution "Enable Evolution email Indexing" in "Emails" tab
- From: Halton Huo <Halton Huo Sun COM>
- To: jamie <jamiemcc blueyonder co uk>
- Cc: Tracker-List <tracker-list gnome org>
- Subject: [Tracker] [patch] bug 503376 - Cannot disable evolution "Enable Evolution email Indexing" in "Emails" tab
- Date: Fri, 18 Jan 2008 10:37:00 +0800
Hi Jamie and All,
I spent several days to find a good way to fix bug
http://bugzilla.gnome.org/show_bug.cgi?id=503376. Since this patch is
big, so I'd like to ask you to review first before I commit.
My aim is to find a better way to let trackerd update indexing without
restart/reindex trackerd when user change options through
tracker-preferences.
Let me explain this patch in more details.
[1] src/trackerd/tracker-dbus-methods.c
Set tracker->index_status = INDEX_EMAILS, this will cause email
indexing starts in process_files_thread ().
If evolution index is enabled, do almost same thing as before.
Otherwise, do two things here:
(1) call tracker_email_remove_service_directories to remove
evolution related watch_directory from tracker->service_directory_list
and tracker->service_directory_table.
(2) tracker_db_email_delete_email_app to remove evolution related
from database.
[2] src/trackerd/tracker-db-email.c|h
Add function declaration and definition of
tracker_db_email_delete_email_app ()
[3] src/trackerd/tracker-email-utils.c|h
Add function declaration and definition of
email_remove_watch_directory ()
email_remove_watch_directories ()
[4] src/trackerd/tracker-email.c|h
Add function declaration and definition of
tracker_email_remove_service_directories()
[5] src/trackerd/tracker-email-evolution.c|h
Add function declaration and definition of
evolution_remove_watch_emails ()
[6] src/trackerd/tracker-db-sqlite.c, src/trackerd/tracker-db.h
Add function declaration and definition of
tracker_db_cleanup_service_stat ()
[7] src/trackerd/tracker-utils.c|h
Add function declaration and definition of
tracker_remove_service_path ()
Rewrite function tracker_add_service_path () to not add duplicated
services.
[8] src/tracker-preferences/tracker-preferences.c
Not restart trackerd when evolution widget changed.
[9] data/sqlite-stored-procs.sql
Add new proc DeleteServiceByType, DeleteMboxByApp, DecStatNum
NOTE:
[1]. For thunderbird bug 503977, will be a separate and similar patch,
but more simple. For Kmail, need we do it?
[2]. tracker-preferences will send out the key changes D-BUS message
when user click the widget, that will cause trackerd get the change and
take effect directly. I'd like to change t-p to send out the changes
only after use click "Close" button. What do you think?
Jamie, Welcome back!
Thanks,
Halton.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]