Update how Firefox compatibility is advertised
Categories
(SeaMonkey :: Preferences, enhancement)
Tracking
(seamonkey2.49esr wontfix, seamonkey2.53+ fixed, seamonkey2.57esr? affected)
People
(Reporter: buc, Assigned: iannbugzilla)
References
(Blocks 1 open bug)
Details
(Whiteboard: SM2.53.3)
Attachments
(3 files, 11 obsolete files)
(deleted),
patch
|
frg
:
review+
buc
:
feedback+
frg
:
approval-comm-release+
frg
:
approval-comm-esr60+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
iannbugzilla
:
review+
iannbugzilla
:
approval-comm-release+
iannbugzilla
:
approval-comm-esr60+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
iannbugzilla
:
review+
iannbugzilla
:
approval-comm-release+
iannbugzilla
:
approval-comm-esr60+
|
Details | Diff | Splinter Review |
Comment 1•9 years ago
|
||
Comment 2•9 years ago
|
||
Reporter | ||
Comment 3•9 years ago
|
||
Comment 4•9 years ago
|
||
Reporter | ||
Comment 5•9 years ago
|
||
Reporter | ||
Comment 6•9 years ago
|
||
Comment 7•9 years ago
|
||
Reporter | ||
Comment 8•9 years ago
|
||
Comment 9•9 years ago
|
||
Comment 10•9 years ago
|
||
Comment 11•9 years ago
|
||
Reporter | ||
Comment 12•9 years ago
|
||
Reporter | ||
Comment 13•5 years ago
|
||
Ping.
Probably a time to reconsider things, according to the current situation and practice with SM...
Comment 14•5 years ago
|
||
Probably a time to reconsider things, according to the current situation and practice with SM...
No! I rather die on my feet than on my knees :)
Reporter | ||
Comment 15•5 years ago
|
||
In the spirit of "soft power ", I allow myself to draw attention to a precedent of "FF-56 --> FF-60" mimicry.
The reason for such a mimicry is well-known.
I do not want to hurt the feelings of the developers ;), but the next step in this trend is obvious.
Consider the google.com -- it does not complain and works in general with SM mentioning in 2.53 (at least in Linux), but the search input field is broken a bit (two raws instead of one). Either google.com itself or some its scripts interprete SM in UA as "something but not the FF" and then behaves incorrectly.
We can collect more and more "bad" (from the Truth and our point of view) sites and specify them in default prefs, whereas when I removed SM mention (for my own use case) several years ago, I no longer have any problems at all...
Rhetorical question: How many sites will work better for our users if we leave SM in UA?
Comment 16•5 years ago
|
||
I do not want to hurt the feelings of the developers ;), but the next step in this trend is obvious.
There is no trend just fact. I think we all know it.
We don't want to get rid of it as default. If you provide a patch agains 2.53+ which does it via a pref like in the "Advertise Firefox Compatibility" this should be ok. Could be a third checkbox "Advertise SeaMonkey".
Rhetorical question: How many sites will work better for our users if we leave SM in UA?
Without the ua at least about:addons will probably have problems.
Reporter | ||
Comment 17•5 years ago
|
||
(In reply to Frank-Rainer Grahl (:frg) from comment #16)
We don't want to get rid of it as default. If you provide a patch agains 2.53+ which does it via a pref like in the "Advertise Firefox Compatibility" this should be ok. Could be a third checkbox "Advertise SeaMonkey".
Whether an extension can add its own advertising into UA string? (I saw somewhere something like " SeaMonkey/... Lightning/..." at the end of the string). If yes, then it must be deleted as well...
Rhetorical question: How many sites will work better for our users if we leave SM in UA?
Without the ua at least about:addons will probably have problems.
It seems that https://addons.thunderbird.net correctly point us to SM-related page even when SM is not mention in UA...
Reporter | ||
Comment 18•5 years ago
|
||
It seems that https://addons.thunderbird.net correctly point us to SM-related page even when SM is not mention in UA...
I mean when we go there from about:addons ...
Reporter | ||
Comment 19•5 years ago
|
||
I think the checkbox should be "Look exactly as Firefox" (which describes its function more precisely).
Whether this phrase should be localized, and how to do this -- provide a patch against l10n tree?
Reporter | ||
Comment 20•5 years ago
|
||
(In reply to Dmitry Butskoy from comment #17)
Whether an extension can add its own advertising into UA string? (I saw somewhere something like " SeaMonkey/... Lightning/..." at the end of the string). If yes, then it must be deleted as well...
Well, I see Lightning uses "calendar.useragent.extra".
Is it likely that some other extensions add itselves to UA as well (ie. not UA-switching, but advertising of addons)?
Reporter | ||
Comment 22•5 years ago
|
||
Proposed patch.
When "Advertise Firefox compatibility" is on, the additional indented checkbox is activated and allows to set "Look exactly as Firefox".
The correspond pref name is "general.useragent.compatMode.firefox-exact" .
Please, consider the preference's name and the String chosen -- whether my English is applicable for end users :)
Comment 23•5 years ago
|
||
Just wrote a comment while you uploaded the patch :)
I think the checkbox should be "Look exactly as Firefox" (which describes its function more precisely).
If SeaMonkey and its version is removed from the UA it would be a genuine Fx UA. With a third checkbox "Advertise SeaMonkey" you could remove Fx and SeaMonkey "advertising" which even helps with some websites.
Whether this phrase should be localized, and how to do this -- provide a patch against l10n tree?
It is basically a string in the locales directory:
https://dxr.mozilla.org/comm-esr60/source/suite/locales/en-US/chrome/common/pref/pref-http.dtd#18
Missing strings will be reported to the localizers after checking into comm-central. Some jobs are running on the mozialla servers for this. We pic, them up later for our donwstream releases.
Well, I see Lightning uses "calendar.useragent.extra".
Is it likely that some other extensions add itselves to UA as well (ie. not UA-switching, but advertising of addons)?
I don't think so. Lightning is a special case. Should be made off by default now.
Will look at it later.
Comment 24•5 years ago
|
||
Reporter | ||
Comment 25•5 years ago
|
||
(In reply to Frank-Rainer Grahl (:frg) from comment #23)
With a third checkbox "Advertise SeaMonkey" you could remove Fx and SeaMonkey "advertising" which even helps with some websites.
The idea of the current patch is to allow users to mimicry to FF for "full compatibility", by do not set it by default (since we don't wanna it by default).
Dropping even of FF, or some another UA parts, seems to be better handled by general.useragent.override mechanism (with site-specific).
Actually, I would like to test some websites where it might be useful -- are there some examples? (IMHO it could be Lightning-related issues etc...)
Assignee | ||
Comment 26•5 years ago
|
||
Reporter | ||
Comment 27•5 years ago
|
||
Considering how "competitors" resolve this issue their way, I think that the first my patch would be a choice.
Fe. Vivaldi now uses Chrome's UA string, see https://vivaldi.com/ru/press/releases/vivaldi-2-10-no-strings-attached/ and https://www.zdnet.com/article/vivaldi-to-change-user-agent-string-to-chrome-due-to-unfair-blocking/ for more info.
AFAIK Waterfox recently start to use FF60.
The first 4 year old patch provides the same, but preserves the choice, ie.
- either SM only in UA (for ideal world);
- or just FF only (for the real world).
Providing "FF + SM" (as it is now), in a hope that "FF" presence helps, does not help, since "SM" presence spoils all the things...
Comment 28•5 years ago
|
||
Comment 29•5 years ago
|
||
Lets not discuss this in Bug 1612722 so here it goes.
What would be the best way:
Disable Lightning advertising anyway when "exact FF" is set;
Just drop Lightning advertising for SM at all (not touching Lightning itself, just the correspond SM code)?
Then I can provide some work there.
My idea would be:
Then 3 choices as of now no Fx compatibility but set SeaMonkey (don't care much about this one), Fx + SeaMonkey (more or less like the default now) and Strict Fx compatibility. With the first 2 the advertize Lightning pref can stay active ´. When strict compatibility is choosen disable it and blank the pref.
no Fx compatibility but set SeaMonkey (don't care much about this one)
If we drop this option we only need 2 checkboxes One for strict compatibility and one for Lightning.
Reporter | ||
Comment 30•5 years ago
|
||
Useragent patch version 2.
Preferences-->Advanced-->HTTP Networking:
Radiogroup of two radio buttons plus indented autodisabled checkbox(es):
(.) Look exactly as Firefox
(.) Advertise SeaMonkey
(v) Advertise Firefox compatibility
(v) Advertise Lightning installation
(last is present when Lightning is enabled only, last two disabled when "Look exactly" is chosen)
Now "Look exactly as Firefox" prevents Lightning from spoiling UA string.
Reporter | ||
Comment 31•5 years ago
|
||
Some notes about Lightning behaviour in UA context:
When provided with distribution, Lightning seems always enabled on a clean profile, with "Advertise Lightning" is on.
When user disable advertising, actually it empties "calendar.useragent.extra" string preference. If later Lightning will be re-enabled, it always overwrites such an ampty value by non-empty default, and this way 'Advertise Lightning" appears on again.
It looks dangerous, since:
- it is very likely that "Advertise Lightning" appears ON, either after initial install, or by occasional re-enabling etc.;
- when ON, an extra string is added to UA unconditionally;
- such an extra string is not affected by site-specific useragent override mechanism at all;
- such an extra string is not shown in "about:" page (UA looks "clean" instead).
Thus there is a need to mention in release notes that any playing with site-specific overrides (aka "general.useragent.override.google.com=UA-without-SM") must be accompanied with unchecking of "Advertise Lightning installation", else all efforts have no effect at all.
The reverting patch from bug #1572290 restores the use of "http-on-modify-request" observer (instead of "http-on-useragent-request").
It seems that "http-on-modify-request" is used in Lightning code to add its extra UA addon. IOW, if you don't feel any issues last years with site-specific overrides, it is likely because the Lightning addon code just not worked.
A fast easy work-around might be to set "calendar.useragent.extra" to value of "Mozilla" (or any other word already present in the normal UA string). Then Lightning deside that the addon already present and adds nothing. This way the "Advertise Lightning" checkbox remains active, but actually UA is not garbled by it.
Comment 32•5 years ago
|
||
Yes we should disable Lightning by default. I am just not sure if we should fiddling in calendar code. We could blank the pref when the user unchecks it and during migration also do this one time blanking if no user pref is set. Tomorrow is a status meeting. Need to ask what the others think. "http-on-modify-request was still sent but from a different location if I read the code correctly.
Comment 33•5 years ago
|
||
Updated•5 years ago
|
Reporter | ||
Comment 34•5 years ago
|
||
After the Lightning issue is gone, the things have became much simpler now.
To leave only one checkbox for "FF+SM" vs. "FF only" and ignore rare "SM only" case looks good.
Whether a new pref name is needed, or still use the current one "general.useragent.compatMode.firefox", but with a different semantic?
What should be shown at the checkbox -- something like "Strict Firefox compatibility", or maybe just leave "Advertise Firefox compatibility" to avoid extra translating for l10n?
Comment 35•5 years ago
|
||
Sorry for not tackling this sooner. But too much other things to do to get the new version out.
Thought about it already last week. I am happy with a single checkbox showing either "Strict Firefox compatibility" (no SeaMonkey and default unchecked) or "Advertize SeaMonkey" (Firefox plus Seamonkey so basically as is and checked as default). As stated I think cases where Firefox compatibility is completely dropped from the ua is doing more damage then helping so this case can imho be dropped and done via individual domain overrides by the user.
IanN should have the last word here.
Reporter | ||
Comment 36•5 years ago
|
||
The patch v3.
One checkbox with "Strict Firefox compatibility" (instead of "Advertise Firefox compatibility").
The old pref name "general.useragent.compatMode.firefox" and the correspond booleans are gone, since we now always "advertise" FF (either "FF+SM" or "FF only").
The pref name chosen is "general.useragent.compatMode.strict-firefox", default "false".
Because of s/Advertise/Strict/, l10n changes needed.
Could be fine to see it in 2.53.2
Comment 37•5 years ago
|
||
Reporter | ||
Comment 38•5 years ago
|
||
(In reply to Frank-Rainer Grahl (:frg) from comment #37)
njsg suggested "Identify as Firefox" which I also like.
I hope "s/Strict Firefox compatibility/Identify as Firefox/" does not need extra new attachment here?
Comment 39•5 years ago
|
||
I hope "s/Strict Firefox compatibility/Identify as Firefox/" does not need extra new attachment here?
No. IanN needs to first take a look anyway. Last he told me he is still in favor of 3 options and not dropping "SeaMonkey without Firefox compatibility".
For a possible check in the patch needs a header and a be reformatted though. If you don't use hg in the future you might want to look into git-format-patch. We can do it but would like not to :)
Reporter | ||
Comment 40•5 years ago
|
||
(In reply to Frank-Rainer Grahl (:frg) from comment #39)
For a possible check in the patch needs a header and a be reformatted though. If you don't use hg in the future you might want to look into git-format-patch. We can do it but would like not to :)
Sorry, just no enough motivation for yet another bureaucracy. I guess I don't bother upstream too often, hence you can forgive me for that. ;)
Assignee | ||
Comment 41•5 years ago
|
||
This is the part of the patch for mozilla repo
Assignee | ||
Comment 42•5 years ago
|
||
This is the comm part of the patch.
Rather than removing the existing pref, this adds a second pref for advertising strict Firefox compatibility and hides it behind a radiogroup for the UI.
I would say that boolean prefs are easier to deal with in the cpp backend and seems clearer, plus no messy pref migration code needed but happy to look at switching to a non-boolean pref if you want.
Assignee | ||
Comment 43•5 years ago
|
||
Would help if I qrefresh before uploading, this now has the correct version with new pref defaulting to false if not present and Firefox being addition not just dependent on old pref being true.
Reporter | ||
Comment 44•5 years ago
|
||
(In reply to Ian Neal from comment #42)
I would say that boolean prefs are easier to deal with in the cpp backend and seems clearer, plus no messy pref migration code needed
Agree.
Rather than removing the existing pref, this adds a second pref for advertising strict Firefox compatibility and hides it behind a radiogroup for the UI.
Well, now:
( ) Strict Firefox compatibility
(.) Advertise Firefox compatibility
( ) No Firefox compatibility
Whether the "No Firefox compatibility" phrase will be correctly understood by the average user?
Maybe something like:
( ) Identify as Firefox
( ) Identify as SeaMonkey
(.) Identify as SeaMonkey and advertise Firefox compatibility
or even better:
( ) Identify as Firefox
(.) Identify as SeaMonkey
[x] Advertise Firefox compatibility
Last variant has no logic mess as with "triple radiogroup and two booleans" (ie. clean corellation with about:config editing).
For moz part patch, isFirefox boolean can just be combined with mCompatFirefoxStrict like:
bool isFirefox = mAppName.EqualsLiteral("Firefox") || mCompatFirefoxStrict;
Reporter | ||
Comment 45•5 years ago
|
||
Proposed comm part patch for "Identify as" variant.
Just to compare. Feel free to do anything with it :)
Comment 46•5 years ago
|
||
( ) Identify as Firefox
( ) Identify as SeaMonkey
(.) Identify as SeaMonkey and advertise Firefox compatibility
Just tested today. Works but have not looked at the patches yes. Like the "Identify" strings. They seem to be a little more non techie friendly. The checkbox idea is also ok but would need aditional logic. Imho not worth it.
Assignee | ||
Comment 47•5 years ago
|
||
Using "Identify as..." and fixing label/accesskey typo in xul
Reporter | ||
Comment 48•5 years ago
|
||
Comment 49•5 years ago
|
||
In tomorrows/next WG9s build for public consumption and testing
Comment 50•5 years ago
|
||
Comment 51•5 years ago
|
||
Updated•5 years ago
|
Assignee | ||
Comment 52•5 years ago
|
||
Carrying forward r/a
Comment 53•5 years ago
|
||
A patch to change the help text to match the new UI. I've also removed "Advertise lightning installation" (or is this preference still present?).
Should the "or remote calendar services" be removed as well?
Updated•5 years ago
|
Comment 54•5 years ago
|
||
Assignee | ||
Comment 55•5 years ago
|
||
Comment 56•5 years ago
|
||
Assignee | ||
Comment 57•5 years ago
|
||
Comment 58•5 years ago
|
||
Pushed by frgrahl@gmx.net:
https://hg.mozilla.org/comm-central/rev/97f8ec74862a
Update how Firefox compatibility is advertised - comm part. r=frg
Comment 59•5 years ago
|
||
Comment 60•5 years ago
|
||
Assignee | ||
Comment 61•5 years ago
|
||
Comment 62•5 years ago
|
||
Updated•5 years ago
|
Comment 63•4 years ago
|
||
Target 2.53.3
https://gitlab.com/seamonkey-project/seamonkey-2.53-comm/-/commit/8c5aa2cf8f6c22ed58322c13a445861b7e4ce5ec
Update how Firefox compatibility is advertised - comm part. r=frg a=frg
https://gitlab.com/seamonkey-project/seamonkey-2.53-comm/-/commit/8aa3fbe08bc070daeadb50c4072880871baeb7fd
Update help text for User-Agent preferences. r=IanN a=IanN
https://gitlab.com/seamonkey-project/seamonkey-2.53-mozilla/-/commit/43eb5fdc2e1537c1b1aa13f6112ad8870cd53ca5
Update how Firefox compatibility is advertised - mozilla part. r=frg a=frg
Description
•