Commit graph

9414 commits

Author SHA1 Message Date
Raymond Hill
34738e5291
Make Firefox dev build auto-update 2021-11-04 11:57:08 -04:00
Raymond Hill
04cf37accb
New revision for dev build 2021-11-04 11:50:39 -04:00
Raymond Hill
b63415a3db
Fix breaking navigation through links [regression]
Regression from:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1797
2021-11-04 11:48:07 -04:00
Raymond Hill
c25cfd2116
Make Firefox dev build auto-update 2021-11-04 09:42:14 -04:00
Raymond Hill
27c1874425
Import translation work from https://crowdin.com/project/ublock 2021-11-04 09:34:44 -04:00
Raymond Hill
97a847478a
New revision for dev build 2021-11-04 09:31:27 -04:00
Raymond Hill
3f47172473
Update Twitch scriptlet
Related discussion:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1789#issuecomment-959831926

Related commit:
- 7233b5fd22
2021-11-04 09:24:31 -04:00
Raymond Hill
8b8b7da8d9
Forbid subscribing to filter lists with invalid URLs
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1797
2021-11-04 08:52:06 -04:00
Raymond Hill
25823f0819
Make Firefox dev build auto-update 2021-11-01 16:01:49 -04:00
Raymond Hill
4da8c2244e
New revision for dev build 2021-11-01 15:56:41 -04:00
Raymond Hill
2ab39aee23
Fix not highlighting cases of invalid syntax
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1791

The following case of invalid syntax was not reported as
invalid by the syntax highlighter:

    ... example.com image ...

With dynamic filtering, there can't be a specific
hostname when a specific type is used, or a
specific type when a specific hostname is used, one
or the other must be `*`.
2021-10-31 13:18:31 -04:00
Raymond Hill
fa3c4623ea
Make Firefox dev build auto-update 2021-10-31 13:17:55 -04:00
Raymond Hill
d5dc997999
New revision for dev build 2021-10-30 11:58:38 -04:00
Raymond Hill
0d3028f71f
Import translation work from https://crowdin.com/project/ublock 2021-10-30 11:57:55 -04:00
Raymond Hill
8f2e1b4d84
Avoid testing sheet-selectability when filter is hinted as procedural
uBO support's `#?#`, which in AdGuard and ABP means that a
cosmetic filter is procedural.

However, uBO interprets this syntax as "probably procedural"
and will use the filter in a declarative way if the filter
is found to be stylesheet-compatible.

In reality though, the likelihood that a "probably procedural"
filter is sheet-selectable is very low, so treating the filter
as procedural a priori help saves pointless tests against
sheet-selectability when using lists primarily designed for
AdGuard or ABP.
2021-10-29 08:33:55 -04:00
Raymond Hill
24fe6f2cfc
Make Firefox dev build auto-update 2021-10-28 11:06:32 -04:00
Raymond Hill
2713143fc6
New revision for dev build 2021-10-28 10:57:45 -04:00
Raymond Hill
3891b4d050
query-selectable selectors are not necessarily sheet-selectable
Related commits:
- 4f923384de
- 97a33c9572
- ef07171f5a

For instance, with "Experimental Web Platform features" enabled, the
following filter becomes natively query-selectable:

    .fail:has(+ a > b)

Meaning uBO won't need to emulate the `:has()` operator, it will
be executed natively using `querySelectorAll()`.

This commit fixes the erroneous assumption that a query-selectable
is also sheet-selectable.
2021-10-28 10:36:26 -04:00
Raymond Hill
b4adc3a44e
Make Firefox dev build auto-update 2021-10-27 18:22:04 -04:00
Raymond Hill
44783f548d
New revision for dev build 2021-10-27 18:15:47 -04:00
Raymond Hill
ef07171f5a
Refactor how cosmetic filters with pseudo-elements are parsed
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1247#issuecomment-953284365

Distinguish between selectors which can be querySelector-ed
and/or used ni a stylesheet.
2021-10-27 18:09:02 -04:00
Raymond Hill
97a33c9572
Fix test for stylesheet presence
Related commit:
- 4f923384de
2021-10-27 15:13:13 -04:00
Raymond Hill
6722616e28
Make Firefox dev build auto-update 2021-10-27 13:36:37 -04:00
Raymond Hill
4f03b6c4c2
Import translation work from https://crowdin.com/project/ublock 2021-10-27 13:27:45 -04:00
Raymond Hill
87cacd2b0a
New revision for dev build 2021-10-27 13:20:28 -04:00
Raymond Hill
4f923384de
Use an actual stylesheet to validate cosmetic filters
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1751

Related feedback:
- https://www.reddit.com/r/uBlockOrigin/comments/qgd6fe/

It turns out Chromium has started to implement the `:has()`
operator, which becomes recognized when the browser flag
"Experimental Web Platform features" is enabled. However the
hic is that `:has()` is not supported as a declarative CSS
style rule and is only supported through `querySelector()`
et al.

The fix is to no longer detect plain CSS selectors through
`querySelector` et al. but rather use an actual stylesheet
to validate that a cosmetic filter can be injected into a
stylesheet in a declarative way.

Additionally, I added support to enforce ABP's semantic
regarding cosmetic filter with the `#?#` anchor: when using
such anchor, uBO will _first_ try to compile the filter as
a procedural one rather than a declarative one.

Related discussion:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1011#issuecomment-884824166
2021-10-27 12:56:37 -04:00
Raymond Hill
9f36314084
Make Firefox dev build auto-update 2021-10-26 09:17:10 -04:00
Raymond Hill
986c25fe24
Add Somali language 2021-10-26 09:10:37 -04:00
Raymond Hill
90ed078178
Import translation work from https://crowdin.com/project/ublock 2021-10-26 09:09:36 -04:00
Raymond Hill
d7025ff448
New revision for dev build 2021-10-26 09:02:52 -04:00
Raymond Hill
b1a338681b
Shield against possible case of invalid attribute name
Not sure this can really happen, but if ever Math.random() would
return `0.9999999999999999`, the attribute name would start with
`{`, i.e. an invalid attribute name.
2021-10-26 08:55:05 -04:00
Raymond Hill
5bea149e8f
Fix spurious errors in uBO's dev console
Those spurious errors occurred when launching the browser
with the dashboard already opened from the previous
browsing session.
2021-10-26 08:54:04 -04:00
Raymond Hill
c136c7b454
Auto-escape commas in removeparam's regexes
Related feedback:
- https://github.com/uBlockOrigin/uBlock-issues/issues/760#issuecomment-951146371

This is a quick fix, some refactoring necessary for a more
comprehensive fix to all such issues.
2021-10-26 08:51:55 -04:00
Raymond Hill
f5001c03aa
Update submodules 2021-10-26 08:11:09 -04:00
Raymond Hill
f94781bafc
Update submodules 2021-10-26 07:29:35 -04:00
Raymond Hill
1b4d17ca2f
Update submodules 2021-10-26 07:20:49 -04:00
Raymond Hill
c8498b911d
Update submodules 2021-10-26 07:06:52 -04:00
Raymond Hill
32bd74f180
Make Firefox dev build auto-update 2021-10-22 15:11:55 -04:00
Raymond Hill
ff58f4d7e0
New revision for dev build 2021-10-22 15:01:37 -04:00
Raymond Hill
d5cfd673dc
Condense list details in Support pane
Related commit:
- a3a43c7cb4
2021-10-22 14:59:41 -04:00
Raymond Hill
318469b005
Remove unused function 2021-10-22 08:34:04 -04:00
Raymond Hill
90fd3b6973
Import translation work from https://crowdin.com/project/ublock 2021-10-22 08:32:59 -04:00
Raymond Hill
dfbbece807
Make Firefox dev build auto-update 2021-10-18 11:22:03 -04:00
Raymond Hill
6a64beda37
New revision for dev build 2021-10-18 11:13:38 -04:00
Raymond Hill
d9eb0b1002
Import translation work from https://crowdin.com/project/ublock 2021-10-18 11:12:16 -04:00
Raymond Hill
65985343fc
Create new page store if not found in tab event
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/757

Sometimes a tab event may fire for a tab which is not
yet known to uBO. In such case, bind the tab internally
so that it can be processed properly in the future.
2021-10-18 09:43:41 -04:00
Raymond Hill
c2269d7202
Minor CSS fix 2021-10-18 09:11:34 -04:00
Raymond Hill
18ae79cdf2
Remove unused code path as per current minimum browser version 2021-10-17 13:50:43 -04:00
Raymond Hill
a72aa58c92
Adjust font-size for code tags 2021-10-17 13:47:41 -04:00
Raymond Hill
d1921131b6
Make Firefox dev build auto-update 2021-10-17 13:26:52 -04:00