| Index: js/desktop-options.js |
| =================================================================== |
| --- a/js/desktop-options.js |
| +++ b/js/desktop-options.js |
| @@ -26,6 +26,7 @@ |
| let acceptableAdsUrl = null; |
| let acceptableAdsPrivacyUrl = null; |
| let isCustomFiltersLoaded = false; |
| +let additionalSubscriptions = []; |
| let {getMessage} = browser.i18n; |
| let {setElementText} = ext.i18n; |
| let customFilters = []; |
| @@ -237,7 +238,17 @@ |
| { |
| control.setAttribute("aria-checked", item.disabled == false); |
| if (isAcceptableAds(item.url) && this == collections.filterLists) |
| + { |
| control.disabled = true; |
| + } |
| + } |
| + if (additionalSubscriptions.includes(item.url)) |
| + { |
| + element.classList.add("preconfigured"); |
| + let disablePreconfigures = |
| + element.querySelectorAll("[data-disable~='preconfigured']"); |
| + for (let disablePreconfigure of disablePreconfigures) |
| + disablePreconfigure.disabled = true; |
| } |
| let lastUpdateElement = element.querySelector(".last-update"); |
| @@ -1170,17 +1181,22 @@ |
| { |
| acceptableAdsPrivacyUrl = urlPrivacy; |
| - // Load user subscriptions |
| - browser.runtime.sendMessage({ |
| - type: "subscriptions.get", |
| - downloadable: true |
| - }, |
| - (subscriptions) => |
| + getPref("additional_subscriptions", (subscriptionUrls) => |
| { |
| - for (let subscription of subscriptions) |
| - onSubscriptionMessage("added", subscription); |
| + additionalSubscriptions = subscriptionUrls; |
| - setAcceptableAds(); |
| + // Load user subscriptions |
| + browser.runtime.sendMessage({ |
| + type: "subscriptions.get", |
| + downloadable: true |
| + }, |
| + (subscriptions) => |
| + { |
| + for (let subscription of subscriptions) |
| + onSubscriptionMessage("added", subscription); |
| + |
| + setAcceptableAds(); |
| + }); |
| }); |
| }); |
| }); |