Commit graph

2442 commits

Author SHA1 Message Date
Raymond Hill
5e9b662024
[mv3] Removing multiple keys is supported 2026-01-10 12:49:17 -05:00
Raymond Hill
74b838cc03
Import translation work from https://crowdin.com/project/ublock 2026-01-04 11:37:19 -05:00
Raymond Hill
f6048a0804
[mv3] Fix class collision 2026-01-03 09:21:10 -05:00
Raymond Hill
e55811bbf9
[mv3] Need to setup scriptlet details only once 2026-01-01 13:15:44 -05:00
Raymond Hill
e0fcb8485a
Import translation work from https://github.com/gorhill/uBlock 2025-12-30 15:44:20 -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
c8c29faab4
Import translation work from https://crowdin.com/project/ublock 2025-12-29 10:01:40 -05:00
Raymond Hill
675ae7b5af
[mv3] Add easylist ai suggestions to stock lists
Related PR:
https://github.com/gorhill/uBlock/pull/3947
2025-12-29 09:46:08 -05:00
Raymond Hill
41dd3bf5f2
[mv3] Support removing multiple keys 2025-12-28 09:21:41 -05:00
Raymond Hill
bda2a50ec8
[mv3] Increase local storage limit beyond 5 MB
Reference:
https://developer.apple.com/documentation/safariservices/assessing-your-safari-web-extension-s-browser-compatibility
2025-12-28 09:09:46 -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
c4225e9179
Import translation work from https://crowdin.com/project/ublock 2025-12-27 10:14:36 -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
ede231b9c2
Import translation work from https://crowdin.com/project/ublock 2025-12-26 10:51:37 -05:00
Raymond Hill
0bd6d09736
Fix source strings as per feedback 2025-12-26 10:50:26 -05:00
Raymond Hill
e7f91cdd95
Import translation work from https://crowdin.com/project/ublock 2025-12-26 10:47:50 -05:00
Raymond Hill
9cf8a0fe7c
Import translation work from https://crowdin.com/project/ublock 2025-12-25 16:36:12 -05:00
Raymond Hill
6063d4f0ad
[mv3] Add ability to reset to default settings 2025-12-25 16:32:38 -05:00
Raymond Hill
37d995eeac
Import translation work from https://crowdin.com/project/ublock 2025-12-25 16:27:35 -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
81448c3ca7
Import translation work from https://crowdin.com/project/ublock 2025-12-23 11:06:19 -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
00b79d9023
Use new locally-maintained "URL Tracking Protection" list 2025-12-22 14:34:43 -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
baee6dcaca
Import translation work from https://crowdin.com/project/ublock 2025-12-14 16:05:26 -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
e036156f3a
[mv3] Sort scriptlet functions
To minimize diff between releases.
2025-12-09 12:58:10 -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
d5793b83f2
Set Firefox minimum version to 115
Related discussion:
https://github.com/uBlockOrigin/uBlock-issues/discussions/3878#discussioncomment-15147836
2025-12-04 06:51:17 -05:00
Raymond Hill
967b21415b
Import translation work from https://crowdin.com/project/ublock 2025-11-30 10:42:37 -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
015ddcde29
[firefox] Change minimum required version to 128
Related discussion:
https://github.com/uBlockOrigin/uBlock-issues/discussions/3878
2025-11-28 12:53:45 -05:00
Raymond Hill
85db7c38c1
[mv3][edge] Reject responseheaders rules only for non-regex rules
Related commit:
a5091488e5
2025-11-23 11:16:16 -05:00
Raymond Hill
eae618e7e8
[mv3] Force ltr for troubleshooting info 2025-11-21 10:03:24 -05:00
Raymond Hill
fe958625df
[firefox] Signal that no data collection is required
Related information:
https://extensionworkshop.com/documentation/develop/firefox-builtin-data-consent/
2025-11-17 12:40:04 -05:00
Raymond Hill
95ebd70264
Import translation work from https://crowdin.com/project/ublock 2025-11-16 13:10:53 -05:00
Raymond Hill
d1987f88ee
[mv3] Shorten output in build script 2025-11-14 12:47:28 -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
474273ad92
Import translation work from https://crowdin.com/project/ublock 2025-11-10 10:28:12 -05:00
Raymond Hill
16c0f69853
[mv3][safari] Rwrite certain main_frame + regexFilter rules
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/539
2025-11-06 12:23:36 -05:00
Raymond Hill
9849b5f0b1
[mv3] Remove "Custom filters" pane when picker is forbidden
Related issue:
https://github.com/uBlockOrigin/uBOL-home/issues/536
2025-11-03 09:19:22 -05:00
Raymond Hill
a5091488e5
[mv3][edge] Filter out rules with responseHeaders condition
MS store validator rejects those rules in static rulesets.
2025-11-02 12:55:44 -05:00