-
- Your preferred language is not yet fully supported.
-
+
+
+
+ Your preferred language is not yet fully supported.
+
+
+
+
Help Translate
diff --git a/pages/options/options.js b/pages/options/options.js
index 17c403ed238073e9a56a75d9eefdc67628ce4589..cc7ce9ad9366519ea60b13bd0d98589c4895d689 100644
--- a/pages/options/options.js
+++ b/pages/options/options.js
@@ -48,16 +48,33 @@ options._renderOptionsPanel = function () {
elements.whitelistedDomains.value = domainWhitelist;
options._registerOptionChangedEventListeners(elements);
+ options._registerMiscellaneousEventListeners();
+
+ if (options._optionValues.blockMissing === true) {
+ options._renderBlockMissingNotice();
+ }
if (options._languageSupported === false) {
options._renderLocaleNotice();
}
};
+options._renderBlockMissingNotice = function () {
+
+ let blockMissingNoticeElement = document.getElementById('notice-block-missing');
+ blockMissingNoticeElement.setAttribute('class', 'notice notice-warning');
+};
+
+options._hideBlockMissingNotice = function () {
+
+ let blockMissingNoticeElement = document.getElementById('notice-block-missing');
+ blockMissingNoticeElement.setAttribute('class', 'notice notice-warning hidden');
+};
+
options._renderLocaleNotice = function () {
let localeNoticeElement = document.getElementById('notice-locale');
- localeNoticeElement.setAttribute('class', 'notice');
+ localeNoticeElement.setAttribute('class', 'notice notice-default');
};
options._registerOptionChangedEventListeners = function (elements) {
@@ -69,6 +86,19 @@ options._registerOptionChangedEventListeners = function (elements) {
elements.whitelistedDomains.addEventListener('keyup', options._onOptionChanged);
};
+options._registerMiscellaneousEventListeners = function () {
+
+ let blockMissingButtonElement = document.getElementById('button-block-missing');
+
+ blockMissingButtonElement.addEventListener('click', function () {
+
+ let changeEvent = new Event('change');
+
+ options._optionElements.blockMissing.checked = false;
+ options._optionElements.blockMissing.dispatchEvent(changeEvent);
+ });
+};
+
options._determineOptionValues = function () {
return new Promise((resolve) => {
@@ -173,6 +203,15 @@ options._onOptionChanged = function ({target}) {
optionValue = target.value;
}
+ if (optionKey === Setting.BLOCK_MISSING) {
+
+ if (optionValue === true) {
+ options._renderBlockMissingNotice();
+ } else {
+ options._hideBlockMissingNotice();
+ }
+ }
+
if (optionKey === Setting.DISABLE_PREFETCH) {
options._configureLinkPrefetching(optionValue);
}