aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-folder.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/camel-folder.c')
-rw-r--r--camel/camel-folder.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/camel/camel-folder.c b/camel/camel-folder.c
index 00106ca86a..79b7ecaf62 100644
--- a/camel/camel-folder.c
+++ b/camel/camel-folder.c
@@ -1568,7 +1568,7 @@ filter_filter(CamelSession *session, CamelSessionThreadMsg *msg)
char *source_url;
CamelException ex;
- /* FIXME: progress? (old code didn't have useful progress either) */
+ camel_operation_start(NULL, _("Filtering new message(s)"));
source_url = camel_service_get_url((CamelService *)m->folder->parent_store);
uri = camel_url_new(source_url, NULL);
@@ -1585,6 +1585,9 @@ filter_filter(CamelSession *session, CamelSessionThreadMsg *msg)
for (i=0;status == 0 && i<m->recents->len;i++) {
char *uid = m->recents->pdata[i];
+ int pc = 100 * i / m->recents->len;
+
+ camel_operation_progress(NULL, pc);
info = camel_folder_get_message_info(m->folder, uid);
if (info == NULL) {
@@ -1603,6 +1606,8 @@ filter_filter(CamelSession *session, CamelSessionThreadMsg *msg)
camel_exception_xfer(&m->ex, &ex);
g_free(source_url);
+
+ camel_operation_end(NULL);
}
static void