[evolution-data-server] Bug #215428 - Show percentage progress when filtering messages



commit 5c94da9d2d4b8be37c37720350f9213bbc0e4a57
Author: Milan Crha <mcrha redhat com>
Date:   Wed Mar 13 15:03:02 2013 +0100

    Bug #215428 - Show percentage progress when filtering messages

 camel/camel-filter-driver.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/camel/camel-filter-driver.c b/camel/camel-filter-driver.c
index f7ab76d..a61ed20 100644
--- a/camel/camel-filter-driver.c
+++ b/camel/camel-filter-driver.c
@@ -1411,6 +1411,9 @@ camel_filter_driver_filter_mbox (CamelFilterDriver *driver,
                if (st.st_size > 0)
                        pc = (gint)(100.0 * ((double) camel_mime_parser_tell (mp) / (double) st.st_size));
 
+               if (pc > 0)
+                       camel_operation_progress (cancellable, pc);
+
                report_status (
                        driver, CAMEL_FILTER_STATUS_START,
                        pc, _("Getting message %d (%d%%)"), i, pc);
@@ -1458,6 +1461,8 @@ camel_filter_driver_filter_mbox (CamelFilterDriver *driver,
                camel_message_info_free (info);
        }
 
+       camel_operation_progress (cancellable, 100);
+
        if (driver->priv->defaultfolder) {
                report_status (
                        driver, CAMEL_FILTER_STATUS_PROGRESS,
@@ -1525,6 +1530,8 @@ camel_filter_driver_filter_folder (CamelFilterDriver *driver,
                gint pc = (100 * i) / uids->len;
                GError *local_error = NULL;
 
+               camel_operation_progress (cancellable, pc);
+
                report_status (
                        driver, CAMEL_FILTER_STATUS_START,
                        pc, _("Getting message %d of %d"),
@@ -1564,6 +1571,8 @@ camel_filter_driver_filter_folder (CamelFilterDriver *driver,
                        camel_uid_cache_save (cache);
        }
 
+       camel_operation_progress (cancellable, 100);
+
        /* Save the cache of any pending mails. */
        if (cache)
                camel_uid_cache_save (cache);


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