Bug 1352374 - Part 1: Exclude element with data-hidden-from-search=true from search results, r?jaws
MozReview-Commit-ID: AS1EMkfyH9b
--- a/browser/components/preferences/in-content/preferences.js
+++ b/browser/components/preferences/in-content/preferences.js
@@ -174,18 +174,24 @@ function gotoPref(aCategory) {
.getHistogramById("FX_PREFERENCES_CATEGORY_OPENED_V2")
.add(telemetryBucketForCategory(friendlyName));
}
function search(aQuery, aAttribute) {
let mainPrefPane = document.getElementById("mainPrefPane");
let elements = mainPrefPane.children;
for (let element of elements) {
- let attributeValue = element.getAttribute(aAttribute);
- element.hidden = (attributeValue != aQuery);
+ // If the "data-hidden-from-search" is "true", the
+ // element will not get considered during search. This
+ // should only be used when an element is still under
+ // development and should not be shown for any reason.
+ if (element.getAttribute("data-hidden-from-search") != "true") {
+ let attributeValue = element.getAttribute(aAttribute);
+ element.hidden = (attributeValue != aQuery);
+ }
}
let keysets = mainPrefPane.getElementsByTagName("keyset");
for (let element of keysets) {
let attributeValue = element.getAttribute(aAttribute);
if (attributeValue == aQuery)
element.removeAttribute("disabled");
else
--- a/browser/components/preferences/in-content/privacy.js
+++ b/browser/components/preferences/in-content/privacy.js
@@ -257,16 +257,17 @@ var gPrivacyPane = {
gPrivacyPane.removeOfflineApp);
setEventListener("clearOfflineAppCacheButton", "command",
gPrivacyPane.clearOfflineAppCache);
let bundlePrefs = document.getElementById("bundlePreferences");
document.getElementById("offlineAppsList")
.style.height = bundlePrefs.getString("offlineAppsList.height");
let offlineGroup = document.getElementById("offlineGroup");
offlineGroup.hidden = false;
+ offlineGroup.removeAttribute("data-hidden-from-search");
}
if (Services.prefs.getBoolPref("browser.storageManager.enabled")) {
Services.obs.addObserver(this, "sitedatamanager:sites-updated", false);
let unload = () => {
window.removeEventListener("unload", unload);
Services.obs.removeObserver(this, "sitedatamanager:sites-updated");
};
@@ -1165,29 +1166,30 @@ var gPrivacyPane = {
var list = document.getElementById("offlineAppsList");
if (list.selectedItem) {
removeButton.setAttribute("disabled", "false");
} else {
removeButton.setAttribute("disabled", "true");
}
},
- showSiteDataSettings() {
+ showSiteDataSettings() {
gSubDialog.open("chrome://browser/content/preferences/siteDataSettings.xul");
},
updateTotalSiteDataSize() {
SiteDataManager.getTotalUsage()
.then(usage => {
let size = DownloadUtils.convertByteUnits(usage);
let prefStrBundle = document.getElementById("bundlePreferences");
let totalSiteDataSizeLabel = document.getElementById("totalSiteDataSize");
totalSiteDataSizeLabel.textContent = prefStrBundle.getFormattedString("totalSiteDataSize", size);
let siteDataGroup = document.getElementById("siteDataGroup");
siteDataGroup.hidden = false;
+ siteDataGroup.removeAttribute("data-hidden-from-search");
});
},
// Retrieves the amount of space currently used by disk cache
updateActualCacheSize() {
var actualSizeLabel = document.getElementById("actualDiskCacheSize");
var prefStrBundle = document.getElementById("bundlePreferences");
--- a/browser/components/preferences/in-content/privacy.xul
+++ b/browser/components/preferences/in-content/privacy.xul
@@ -622,17 +622,17 @@
</label>
<textbox id="cacheSize" type="number" size="4" max="1024"
aria-labelledby="useCacheBefore cacheSize useCacheAfter"/>
<label id="useCacheAfter" flex="1">&limitCacheSizeAfter.label;</label>
</hbox>
</groupbox>
<!-- Offline apps -->
-<groupbox id="offlineGroup" data-category="panePrivacy" hidden="true">
+<groupbox id="offlineGroup" data-category="panePrivacy" hidden="true" data-hidden-from-search="true">
<caption><label>&offlineStorage2.label;</label></caption>
<hbox align="center">
<label id="actualAppCacheSize" flex="1"/>
<button id="clearOfflineAppCacheButton" icon="clear"
label="&clearOfflineAppCacheNow.label;" accesskey="&clearOfflineAppCacheNow.accesskey;"/>
</hbox>
<hbox align="center">
@@ -658,17 +658,17 @@
disabled="true"
label="&offlineAppsListRemove.label;"
accesskey="&offlineAppsListRemove.accesskey;"/>
</vbox>
</hbox>
</groupbox>
<!-- Site Data -->
-<groupbox id="siteDataGroup" hidden="true" data-category="panePrivacy">
+<groupbox id="siteDataGroup" hidden="true" data-category="panePrivacy" data-hidden-from-search="true">
<caption><label>&siteData.label;</label></caption>
<hbox align="center">
<label id="totalSiteDataSize" flex="1"></label>
<button id="clearSiteDataButton" icon="clear"
label="&clearSiteData.label;" accesskey="&clearSiteData.accesskey;"/>
</hbox>
<vbox align="end">