Bug 1362290 - Support non-experimental autocomplete pref. r=baku
MozReview-Commit-ID: LABuNLbq2Io
--- a/browser/extensions/formautofill/test/unit/head.js
+++ b/browser/extensions/formautofill/test/unit/head.js
@@ -198,17 +198,17 @@ function objectMatches(object, fields) {
actual[key] = object[key];
}
return ObjectUtils.deepEqual(actual, fields);
}
add_task(async function head_initialize() {
Services.prefs.setBoolPref("extensions.formautofill.experimental", true);
Services.prefs.setBoolPref("extensions.formautofill.heuristics.enabled", true);
- Services.prefs.setBoolPref("dom.forms.autocomplete.experimental", true);
+ Services.prefs.setBoolPref("dom.forms.autocomplete.formautofill", true);
// Clean up after every test.
do_register_cleanup(function head_cleanup() {
Services.prefs.clearUserPref("extensions.formautofill.experimental");
Services.prefs.clearUserPref("extensions.formautofill.heuristics.enabled");
- Services.prefs.clearUserPref("dom.forms.autocomplete.experimental");
+ Services.prefs.clearUserPref("dom.forms.autocomplete.formautofill");
});
});
--- a/dom/base/nsContentUtils.cpp
+++ b/dom/base/nsContentUtils.cpp
@@ -285,17 +285,17 @@ bool nsContentUtils::sInitialized = fals
bool nsContentUtils::sIsFullScreenApiEnabled = false;
bool nsContentUtils::sIsUnprefixedFullscreenApiEnabled = false;
bool nsContentUtils::sTrustedFullScreenOnly = true;
bool nsContentUtils::sIsCutCopyAllowed = true;
bool nsContentUtils::sIsFrameTimingPrefEnabled = false;
bool nsContentUtils::sIsPerformanceTimingEnabled = false;
bool nsContentUtils::sIsResourceTimingEnabled = false;
bool nsContentUtils::sIsUserTimingLoggingEnabled = false;
-bool nsContentUtils::sIsExperimentalAutocompleteEnabled = false;
+bool nsContentUtils::sIsFormAutofillAutocompleteEnabled = false;
bool nsContentUtils::sIsWebComponentsEnabled = false;
bool nsContentUtils::sIsCustomElementsEnabled = false;
bool nsContentUtils::sSendPerformanceTimingNotifications = false;
bool nsContentUtils::sUseActivityCursor = false;
bool nsContentUtils::sAnimationsAPICoreEnabled = false;
bool nsContentUtils::sAnimationsAPIElementAnimateEnabled = false;
bool nsContentUtils::sGetBoxQuadsEnabled = false;
bool nsContentUtils::sSkipCursorMoveForSameValueSet = false;
@@ -688,18 +688,18 @@ nsContentUtils::Init()
"dom.enable_resource_timing", true);
Preferences::AddBoolVarCache(&sIsUserTimingLoggingEnabled,
"dom.performance.enable_user_timing_logging", false);
Preferences::AddBoolVarCache(&sIsFrameTimingPrefEnabled,
"dom.enable_frame_timing", false);
- Preferences::AddBoolVarCache(&sIsExperimentalAutocompleteEnabled,
- "dom.forms.autocomplete.experimental", false);
+ Preferences::AddBoolVarCache(&sIsFormAutofillAutocompleteEnabled,
+ "dom.forms.autocomplete.formautofill", false);
Preferences::AddBoolVarCache(&sIsWebComponentsEnabled,
"dom.webcomponents.enabled", false);
Preferences::AddBoolVarCache(&sIsCustomElementsEnabled,
"dom.webcomponents.customelements.enabled", false);
Preferences::AddIntVarCache(&sPrivacyMaxInnerWidth,
@@ -1179,31 +1179,31 @@ nsContentUtils::InternalSerializeAutocom
return eAutocompleteAttrState_Invalid;
}
enumValue.ToString(str);
ASCIIToLower(str);
aInfo.mFieldName.Assign(str);
return eAutocompleteAttrState_Valid;
}
- // Only allow on/off if experimental @autocomplete values aren't enabled
+ // Only allow on/off if form autofill @autocomplete values aren't enabled
// and it doesn't grant all valid values.
- if (!sIsExperimentalAutocompleteEnabled && !aGrantAllValidValue) {
+ if (!sIsFormAutofillAutocompleteEnabled && !aGrantAllValidValue) {
return eAutocompleteAttrState_Invalid;
}
// Normal category
if (numTokens > 3) {
return eAutocompleteAttrState_Invalid;
}
category = eAutocompleteCategory_NORMAL;
} else { // Check if the last token is of the contact category instead.
- // Only allow on/off if experimental @autocomplete values aren't enabled
+ // Only allow on/off if form autofill @autocomplete values aren't enabled
// and it doesn't grant all valid values.
- if (!sIsExperimentalAutocompleteEnabled && !aGrantAllValidValue) {
+ if (!sIsFormAutofillAutocompleteEnabled && !aGrantAllValidValue) {
return eAutocompleteAttrState_Invalid;
}
result = enumValue.ParseEnumValue(tokenString, kAutocompleteContactFieldNameTable, false);
if (!result || numTokens > 4) {
return eAutocompleteAttrState_Invalid;
}
--- a/dom/base/nsContentUtils.h
+++ b/dom/base/nsContentUtils.h
@@ -3226,17 +3226,17 @@ private:
static bool sIsUnprefixedFullscreenApiEnabled;
static bool sTrustedFullScreenOnly;
static bool sIsCutCopyAllowed;
static uint32_t sHandlingInputTimeout;
static bool sIsPerformanceTimingEnabled;
static bool sIsResourceTimingEnabled;
static bool sIsUserTimingLoggingEnabled;
static bool sIsFrameTimingPrefEnabled;
- static bool sIsExperimentalAutocompleteEnabled;
+ static bool sIsFormAutofillAutocompleteEnabled;
static bool sIsWebComponentsEnabled;
static bool sIsCustomElementsEnabled;
static bool sSendPerformanceTimingNotifications;
static bool sUseActivityCursor;
static bool sAnimationsAPICoreEnabled;
static bool sAnimationsAPIElementAnimateEnabled;
static bool sGetBoxQuadsEnabled;
static bool sSkipCursorMoveForSameValueSet;
--- a/dom/html/test/forms/test_autocompleteinfo.html
+++ b/dom/html/test/forms/test_autocompleteinfo.html
@@ -148,24 +148,24 @@ function testAutocomplete(aField, aType,
if (aEnabled) {
ok(aField.getAutocompleteInfo() !== null, "getAutocompleteInfo shouldn't return null");
} else {
is(aField.getAutocompleteInfo(), null, "getAutocompleteInfo should return null");
}
}
// getAutocompleteInfo() should be able to parse all tokens as defined
-// in the spec regardless of whether dom.forms.autocomplete.experimental pref
+// in the spec regardless of whether dom.forms.autocomplete.formautofill pref
// is on or off.
add_task(async function testAutocompletePreferenceEnabled() {
- await SpecialPowers.pushPrefEnv({"set": [["dom.forms.autocomplete.experimental", true]]}, testInputTypes);
+ await SpecialPowers.pushPrefEnv({"set": [["dom.forms.autocomplete.formautofill", true]]}, testInputTypes);
testAutocompleteInfoValue(true);
});
add_task(async function testAutocompletePreferenceDisabled() {
- await SpecialPowers.pushPrefEnv({"set": [["dom.forms.autocomplete.experimental", false]]}, testInputTypes);
+ await SpecialPowers.pushPrefEnv({"set": [["dom.forms.autocomplete.formautofill", false]]}, testInputTypes);
testAutocompleteInfoValue(false);
});
</script>
</pre>
</body>
</html>
--- a/dom/html/test/forms/test_input_autocomplete.html
+++ b/dom/html/test/forms/test_input_autocomplete.html
@@ -107,17 +107,17 @@ function start() {
}
var selectField = document.getElementById("select-field");
checkAutocompleteValues(selectField, "select");
SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
-SpecialPowers.pushPrefEnv({"set": [["dom.forms.autocomplete.experimental", true]]}, start);
+SpecialPowers.pushPrefEnv({"set": [["dom.forms.autocomplete.formautofill", true]]}, start);
</script>
</head>
<body>
<p id="display"></p>
<div id="content" style="display: none">
<form>
<input id="input-field" />
--- a/dom/ipc/ContentPrefs.cpp
+++ b/dom/ipc/ContentPrefs.cpp
@@ -44,17 +44,17 @@ const char* mozilla::dom::ContentPrefs::
"device.storage.writable.name",
"dom.allow_XUL_XBL_for_file",
"dom.allow_cut_copy",
"dom.enable_frame_timing",
"dom.enable_performance",
"dom.enable_resource_timing",
"dom.event.handling-user-input-time-limit",
"dom.event.touch.coalescing.enabled",
- "dom.forms.autocomplete.experimental",
+ "dom.forms.autocomplete.formautofill",
"dom.ipc.processPriorityManager.backgroundGracePeriodMS",
"dom.ipc.processPriorityManager.backgroundPerceivableGracePeriodMS",
"dom.max_chrome_script_run_time",
"dom.max_script_run_time",
"dom.mozBrowserFramesEnabled",
"dom.performance.enable_notify_performance_timing",
"dom.performance.enable_user_timing_logging",
"dom.storage.testing",
--- a/dom/webidl/HTMLSelectElement.webidl
+++ b/dom/webidl/HTMLSelectElement.webidl
@@ -6,17 +6,17 @@
* The origin of this IDL file is
* http://www.whatwg.org/html/#the-select-element
*/
[HTMLConstructor]
interface HTMLSelectElement : HTMLElement {
[CEReactions, SetterThrows, Pure]
attribute boolean autofocus;
- [CEReactions, Pref="dom.forms.autocomplete.experimental", SetterThrows, Pure]
+ [CEReactions, Pref="dom.forms.autocomplete.formautofill", SetterThrows, Pure]
attribute DOMString autocomplete;
[CEReactions, SetterThrows, Pure]
attribute boolean disabled;
[Pure]
readonly attribute HTMLFormElement? form;
[CEReactions, SetterThrows, Pure]
attribute boolean multiple;
[CEReactions, SetterThrows, Pure]
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -1320,18 +1320,18 @@ pref("dom.forms.datetime", false);
// Support for input type=month, type=week and type=datetime-local. By default,
// disabled.
pref("dom.forms.datetime.others", false);
// Enable time picker UI. By default, disabled.
pref("dom.forms.datetime.timepicker", false);
-// Support for new @autocomplete values
-pref("dom.forms.autocomplete.experimental", false);
+// Support @autocomplete values for form autofill feature.
+pref("dom.forms.autocomplete.formautofill", false);
// Enable search in <select> dropdowns (more than 40 options)
pref("dom.forms.selectSearch", false);
// Allow for webpages to provide custom styling for <select>
// popups. Disabled on Linux due to bug 1338283.
#ifdef XP_LINUX
pref("dom.forms.select.customstyling", false);
#else