No way to reenable filters in downloadable filter lists
Environment
- OS version: Ubuntu 16.04
- Browser version: Chrome 76
- Extension version: UI release-2019-2
- Last working version: TBD
Steps to reproduce
- Add the filter
@@||example.com^$document,subdocument
to a downloadable and a custom filter list - Go to example.com
- Enable ad blocking via icon popup
Observed behavior
- Step 3: Icon is gray
- Step 4: Filter in filter list is disabled and filter in custom filter is removed
Suggested solution
- Users are shown a message indicating that page was disabled via a downloadble filter list when they attempt to enable ad blocking on such a page
- Users are notified of some filters in downloadable filter lists being disabled and can reenable them again
Additionally, we should stop interfering with existing filters when reenabling Adblock Plus via the icon popup (see webext#123). This behavior didn't exist in the legacy Firefox extension either and it is unclear why it was added either (see commit from October 2011). This would allow us to simplify the logic and provide a more consistent whitelisting experience (see #576 (closed) and #640).
Further information
See also trac#7246.
Spec: spec!311 (merged)
Alternative steps:
- Add a custom filter based on an existing filter from a downloadable filter list (e.g.
&ad_slot=
in EasyList). - Disable custom filter.
Original steps:
- Add the filter
@@||welect.com^$document,subdocument
through a downloadble filter list and as a custom filter - Go to https://rp-online.de/
- Click on "Werbespot ansehen"
- Enable ad blocking via icon popup
Hints for testers
- ABP should be able to show multiple errors in the filter lists table and handle a new error for disabled filters in a subscription. The following tests can be used as a reference.
Test 1:
- Add a custom downloadable subscription with the
@@||example.com^$document,subdocument
rule in it (you can use this url). - Go to http://example.com/, open ABP popup and enable the "this page" toggle button.
- To Check: In the desktop-options page > advanced, a "disabled filters" error should appear in the filter lists table (see screenshot)
- To Check: Clicking on "Enable them" should remove the error and should disable the "this page" toggle button for the http://example.com/ site.
Test 2:
- Follow 1-3 steps in Test 1.
- Disconnect your machine (or only the browser) from Internet.
- Click on "Update All Filter Lists" (Advanced tab).
- To Check: Multiple errors should be visible in the respective tooltip as a list (see screenshot).
Test 3:
- Add a rule from "ABP filters" installed-by-default subscription, like
novinky.cz##a[href*=";CREFURL="]
, in the custom filter list table ("My filter list"). - Disable such rule from the custom filter list table.
- To Check: An error should be displayed in the "filter lists" table (see screenshot).
Note: For Test 3, clicking "enable them" from the new error tooltip is currently triggering a warning icon (red triangle) in the custom filter list table. As this warning was supposed to happen before we consider adding the feature to enable disabled filters, we need to analyze and reevaluate such expected behavior in an independent ticket (TODO: add ticket link after merging this issue MR, see #640).
Hints for translators
strings added:
- options_filterList_errorPopup_title
- options_filterList_filtersDisabled
- options_filterList_enableFilters
strings updated:
- options_filterList_lastDownload_connectionError
string description updated:
- options_filterList_lastDownload_invalidURLProtocol
Integration notes
Requires https://gitlab.com/eyeo/adblockplus/abpui/adblockpluschrome/-/merge_requests/72