Open Bug 1123649 Opened 9 years ago Updated 2 years ago

Use 'Run filter when:' instead of 'Apply filter when:' to minimize confusion

Categories

(MailNews Core :: Filters, enhancement)

enhancement

Tracking

(Not tracked)

ASSIGNED

People

(Reporter: aryx, Assigned: aryx)

Details

Attachments

(1 file)

Attached patch patch, v1Splinter Review
From IRC: 'I just needed to be sure appllying is the same as running.. Always thought "apollying"them is something like activating (by check marks) or so, and running is the actual execution of them.'

There are also 5 strings in each instance of filter.properties, but in my opinion, it's obvious there that it is about running the filters because they talk either about a single filter, or filters while message filtering is in progress: https://dxr.mozilla.org/comm-central/search?q=path%3Afilter.properties+appl&case=false
Attachment #8551759 - Flags: review?(mkmelin+mozilla)
It's interesting that the original attempts to solve bug 11039 died because we could not agree on the UI. aceman then spent one full cycle getting us to agree on the UI in bug 775665. Even after that, new additions using this UI only got grudging approval from bwinton in bug 479823 comment 25

I really don't understand why this UI seems to always be so controversial.

The argument against "Run" is that you end up with the confusing combination "Run filters when ... manually run". So the word is being used with two different meanings on the same page.
Thanks for filing and investigating this. By the quote I was merely aiming at runFilters.label (Run Now) and folderPickerPrefix.label (Run selected filter(s) on), as those had been translated as Apply for our locale until recently and hence causing confusion, as they appear in a window with no Apply or OK button and where every (filter) edit/move/enable action is applied instantly after closing it by using the X. Sorry for the confusion.

Despite the use of both Run and Apply it's clear they mean the same, though Run seems to emphasize the running process if I get that right. Both for English and for our locale (nl), "Applying filters" tends to occur more often (by users?) than "Running filters", so I guess there is no harm nor real need to use only Run or Apply for consistency in TB, and I agree with the arguments above. For any locale, choices may also vary depending on context.

Maybe the "Manually run" label could use a tweak for grammar reasons though (compare with "Getting…") - such as "Running manually"? Better perhaps: how about "Run filter when:" and "Applying manually"? That way, the user/TB applies (=calls) the filter, and the filter runs (executes), even though it would cause inconsistency with the filtersApply* labels in the main menu ("Run filters on") that currently but maybe intentionally may have been translated as Apply for nl. Oh well… ;)
I'm not sure I entirely understand the original confusion. But IMO "apply", although perhaps techincally correct, seems wrong/out of place.  I also don't like "run" because it is used in other places/contexts, eg. "Manually Run" and "Run now" (which also needs some help)

WHat about "Use filter when"?
How about "Apply this filter rule when:" in each message filter rule definition?
   (i) A "Message fFlter" is a per-account set of "Filter Rule"s.
         (ii) A "Filter Rule" is a set of conditions and actions.
   (A) Menu -> Run Filters on Folder == Run "Message Filter" defined for this account on a folder.
   (B) Message Filters panel -> Run selected filters on:/Run Now == Run selected "Filter Rules" in this "Message Filter" on requested folder
   From perspective of a "Filter Rule" :
      When (A) is requested, this "Filter Rule" is applied to mail => ApplY Filter When: Manually Run
      I don't know  "Filter Rule with Getting New Mail" is applied or not when (B) is requested.
      When "Message Filter" which contains this "Filter Rule" is invoked upon new messaage download/fetch => Apply Filter When: Getting New Mail
   Run = user oriented action. Apply = action by feature named "Message Filter" in Tb.
So, current wording is not so conusing nor wrong nor bad, as for wording of Run/Apply.

I guess confusion is rather due to iterm of "Filter" in "Apply Filter When:". which is used in "Filter Rule" definiton.
"Filter" is used as "Message Filter"(==a set of "Filter Rules") in many places. So, I think explicit "Filter Rule" is better for term in Filter Rule definition.
"Filter Name" in "Filter Rules" panel is also better changed to "Filter Rule Name" to reduce confusion. "Message Filter Name" and "Message Filter Rule Name" should be cllearly isolated, even though there is no "Message Filter Name" for "Message Filter owned by an account".

By the way, at "Message Filters" panel, following is seen. Sufficiently confusing, isn't it? :-)
   "Filter" in "Filters for:"                        == "Message Filter/Message Filter Name"                 in above context.
   "Filter" in "Search filters by name..." == "Message Filter Rule/Message Filter Rule Name" in above context.
Comment on attachment 8551759 [details] [diff] [review]
patch, v1

Comment 4 seems to have some good suggestions.
Change "Filter Name" to either "Rule Name" or "Filter Rule Name"
For "Apply filter when:" something like "Use this rule when:" or "Use this filter rule when:"
The entity name of contextDesc.label is not very meaningful, so you could take the opportunity to change it something with more meaning.
Other suggested changes from comment 4 could be spun off into another bug.
f+ for the moment as I would like to review the next revision of the patch.
Attachment #8551759 - Flags: review?(iann_bugzilla) → feedback+
(In reply to Kent James (:rkent) from comment #1)
> It's interesting that the original attempts to solve bug 11039 died because
> we could not agree on the UI. aceman then spent one full cycle getting us to
> agree on the UI in bug 775665. Even after that, new additions using this UI
> only got grudging approval from bwinton in bug 479823 comment 25
> 
> I really don't understand why this UI seems to always be so controversial.
Maybe because it is an advanced feature and has big influence if used incorrectly (you could wrongly delete messages if filters run at unexpected time). So I welcome all efforts to make the filters UI easy to understand.
Comment on attachment 8551759 [details] [diff] [review]
patch, v1

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

I think what we have currently is the best. A filter is something you apply, even in photography.
I don't really understand the original confusion (comment 0) either.
Attachment #8551759 - Flags: review?(mkmelin+mozilla) → review-
(In reply to Wayne Mery (:wsmwk) from comment #3 and Magnus Melin from comment #7)
> 
> I'm not sure I entirely understand the original confusion.
> 
> I don't really understand the original confusion (comment 0) either.

The (or my) origial confusion was only about using the word ‘Apply’. The ‘Run now’ string was ‘erroneously’ translated as ‘Apply now’ for our locale (so not an en-US issue), which could lead to thoughts like the button was intended for applying changes to the UI’s filter rules or their order, as there is no Apply nor OK button in that UI. When changing this to ‘Run now’ for our locale, I noticed both words are used for the same purpose and the use of ‘Run’ is actually rare, so asked about this on IRC. Aryx suggested to file a bug but decided to do it himself after investigating more instances of Apply, and he chose to change 'Apply filter when:' to ‘Run’ as the one string to change for this bug and probably because of he bottom strings that use Run as well. This wasn’t my decision, but I can live with that, as that string is actually about when the filter is actually executed.

My question only was if the same is meant by Run and Apply, or if there is a technical difference or other reason to use both, not to redesign or change other wordings (i.e. I think there is nothing wrong with ‘Filter name’ for instance). It’s interesting to see how thoughts may differ, how several people think about whether or not to use Run/Apply (even 180 degrees opposite if I got that well :) ) or even ‘Use’ etc., and I can understand why it’s hard to agree on some of these UI parts now.

As written above, some searches seem to indicate that ‘Applying a filter’ is the most common wording for ‘Using a filter’ (both for email as well as e.g. graphic design pr photo editing applications) where this involves user actions, and ‘Running filters’ are actually filters in progress of filtering by TB itself, hence not out of place in messages like warnings about filters that are currently in progress. In this point of view, strings inside the Tools menu could use Apply - see https://dxr.mozilla.org/comm-central/search?q=path%3Amessenger.dtd+filtersapp&case=false IMO. These are currently also translated as ‘Apply’ for our locale ‘by mistake’, though that looks OK to me. For the same reason and in short, I'd probably change all UI and filter related instances of ‘Run’ to ‘Apply’, except for the ‘Run filter when:’, ‘Run selected filter(s) on:’ and ‘Run now’ ones, and change contextManual.label to "Applying mannually".
Or we could have:
Run filter when:
- initiated manually (or some better word like "requested")
- getting new mail
etc

Just that there is no "run" twice in the sentence.
(In reply to :aceman from comment #9)
> Just that there is no "run" twice in the sentence.

That should be covered by changing "Manually Run" (contextManual.label) to anything else but something with "Run" (like Applying/Applied/Initiated manually), as the idea is that users cannot "run" a filter. See it as "When should this filter become active / get executed / run? When users apply/call/initiate it".
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: