summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-05-09 15:28:44 +0200
committerjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-05-09 15:28:44 +0200
commit7c2dd4fed5b90f11af7cf5c20011a5c3fb3a5193 (patch)
tree5d5bf8d46b3c9258d130173e9ca456bac64d2465
parent43208a5308f2ac64416d6c962d922776bb664431 (diff)
downloadUXP-7c2dd4fed5b90f11af7cf5c20011a5c3fb3a5193.tar
UXP-7c2dd4fed5b90f11af7cf5c20011a5c3fb3a5193.tar.gz
UXP-7c2dd4fed5b90f11af7cf5c20011a5c3fb3a5193.tar.lz
UXP-7c2dd4fed5b90f11af7cf5c20011a5c3fb3a5193.tar.xz
UXP-7c2dd4fed5b90f11af7cf5c20011a5c3fb3a5193.zip
Add UTF-8 as a default fallback encoding for unknown encodings
Issue #315
-rw-r--r--browser/components/preferences/fonts.xul3
-rw-r--r--browser/locales/en-US/chrome/browser/preferences/fonts.dtd1
-rw-r--r--dom/encoding/FallbackEncoding.cpp3
-rw-r--r--modules/libpref/init/all.js2
4 files changed, 5 insertions, 4 deletions
diff --git a/browser/components/preferences/fonts.xul b/browser/components/preferences/fonts.xul
index ed1d1ecc2..26b1c6547 100644
--- a/browser/components/preferences/fonts.xul
+++ b/browser/components/preferences/fonts.xul
@@ -255,7 +255,8 @@
control="DefaultCharsetList"/>
<menulist id="DefaultCharsetList" preference="intl.charset.fallback.override">
<menupopup>
- <menuitem label="&languages.customize.Fallback.auto;" value=""/>
+ <menuitem label="&languages.customize.Fallback.auto;" value="*"/>
+ <menuitem label="&languages.customize.Fallback.utf8;" value="UTF-8"/>
<menuitem label="&languages.customize.Fallback.arabic;" value="windows-1256"/>
<menuitem label="&languages.customize.Fallback.baltic;" value="windows-1257"/>
<menuitem label="&languages.customize.Fallback.ceiso;" value="ISO-8859-2"/>
diff --git a/browser/locales/en-US/chrome/browser/preferences/fonts.dtd b/browser/locales/en-US/chrome/browser/preferences/fonts.dtd
index 98d697d35..d55bcde8b 100644
--- a/browser/locales/en-US/chrome/browser/preferences/fonts.dtd
+++ b/browser/locales/en-US/chrome/browser/preferences/fonts.dtd
@@ -70,6 +70,7 @@
<!ENTITY languages.customize.Fallback2.desc "This text encoding is used for legacy content that fails to declare its encoding.">
<!ENTITY languages.customize.Fallback.auto "Default for Current Locale">
+<!ENTITY languages.customize.Fallback.utf8 "UTF-8">
<!-- LOCALIZATION NOTE (languages.customize.Fallback.arabic):
Translate "Arabic" as an adjective for an encoding, not as the name of the language. -->
<!ENTITY languages.customize.Fallback.arabic "Arabic">
diff --git a/dom/encoding/FallbackEncoding.cpp b/dom/encoding/FallbackEncoding.cpp
index 93fe0f8cb..29411412e 100644
--- a/dom/encoding/FallbackEncoding.cpp
+++ b/dom/encoding/FallbackEncoding.cpp
@@ -55,8 +55,7 @@ FallbackEncoding::Get(nsACString& aFallback)
// Don't let the user break things by setting the override to unreasonable
// values via about:config
if (!EncodingUtils::FindEncodingForLabel(override, mFallback) ||
- !EncodingUtils::IsAsciiCompatible(mFallback) ||
- mFallback.EqualsLiteral("UTF-8")) {
+ !EncodingUtils::IsAsciiCompatible(mFallback)) {
mFallback.Truncate();
}
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
index 88a9af2da..2bf07eb91 100644
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -2046,7 +2046,7 @@ pref("intl.accept_languages", "chrome://global/locale/intl.propert
pref("intl.menuitems.alwaysappendaccesskeys","chrome://global/locale/intl.properties");
pref("intl.menuitems.insertseparatorbeforeaccesskeys","chrome://global/locale/intl.properties");
pref("intl.charset.detector", "chrome://global/locale/intl.properties");
-pref("intl.charset.fallback.override", "");
+pref("intl.charset.fallback.override", "*"); // '*' to make sure the UI selects the proper entry for 'auto'
pref("intl.charset.fallback.tld", true);
pref("intl.ellipsis", "chrome://global-platform/locale/intl.properties");
pref("intl.locale.matchOS", false);