diff --git a/src/css/3p-filters.css b/src/css/3p-filters.css index 111d4e8f7..4a64e91e3 100644 --- a/src/css/3p-filters.css +++ b/src/css/3p-filters.css @@ -57,7 +57,7 @@ body.hideUnused #listsOfBlockedHostsPrompt::before, margin-inline-start: 0.6em; -webkit-margin-start: 0.6em; } -.groupEntry:not([data-groupkey="user"]) .listEntry.unused { +.groupEntry:not([data-groupkey="user"]) .listEntry:not(.isDefault).unused { display: none; } .listEntry > * { diff --git a/src/js/3p-filters.js b/src/js/3p-filters.js index b0b654ff6..3f1dc1081 100644 --- a/src/js/3p-filters.js +++ b/src/js/3p-filters.js @@ -120,6 +120,7 @@ const renderFilterLists = function(soft) { } else { li.classList.remove('mustread'); } + li.classList.toggle('isDefault', entry.isDefault === true); li.classList.toggle('unused', hideUnused && !on); } // https://github.com/gorhill/uBlock/issues/1429 diff --git a/src/js/assets.js b/src/js/assets.js index 977197c2c..75804cdda 100644 --- a/src/js/assets.js +++ b/src/js/assets.js @@ -873,6 +873,15 @@ api.metadata = async function() { for ( const assetKey in assetDict ) { const assetEntry = assetDict[assetKey]; const cacheEntry = cacheDict[assetKey]; + if ( + assetEntry.content === 'filters' && + assetEntry.external !== true + ) { + assetEntry.isDefault = + assetEntry.off === undefined || + assetEntry.off === true && + µBlock.listMatchesEnvironment(assetEntry); + } if ( cacheEntry ) { assetEntry.cached = true; assetEntry.writeTime = cacheEntry.writeTime;