uBlock/src/js
Raymond Hill 67fb969572
Refactoring: Replace DOM events with broadcast channels
Broadcast channels are more suited to uBO than DOM events to dispatch
notifications to different parts of uBO.

DOM events can only be dispatched to local context, broadcast channels
dispatch to all contexts (i.e. background process, workers, auxiliary
pages) -- this last behavior is better suited to uBO to communicate
internal changes to all potential listeners, not just those in the local
context.

Additionally, broadcasting to content scripts is now done through
tabs.sendMessage() instead of through potentially opened message
ports, this simplifies broadcasting to content scripts, and this
doesn't require to have long-lived message ports in content
scripts.
2023-12-01 14:35:28 -05:00
..
codemirror Support auto-complete for from= same as domain= 2023-11-03 20:19:19 -04:00
scriptlets Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
wasm use WebAssembly-1.0 compliant function names 2022-05-22 17:34:12 +02:00
1p-filters.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
3p-filters.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
about.js Code maintenance: replace uDom.js with dom.js 2022-11-12 09:51:22 -05:00
advanced-settings.js Wrap usage of setTimeout in helper for background + auxiliary pages 2023-04-09 13:38:16 -04:00
asset-viewer.js Minor refactoring plus other minor changes 2023-10-22 08:53:01 -04:00
assets.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
background.js Implement network filter option replace= 2023-11-03 19:01:01 -04:00
base64-custom.js Modularize codebase with export/import 2021-07-27 17:26:04 -04:00
benchmarks.js Implement network filter option replace= 2023-11-03 19:01:01 -04:00
biditrie.js Add experimental mv3 version 2022-09-06 13:47:52 -04:00
broadcast.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
cachestorage.js Use browser.storage.local API for Firefox + private mode 2023-07-06 19:58:05 -04:00
click2load.js Fix CSS sizing of click-to-load widget as suggested 2022-01-07 08:02:31 -05:00
cloud-ui.js Fix cloud storage widget not showing (regression) 2023-04-10 10:03:51 -04:00
code-viewer.js Fix looking up clickable URLs in code viewer 2023-07-29 10:51:15 -04:00
commands.js Wrap usage of setTimeout in helper for background + auxiliary pages 2023-04-09 13:38:16 -04:00
console.js Further modularize uBO's codebase 2021-07-28 19:48:38 -04:00
contentscript-extra.js [mv3] Use workaround to inject scriptlets in Firefox 2023-08-11 13:22:25 -04:00
contentscript.js Fix typos 2023-07-23 10:01:08 -04:00
contextmenu.js Fix "View source..." context menu entry in Firefox 2023-03-12 10:21:30 -04:00
cosmetic-filtering.js Fix dumping of CFE internals when no cosmetic filters present 2023-10-09 11:12:10 -04:00
dashboard-common.js Wrap usage of setTimeout in helper for background + auxiliary pages 2023-04-09 13:38:16 -04:00
dashboard.js Add ability to update lists through links with specifically crafted URLs 2023-10-14 13:41:49 -04:00
devtools.js Code maintenance: replace uDom.js with dom.js 2022-11-12 09:51:22 -05:00
diff-updater.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
document-blocked.js Patch Unicode country flags with image-based flags 2023-05-20 21:35:52 -04:00
dom.js Add support for sublists in "Filter lists" pane 2023-05-06 12:50:25 -04:00
dyna-rules.js Code maintenance: replace uDom.js with dom.js 2022-11-12 09:51:22 -05:00
dynamic-net-filtering.js Make object equivalent of frame for dynamic filtering purpose 2023-03-31 09:37:53 -04:00
epicker-ui.js Minor refactoring plus other minor changes 2023-10-22 08:53:01 -04:00
fa-icons.js Fix cloud storage widget not showing (regression) 2023-04-10 10:03:51 -04:00
filtering-context.js Fix potential exceptions in new response body filtering code 2023-11-04 09:43:38 -04:00
filtering-engines.js Export the rule-based filtering engines to the nodejs package 2021-08-03 12:19:25 -04:00
hnswitches.js Convert punycode.js into an ES module (#3845) 2021-08-22 12:03:59 -04:00
hntrie.js Properly reset needle length in unserialized buffer 2023-11-06 19:22:47 -05:00
html-filtering.js Avoid creating a session if there are no jobs 2023-11-05 14:54:59 -05:00
httpheader-filtering.js Fix broken http header filtering 2023-03-21 10:22:32 -04:00
i18n.js Attempted to set flag codes for Chromium Windows users (#3906) 2023-11-06 16:46:56 -05:00
logger-ui-inspector.js Wrap usage of setTimeout in helper for background + auxiliary pages 2023-04-09 13:38:16 -04:00
logger-ui.js Enable "not permissions" filtering expression in logger 2023-10-22 17:50:45 -04:00
logger.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
lz4.js Simplify lz4 instance management 2023-04-25 22:14:15 -04:00
messaging.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
pagestore.js Add new static network filter option: urltransform 2023-10-16 09:47:29 -04:00
popup-fenix.js Use non-normalized URL for reload/report operations 2023-08-10 12:10:19 -04:00
redirect-engine.js Add support to redirect to noop.json 2023-11-16 09:54:21 -05:00
redirect-resources.js Add abp-resource:blank-mp4 alias for increased ABP compatibility 2023-11-18 10:04:52 -05:00
reverselookup-worker.js Add compatibility with AdGuard's #%#//scriptlet(...) syntax 2023-06-28 19:35:22 -04:00
reverselookup.js Minor refactoring plus other minor changes 2023-10-22 08:53:01 -04:00
scriptlet-filtering.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
settings.js Support restoring from application/json file 2023-10-10 10:16:55 -04:00
start.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
static-dnr-filtering.js [mv3] Ensure filters incompatible with DNR are properly reported 2023-11-18 10:46:25 -05:00
static-ext-filtering-db.js Add compatibility with AdGuard's #%#//scriptlet(...) syntax 2023-06-28 19:35:22 -04:00
static-ext-filtering.js Add compatibility with AdGuard's #%#//scriptlet(...) syntax 2023-06-28 19:35:22 -04:00
static-filtering-io.js Add support for negated hostnames in HTML filters 2023-03-28 08:35:09 -04:00
static-filtering-parser.js [mv3] Ensure filters incompatible with DNR are properly reported 2023-11-18 10:46:25 -05:00
static-net-filtering.js [mv3] Ensure filters incompatible with DNR are properly reported 2023-11-18 10:46:25 -05:00
storage.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
support.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
tab.js Wrap usage of setTimeout in helper for background + auxiliary pages 2023-04-09 13:38:16 -04:00
tasks.js Refactoring work in static network filtering engine 2021-12-04 11:16:44 -05:00
text-encode.js Further modularize uBO's codebase 2021-07-28 19:48:38 -04:00
text-utils.js Move orphanizeString() into text-utils module 2021-07-31 08:38:33 -04:00
theme.js Fix race condition when looking up current auto/light/dark theme 2023-03-12 11:20:54 -04:00
traffic.js Mind exception filters for replace= option 2023-11-10 10:45:24 -05:00
ublock.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
uri-utils.js Simplify often-executed regex 2021-12-10 07:47:21 -05:00
url-net-filtering.js Fix improperly detecting ruleset changes re. dynamic URL filtering 2022-10-19 12:12:09 -04:00
utils.js Refactoring: Replace DOM events with broadcast channels 2023-12-01 14:35:28 -05:00
whitelist.js Fix wrong syntax color highlight in "Trusted sites" pane 2023-03-02 20:50:32 -05:00