Index: js/desktop-options.js
===================================================================
--- a/js/desktop-options.js
+++ b/js/desktop-options.js
@@ -232,17 +232,18 @@
 
     element.setAttribute("aria-label", title);
     if (this.details[i].searchable)
       element.setAttribute("data-search", title.toLowerCase());
     let controls = element.querySelectorAll(".control[role='checkbox']");
     for (let control of controls)
     {
       control.setAttribute("aria-checked", item.disabled == false);
-      if (isAcceptableAds(item.url) && this == collections.filterLists)
+      if (isAcceptableAds(item.url) && this == collections.filterLists &&
+        !item.disabled)
       {
         control.disabled = true;
       }
     }
     if (additionalSubscriptions.includes(item.url))
     {
       element.classList.add("preconfigured");
       let disablePreconfigures =
@@ -1074,22 +1075,24 @@
 {
   let acceptableAdsForm = E("acceptable-ads");
   let acceptableAds = E("acceptable-ads-allow");
   let acceptableAdsPrivacy = E("acceptable-ads-privacy-allow");
   acceptableAdsForm.classList.remove("show-dnt-notification");
   acceptableAds.setAttribute("aria-checked", false);
   acceptableAdsPrivacy.setAttribute("aria-checked", false);
   acceptableAdsPrivacy.setAttribute("tabindex", 0);
-  if (acceptableAdsUrl in subscriptionsMap)
+  if (acceptableAdsUrl in subscriptionsMap &&
+    !subscriptionsMap[acceptableAdsUrl].disabled)
   {
     acceptableAds.setAttribute("aria-checked", true);
     acceptableAdsPrivacy.setAttribute("aria-disabled", false);
   }
-  else if (acceptableAdsPrivacyUrl in subscriptionsMap)
+  else if (acceptableAdsPrivacyUrl in subscriptionsMap &&
+    !subscriptionsMap[acceptableAdsPrivacyUrl].disabled)
   {
     acceptableAds.setAttribute("aria-checked", true);
     acceptableAdsPrivacy.setAttribute("aria-checked", true);
     acceptableAdsPrivacy.setAttribute("aria-disabled", false);
 
     // Edge uses window instead of navigator.
     // Prefer navigator first since it's the standard.
     if ((navigator.doNotTrack || window.doNotTrack) != 1)
@@ -1286,16 +1289,19 @@
         knownSubscription[property] = subscription[property];
     }
     subscription = knownSubscription;
   }
   switch (action)
   {
     case "disabled":
       updateSubscription(subscription);
+      if (isAcceptableAds(subscription.url))
+        setAcceptableAds();
+
       setPrivacyConflict();
       break;
     case "downloading":
     case "downloadStatus":
     case "homepage":
     case "lastDownload":
     case "title":
       updateSubscription(subscription);
