Closed Bug 363982 Opened 18 years ago Closed 10 years ago

Ensure correct Account is selected after Create Filter From Message

Categories

(Thunderbird :: Filters, defect)

defect
Not set
minor

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 32.0

People

(Reporter: mcow, Assigned: aceman)

References

Details

(Keywords: polish)

Attachments

(1 file, 2 obsolete files)

Create Filter From Message will automatically open the Message Filters dialog if needed in order to show the new filter.

If the Message Filters dialog is already opened when CFFM is executed, and the dialog's Account dropdown is set to the account containing the new filter, then the list updates so you can see the new filter.

But: If the dropdown is set to some other account, it remains there after the CFFM is complete.  If the user wants to verify the creation or run the filter immediately, she needs to change the account.  See bug 198597 (which I'm setting to depend on this bug).
Product: Core → MailNews Core
Does this still hold? There is e.g. bug 543419 that says the opposite. When Message Filters dialog is already open, it is not updated to show the new filter, regardless of which account is selected there.
Blocks: 543419
I think I can see the problem.
In  OpenOrFocusWindow(), if the window is already open, we could still somehow pass the 'args' to it (e.g. via refresh(args)) and then act upon them in the window.
I'll play with that once bug 543419 lands.
Assignee: nobody → acelists
No longer blocks: 543419
Depends on: 543419
Product: MailNews Core → Thunderbird
Blocks: 1002006
Attached patch patch (obsolete) — Splinter Review
Allows to send a "folder" argument via refresh() too.
Attachment #8413361 - Flags: review?(mkmelin+mozilla)
Attachment #8413361 - Flags: feedback?(axelg)
Status: NEW → ASSIGNED
Keywords: polish
Comment on attachment 8413361 [details] [diff] [review]
patch

Review of attachment 8413361 [details] [diff] [review]:
-----------------------------------------------------------------

::: mail/base/content/FilterListDialog.js
@@ +10,5 @@
>  
>  let gFilterListMsgWindow = null;
>  let gCurrentFilterList;
>  let gCurrentFolder;
> +let gSelectedFolder = null;

this isn't necessary is it?

@@ +166,5 @@
>  
> +  if (!processWindowArguments(aArguments)) {
> +    // If we are still in the same account, just redraw the list
> +    // to show new filters.
> +    rebuildFilterList();

we need to rebuild in both cases. with this it's broken if you actually had the right account selected
Attachment #8413361 - Flags: review?(mkmelin+mozilla)
Attachment #8413361 - Flags: review-
Attachment #8413361 - Flags: feedback?(axelg)
(In reply to Magnus Melin from comment #4)
> >  let gFilterListMsgWindow = null;
> >  let gCurrentFilterList;
> >  let gCurrentFolder;
> > +let gSelectedFolder = null;
> 
> this isn't necessary is it?

If window.arguments[0].folder doesn't exist (throws in original code) we set gSelectedFolder = null. As that line is removed, I move it here to the header. Maybe it doesn't matter whether gSelectedFolder is null or undefined, but I better keep the status quo.

> > +  if (!processWindowArguments(aArguments)) {
> > +    // If we are still in the same account, just redraw the list
> > +    // to show new filters.
> > +    rebuildFilterList();
> 
> we need to rebuild in both cases. with this it's broken if you actually had
> the right account selected

We do rebuild. If account is switched, processWindowArguments rebuilds. If it wasn't we rebuild here (as processWindowArguments will return false). But see also patch in bug 1002006. I can pull the change here to make processWindowArguments rebuild in all cases.
Attached patch patch v2 (obsolete) — Splinter Review
Attachment #8413361 - Attachment is obsolete: true
Attachment #8417026 - Flags: review?(mkmelin+mozilla)
Comment on attachment 8417026 [details] [diff] [review]
patch v2

Review of attachment 8417026 [details] [diff] [review]:
-----------------------------------------------------------------

The case with initially correct account still doesn't refresh to show the new filter for me
I think I see what you mean. It does not refresh for me too, but randomly.
Attached patch patch v3Splinter Review
I think I found the problem.
Attachment #8417026 - Attachment is obsolete: true
Attachment #8417026 - Flags: review?(mkmelin+mozilla)
Attachment #8419069 - Flags: review?(mkmelin+mozilla)
Comment on attachment 8419069 [details] [diff] [review]
patch v3

Review of attachment 8419069 [details] [diff] [review]:
-----------------------------------------------------------------

Yes, this works! r=mkmelin
Attachment #8419069 - Flags: review?(mkmelin+mozilla) → review+
Thanks.
Keywords: checkin-needed
https://hg.mozilla.org/comm-central/rev/307f05454f74
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 32.0
Depends on: 1025373
Depends on: 1328855
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: