Open Bug 243241 Opened 17 years ago Updated 4 years ago

msg filter run filter now doesn't give any progress/status


(MailNews Core :: Filters, enhancement)

Not set


(Not tracked)



(Reporter: Bienvenu, Unassigned)


(Blocks 1 open bug)


(Keywords: uiwanted, ux-userfeedback)

The filter dialog doesn't have a progress meter, so we don't get any status on
that command...
I would like to have this progress/status monitor.
Just showing how many messages have been processed
at the bottom of the dialog window
would be nice.
Product: MailNews → Core
Blocks: 168525
QA Contact: filters
Product: Core → MailNews Core
I second this opinion. A progress meter in the status bar would be very useful.
Closed: 12 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 194949
This does not seem to be a dupe.

I just noticed that the filter list dialog has a status bar (and even a progress meter), but it isn't used in any way.

I propose to add a status message in these events:
1. the list is being rebuilt and the number of filters shown differs wildly from the current number (e.g. when filtering or loading a new account) as after bug 780473 only this operation is slow (can take several seconds with 10000 filters).
2. pressing the 'Run now' button.

For 1. I would be able to show a progress percentage, but not for 2. Would it be enough?

Are there any other potentially slow operations (after bug 780473 was done)?

The patch would be for TB only so CCing Seamonkey guys if they are interested too.

Taking from bienvenu, I think he won't mind here :)
Assignee: mozilla → acelists
Depends on: 780473
OS: Windows 2000 → All
Hardware: x86 → All
Resolution: DUPLICATE → ---
SeaMonkey's "progress" meter "works" when you click Run Now (as you note, the progress is always undetermined), however Scott broke it in his "polish" 8 years ago and it's never worked since. (There is no bug for that change...)
For some reason just calling gFilterListMsgWindow.statusFeedback.showStatusString() does not seem to work. Maybe all the redraws are done only after the calling function finishes? Does this need some asynchronous/callback calling?
Looks like it's trying to set the value instead of the label. (I didn't look to see whether it was ever correct to set the value.)
Thanks, that is one bug. But the batching of updates to finish of the caller function is still there.
If when I manage to set the progressbar to mode=indeterminate so that it shows up and then call setTimer('the function that does all the real work and stops the progressbar',0), the progressbar appears but is frozen. I can't figure out how to do the asynchronous painting in this dialog. As I said, all redrawing of the UI is done only after all the code runs (e.g. the whole function called from <button oncommand="">).
(In reply to aceman from comment #9)
> the progressbar appears but is frozen
progressmeters only work with asynchronous operations (you didn't specify which operation this is so I can't comment on whether it's suitable).
They are in comment 4. For point 1. it is the rebuildFilterList function, for point 2 it is the 'filterService.applyFiltersToFolders(filterList, folders, gFilterListMsgWindow);' in runSelectedFilters().
(In reply to aceman from comment #11)
> They are in comment 4.
Sorry, I had forgotten to check.

> For point 1. it is the rebuildFilterList function
This is 100% synchronous, so you can't show progress here.

> for point 2 it is the 'filterService.applyFiltersToFolders(filterList,
> folders, gFilterListMsgWindow);' in runSelectedFilters().
This is potentially asynchronous. In particular, it uses a search session, which I believe is asynchronous, and any move or copy operations will also be asynchronous, particularly on IMAP accounts.
Now only to find out how to hook it to the statusFeedback...
Blocks: 718670
Duplicate of this bug: 718670
Blocks: 389147
Assignee: acelists → nobody
Severity: normal → enhancement
Removing myslef on all the bugs I'm cced on. Please NI me if you need something on MailNews Core bugs from me.
Duplicate of this bug: 1344982
See Also: → 355902
You need to log in before you can comment on or make changes to this bug.