uBlock/platform/mv3/extension
Raymond Hill 72726a4759
[mv3] Refactor content scripts related to specific cosmetic filtering
Specifically, avoid long list of hostnames for the `matches`
property[1] when registering the content scripts, as this was causing
whole browser freeze for long seconds in Chromium-based browsers
(reason unknown).

The content scripts themselves will sort out which cosmetic filters to
apply on which websites.

This change makes it now possible to support annoyances-related lists,
and thus two lists have been added:
- EasyList -- Annoyances
- EasyList -- Cookies

Related issue:
- https://github.com/uBlockOrigin/uBOL-issues/issues/5

These annoyances-related lists contains many thousands of specific
cosmetic filters and as a result, before the above change this was
causing long seconds of whole browser freeze when simply modifying
the blocking mode of a specific site via the slider in the popup
panel.

It is now virtually instantaneous, at the cost of injecting larger
cosmetic filtering-related content scripts (which typically should
be garbage-collected within single-digit milliseconds).

Also, added support for entity-based cosmetic filters. (They were
previously discarded).

---

[1] https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/scripting/RegisteredContentScript
2023-06-03 22:08:42 -04:00
..
_locales Import translation work from https://crowdin.com/project/ublock 2023-05-17 10:25:27 -04:00
css [mv3] Introduce per-site filtering modes in lieu of per-site toggle switch 2022-10-10 12:28:24 -04:00
img [mv3] Add ability to enable/disable filter lists 2022-09-13 17:44:24 -04:00
js [mv3] Refactor content scripts related to specific cosmetic filtering 2023-06-03 22:08:42 -04:00
about.html Code maintenance: replace uDom.js with dom.js 2022-11-12 09:51:22 -05:00
dashboard.html Code maintenance: replace uDom.js with dom.js 2022-11-12 09:51:22 -05:00
popup.html Fix mv3 builds 2023-04-11 09:35:31 -04:00
settings.html Fix mv3 builds 2023-04-11 09:35:31 -04:00