Raymond Hill
2b63dcdcb6
[mv3] Force register content scripts when none are found
...
Possibly will fix cases of no content scripts found in Safari.
Related issue:
https://github.com/uBlockOrigin/uAssets/issues/30158#issuecomment-3869144473
2026-02-09 09:25:57 -05:00
Raymond Hill
359cb070eb
[mv3] Fix minor regression in reported troubleshooting info
2026-01-29 08:38:53 -05:00
Raymond Hill
9f0c55fccb
[mv3] Minor change for when side-loaded
2026-01-23 12:31:06 -05:00
Raymond Hill
c6de97ceb7
[mv3] Add to troubleshooting info
2026-01-21 15:40:01 -05:00
Raymond Hill
b74b1a789c
[mv3] Remove obsolete comment
2026-01-17 13:28:25 -05:00
Raymond Hill
222f4fbbc1
[mv3] Fix equality test between two rulesets
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/591
2026-01-17 13:19:51 -05:00
Raymond Hill
161cc473a2
[mv3] Fine tune busy state of popup panel
2026-01-11 14:00:58 -05:00
Raymond Hill
dfeb4e79ed
[mv3] Show spinner when filtering mode change takes long
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/discussions/583
If the filtering mode change takes more than a second, a spinner
covering the whole popup panel will appear until the browser
API calls complete.
2026-01-11 13:26:16 -05:00
Raymond Hill
5e9b662024
[mv3] Removing multiple keys is supported
2026-01-10 12:49:17 -05:00
Raymond Hill
f6048a0804
[mv3] Fix class collision
2026-01-03 09:21:10 -05:00
Raymond Hill
9b45333e0d
[mv3] Fix "Proceed" button not working in strict-block page
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/576
2025-12-30 15:36:42 -05:00
Raymond Hill
41dd3bf5f2
[mv3] Support removing multiple keys
2025-12-28 09:21:41 -05:00
Raymond Hill
0101a47d25
[mv3] Try to address Safari's webextensions API issues
...
1) Reset "seen realms" when modifying enabled rulesets. The "seen
realms" code path is an attempt at mitigating an issue whereas
the DNR rules would not be enforced under certain circumstances.
2) Re-write the scripting manager to always wholly
unregister/register all content scripts instead of only the
differences before/after following a change affecting content
scripts.
2025-12-27 14:12:31 -05:00
Raymond Hill
f7f96140d9
[mv3] Add page-wide spinner when restoring/resetting settings
2025-12-27 10:12:34 -05:00
Raymond Hill
df0d21d92e
[mv3] Avoid instantiating regexes by using simple needle first
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/223
2025-12-27 09:45:25 -05:00
Raymond Hill
6063d4f0ad
[mv3] Add ability to reset to default settings
2025-12-25 16:32:38 -05:00
Raymond Hill
377cf9d86b
[mv3] Add support for regex-based extended filters
...
Related issues:
- https://github.com/uBlockOrigin/uBOL-home/issues/223
- https://github.com/uBlockOrigin/uAssets/issues/31261
2025-12-25 12:34:21 -05:00
Raymond Hill
c975fbb9d7
[mv3] Mind id/class attribute changes in generic cosmetic filterer
...
Related issue:
https://github.com/uBlockOrigin/uBlock-issues/issues/3904
2025-12-23 10:51:15 -05:00
Raymond Hill
4e0f47f11a
[mv3] Mind anscestor hostnames when evaluating host permissions
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/569
2025-12-21 11:16:25 -05:00
Raymond Hill
a23561d79e
[mv3] Bypass cosmetic filtering when top context is set to no-filtering
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/20
Specific cosmetic filtering will be bypassed when hostname of top context
matches an entry in the no-filtering set.
This doesn't completely solve the issue:
- The browser platform must support `document.location.ancestorOrigins`
- This solution can't be applied to scriptlets
2025-12-15 16:15:13 -05:00
Raymond Hill
3855c5a648
[mv3] Fix garbage collection-related code
2025-12-14 10:26:50 -05:00
Raymond Hill
621ad89c64
[mv3] Better validate hostnames in "Filtering mode details" editor
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/564
2025-12-12 09:48:40 -05:00
Raymond Hill
0fb845d1ac
[mv3] Load specific cosmetic filtering data on-demand only
...
The cosmetic filtering data embedded in the content scripts has been
extracted in corresponding JSON files. When a list is enabled, the
corresponding cosmetic filtering data from the JSON files, if any, is
persisted into the extension's local storage.
The cosmetic filtering-related content scripts will load the data
from these JSON files on-demand only and matching cosmetic filters
will be extracted, then the result is cached in the session storage,
ensuring there is no longer a need to perform lookup for the rest
of the browser session.
As a result this further reduces the time to First Contentful Paint.
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/557
2025-12-09 15:32:02 -05:00
Raymond Hill
0aa0d81caf
[mv3] Re-work specific cosmetic filtering-related content scripts
...
To minimize delay to First Contentful Paint. The idea is to avoid
complex data structures such as Map in order to speed up first content
script execution. Use stringified arrays where practical and
instanciate those arrays from their stringified representation only
when there are actual cosmetic filters to apply.
Related commit:
https://github.com/gorhill/uBlock/commit/6039ef2b6d
2025-12-05 08:54:34 -05:00
Raymond Hill
6039ef2b6d
[mv3] Generate at most two scriptlet-related files per rulesets
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/557
2025-12-04 12:57:25 -05:00
Raymond Hill
cd814ee818
[mv3] Improve automatically changing filtering mode
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/554
2025-11-29 09:41:46 -05:00
Raymond Hill
474723d9ca
[mv3] Improve management of regex-based rules
...
- Make place for more dynamic regex-based rules when there is a
risk session regex-based rules could interfere
- Do not prune `allow` strict-block rules as they do not contribute
toward the overall regex-based rule count
Possibly related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/556
2025-11-28 13:29:59 -05:00
Raymond Hill
d9055b0307
[mv3] Minor code review related to permission changes
...
Related commit:
801b4679e9
2025-11-14 10:01:09 -05:00
Raymond Hill
d8fb800f30
[mv3][firefox] Fix instanceof quirk; fine tune picker CSS
...
Related feedback:
https://github.com/uBlockOrigin/uBOL-home/discussions/548
2025-11-14 09:29:28 -05:00
Raymond Hill
801b4679e9
[mv3] Auto reload current tab when permissions granted thru browser
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/526
2025-11-12 12:16:56 -05:00
Raymond Hill
d6fc057d3b
[mv3] Minor code review
2025-10-23 08:46:33 -04:00
Raymond Hill
511255f7c7
[mv3] Automatically select optimal for newly allowed hosts
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/456
2025-10-18 10:03:10 -04:00
Raymond Hill
22d2ecc472
[mv3][safari] Workaround for user styles issue with bfcache
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/518
2025-10-11 14:46:35 -04:00
Raymond Hill
1c7b7e435e
[mv3] Improve troubleshooting information
2025-10-08 13:50:26 -04:00
Raymond Hill
be14670b76
[mv3] Decrease granularity of hashes of generic cosmetic selectors
...
This reduces the size of content scripts with no downside.
2025-10-04 13:32:16 -04:00
Raymond Hill
41a65315f9
[mv3] Minor code change
2025-10-03 14:45:46 -04:00
Raymond Hill
6623889920
[mv3] Improve details of troublshooting info
...
Also, avoid loading troubleshooting module in service worker as it's
of use only as a user interface component.
2025-09-29 13:07:59 -04:00
Raymond Hill
e91c47846b
[mv3] Fix issues with restore from file
2025-09-28 15:04:26 -04:00
Raymond Hill
be1502feb3
[mv3] Avoid mouseenter/mouseleave on mobile devices
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/478
2025-09-28 11:24:23 -04:00
Raymond Hill
80cf4d9286
[mv3] Use manifest's path value to access static rulesets
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/503
2025-09-28 11:08:48 -04:00
Raymond Hill
2581004e8f
[mv3] Add ability to backup/restore settings
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/482
2025-09-27 12:53:58 -04:00
Raymond Hill
91d36749bb
[mv3] Export using human-readable hostnames
2025-09-24 11:01:50 -04:00
Raymond Hill
8af80be5b2
[mv3] Add dashboard pane to manage custom filters
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/418
2025-09-24 10:42:18 -04:00
Raymond Hill
511a59584d
[mv3][safari] Internally disable strict-blocking in Safari
...
Related discussion:
https://github.com/uBlockOrigin/uAssets/issues/30118#issuecomment-3315925462
2025-09-21 09:43:21 -04:00
Raymond Hill
4fbcabbc66
[mv3] Move redirect/removeParams/modifyHeaders rules to static rulesets
...
Since permissions are now managed by the browsers, the browser will take
care whether to enforce those "usafe" rules according to the permissions
in effect on a given site.
2025-09-02 12:29:41 -04:00
Raymond Hill
d1a29d9899
[mv3] Ensure ui is visible even after failure
2025-08-29 11:19:24 -04:00
Raymond Hill
69fa0c2e09
[mv3] Fix regression in managing redirect rules
...
Regression cause by:
fad0af591f
2025-08-25 11:55:36 -04:00
Raymond Hill
052c36aada
[mv3] Fix placeholder references for regexSubstitution
2025-08-22 12:35:13 -04:00
Raymond Hill
cb62e38f50
[mv3] Improve built-in parser to convert filters to DNR rules
...
Ultimately and eventually, the built-in parser will be used to
convert filters to DNR rules at extension building time.
2025-08-22 08:14:52 -04:00
Raymond Hill
bc4e829427
[mv3] Support custom filters using CSS pseudo-elements
...
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/448
2025-08-20 10:26:45 -04:00