1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-11-18 16:32:39 +01:00
Commit Graph

8214 Commits

Author SHA1 Message Date
Raymond Hill
f6a60f0e87
New revision for dev build 2019-11-02 19:09:17 -04:00
Raymond Hill
571db71318
Fine tune cosmetic filtering badge-related code
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/756

As per various feedbacks:

Added an advanced setting to keep the original behavior,
which can be potentially costly CPU-wise on some sites:

    popupCosmeticFilterBadgeSlow

Default to `false`. Set to `true` to restore original
method of surveying the number of elements hidden as
a result of applying cosmetic filtering.

As suggested by <https://github.com/gwarser>, skip
descendant of nodes which have been found to be a
match in order to potentially increase the number
of nodes which can be surveyed in the alloted time.
2019-11-02 19:03:07 -04:00
Raymond Hill
c84c0979ce
Make Firefox dev build auto-update 2019-11-02 11:48:56 -04:00
Raymond Hill
7e004c8672
New revision for devbuild 2019-11-02 11:46:28 -04:00
Raymond Hill
4afc0764d2
Fix logic mistake in last commit
Related commit:
- 6d935c8925

Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/756
2019-11-02 11:45:18 -04:00
Raymond Hill
72837c9bda
Make Firefox dev build auto-update 2019-11-02 09:32:43 -04:00
Raymond Hill
638246126a
New revision for dev build 2019-11-02 09:19:27 -04:00
Raymond Hill
6d935c8925
Bail out when counting hidden elements is too expensive
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/756

When trying the number of hidden elements as a result of
cosmetic filtering for popup panel badge purpose, the
code will bail out if this takes too long, and in such
case the badge will be set to `?`, meaning the number
of hidden elements is undetermined.
2019-11-02 09:16:23 -04:00
Raymond Hill
d30c0192b3
Make Firefox dev build auto-update 2019-11-02 08:45:22 -04:00
Raymond Hill
4797bd8273
New revision for dev build 2019-11-02 08:32:59 -04:00
Raymond Hill
8acc39581c
Fine tune script tags survey scriptlet
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/756

The code used to count expensive-to-survey particular
inline javascript occurrences will be executed if and
only if no other script tags have been found in the
DOM. This is acceptable since the badge count is to be
deemed approximate (as per documentation).
2019-11-01 14:28:15 -04:00
Raymond Hill
83834f12a1
Make Firefox dev build auto-update 2019-11-01 14:07:03 -04:00
Raymond Hill
f14e5ea15d
New revision for dev build 2019-11-01 14:04:36 -04:00
Raymond Hill
987c9c1a21
Fix on-demand no-cosmetic-filtering badge when generichide in use
Related feedback:
- c090d2fde4 (commitcomment-35767596)

Mind that there might not be selectors to match as a
result of `generichide` or `no-cosmetic-filtering`.
2019-11-01 14:01:30 -04:00
Raymond Hill
2cd0d69c28
Make Firefox dev build auto-update 2019-11-01 12:48:49 -04:00
Raymond Hill
35d6785cbd
New revision for dev build 2019-11-01 12:36:03 -04:00
Raymond Hill
c090d2fde4
Count hidden elements on-demand only in popup panel
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/756

The badge value for the no-cosmetic-filtering
switch will be evaluated on-demand only, when
the user hover over the switch with the mouse
cursor.

For touch screen displays, a tap on the switch
will cause the badge to be rendered if not
already done, otherwise this will toggle the
switch as usual.
2019-11-01 12:32:34 -04:00
Raymond Hill
7c0294bd5f
Fix spurious leading/trailing wildcards with valid token
Related feedback:
- https://www.reddit.com/r/uBlockOrigin/comments/dpcvfx/

Regression from:
- 7971b22385

Leading/trailing wildcards are useless when a valid
token can be found, and in such case they need to
be removed so as to ensure the proper filter class
is used.
2019-10-31 13:46:06 -04:00
Raymond Hill
eb23c3581a
Make Firefox dev build auto-update 2019-10-31 12:57:23 -04:00
Raymond Hill
5dd57030a1
New revision for dev build 2019-10-31 12:53:33 -04:00
Raymond Hill
d21b9388f3
Fix broken csp= filters when logger is opened
Regression from:
- 7971b22385

Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/761
2019-10-31 12:43:33 -04:00
Raymond Hill
7fdbf75c6c
Make Firefox dev build auto-update 2019-10-31 11:20:10 -04:00
Raymond Hill
dbb8e15ff0
New revision for dev build 2019-10-31 11:17:02 -04:00
Raymond Hill
11c56ab540
Minor fine-tuning of URL tokenizer 2019-10-31 11:15:00 -04:00
Raymond Hill
d8975ee580
Improve efficiency of per-site switches badge code
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/756

This is the code used to find out the count values
displayed as badge on the cosmetic filtering and
scripting per-site switches in the popup panel.

The issue is that document.querySelector*() -- used to
find out the number of hidden elements -- is unduly
expensive on large DOM.

The changes in this commit have focused on avoiding the
use of document.querySelector*() as much as possible.

Also, the results are cached for reuse unless DOM
mutations are detected.
2019-10-31 11:07:11 -04:00
Raymond Hill
11da758d47
Make Firefox dev build auto-update 2019-10-29 11:56:31 -04:00
Raymond Hill
d6a78d8476
New revision for dev build 2019-10-29 11:49:49 -04:00
Raymond Hill
a69b301d81
Fine-tune new bidi-trie code
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/761
2019-10-29 10:26:34 -04:00
Raymond Hill
49fb98dcb2
Make Firefox dev build auto-update 2019-10-28 14:07:12 -04:00
Raymond Hill
6075c929f9
New revision for dev build 2019-10-28 14:02:02 -04:00
Raymond Hill
5cc797fb47
Add WASM implementation for BidiTrieContainer.matches()
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/761
2019-10-28 13:57:35 -04:00
Raymond Hill
d7b2d31180
Harden compiled/selfie format change detection at launch
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/759

This commit adds code to rely less on the state of the
cache storage to decide whether filter lists should be
re-compiled or whether the selfie is currently valid
at launch time when a change in compiled/selfie format
is detected.
2019-10-27 11:49:05 -04:00
Raymond Hill
b79445320d
Force-unsuspend when starting webRequest listener
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/759

If for some reasons the launch code throws, uBO could
find itself in permanent suspend mode, thus preventing
web pages from loading in Firefox.

Though uBO should not have exceptions thrown during
it's initialization code, this commit will ensure
uBO complete its initialization process should it
ever happen for whatever reason.
2019-10-27 11:41:08 -04:00
Raymond Hill
36fb671460
Make Firefox dev build auto-update 2019-10-27 08:43:52 -04:00
Raymond Hill
2fafe8081c
New revision for dev build 2019-10-27 08:40:49 -04:00
Raymond Hill
40de7d6489
Fix WASM memory allocation in bidi-trie
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/764
2019-10-27 08:36:17 -04:00
Raymond Hill
92235adeec
Make Firefox dev build auto-update 2019-10-26 17:42:58 -04:00
Raymond Hill
cdb6697e4c
new revision for dev build 2019-10-26 17:40:27 -04:00
Raymond Hill
c71624d1da
Fix access to detached buffer when using WASM in bidi-trie
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/764

WebAssembly.Memory.grow() preserves the buffer content when
we grow it, no need to manually copy it. Doing so was
causing an access to a no longer valid ArrayBuffer.
2019-10-26 17:37:47 -04:00
Raymond Hill
0373410635
Fix comments in WASM code 2019-10-26 15:34:40 -04:00
Raymond Hill
fb457a3dff
Make Firefox dev build auto-update 2019-10-26 15:31:34 -04:00
Raymond Hill
1f1933981d
New revision for dev build 2019-10-26 15:28:48 -04:00
Raymond Hill
6c3296958c
Fix last commit due to bad last second change
Related feedback:
- b0cbc47d9a (commitcomment-35677572)

It seems I completely forgot to test the last
"trivial" change to the WASM code.
2019-10-26 15:25:47 -04:00
Raymond Hill
da8f9fa37c
Make Firefox dev build auto-update 2019-10-26 13:26:03 -04:00
Raymond Hill
1df432c2e5
Import translation work from https://crowdin.com/project/ublock 2019-10-26 13:23:31 -04:00
Raymond Hill
b0cbc47d9a
Add WASM versions for some bidi-trie methods
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/761

Changes related to above issue made it possible to
create WASM versions of methods used in the bidi-trie.
In this commit, WASM versions for startsWith(), indexOf()
and lastIndexOf() have been implemented.
2019-10-26 13:13:53 -04:00
Raymond Hill
dd2a9faa4c
Use request as its own context when none available
Related feedback:
- https://www.reddit.com/r/uBlockOrigin/comments/dn9zso/

When a network request is tabless and contextless, i.e.
`tabId === -1` and `frameId === -1`, use the URL of
the network request as the context.
2019-10-26 10:18:32 -04:00
Raymond Hill
30393fdcf1
Exclude data type (i.e. csp=) from bidi-trie
We need a `matchAll()` method on the bidi-trie before
we can store filters of type `data` in it.

Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/761

Related commit:
- 7971b22385
2019-10-22 18:14:49 -04:00
Raymond Hill
2681209828
New revision for dev build 2019-10-21 11:59:51 -04:00
Raymond Hill
c137630833
Merge branch 'snfe-refactor' 2019-10-21 11:59:02 -04:00