Re: [Tracker] [patch] bug 503376 - Cannot disable evolution "Enable Evolution email Indexing" in "Emails" tab



woops, forget attach patch last time.
On Fri, 2008-01-18 at 10:37 +0800, Halton Huo wrote:
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.


_______________________________________________
tracker-list mailing list
tracker-list gnome org
http://mail.gnome.org/mailman/listinfo/tracker-list

Attachment: tracker-evo-reload.diff
Description: Text Data



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]