Commit graph

108 commits

Author SHA1 Message Date
Raymond Hill
9f825c3059
Do not flush blocked-elements cache at webNavigation time
While testing for the new `elemhide` option using ABP's
test page[1], I found out that the placeholder of the
blocked image on that page was not properly collapsed
by uBO.

The reason was because the page is very simple and
flushing the blocked-elements cache at
webNavigation.onCommitted time was causing the loss
of information collected between
webRequest.onBeforeRequest and
webNavigation.onCommitted, preventing uBO from
properly collapsing the placeholders.

The blocked-elements cache is now flushed
ONLY at webRequest.onBeforeRequest time.

[1] https://testpages.adblockplus.org/en/exceptions/elemhide
2019-09-21 16:42:15 -04:00
Raymond Hill
3224d9b5cc
Work toward modernizing code base: promisification
Swathes of code have been converted to use
Promises/async/await.

Related commits:
- 26235d80d0
- 0051f3b5c7
- eec53c0154
- 915687fddb
- 55cc0c6997
- e27328f931
2019-09-17 15:15:01 -04:00
Raymond Hill
0051f3b5c7
Work toward modernizing code base: promisification
Swathes of code have been converted to use
Promises/async/await. More left to do.

Related commits:
- eec53c0154
- 915687fddb
- 55cc0c6997
- e27328f931
2019-09-16 16:17:48 -04:00
Raymond Hill
ae56c4dfe8
Fix whitelist status evaluation of tabless network requests
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/651

The `behnind-the-scene` context was wrongly used to
evaluate the whitelist status of the context of tabless
network requests. The document origin must be used
instead when it's available.

Additionally, much code has been revisited for better
ES6 syntax compliance.
2019-07-05 17:44:08 -04:00
Raymond Hill
2eb9b726a5
Fix generichide not being evaluated for local context
Related issue:
- https://github.com/uBlockOrigin/uAssets/issues/5704
2019-06-03 06:37:39 -04:00
Raymond Hill
915c1f1f3c
Report resources blocked by csp= option in logger
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/552
2019-05-11 10:40:34 -04:00
Raymond Hill
fff2bb6290
Assume media elements with no Content-Length header to be of size 0
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/543
2019-04-24 08:30:54 -04:00
Raymond Hill
ed5d63df69
Grand refactoring of the logger
Performance-related work: the logger data has been decoupled
from the DOM -- inspired from CodeMirror's way of efficiently
handling large amout of text data.

This decoupling now makes the logger highly efficient CPU- and
memory-wise, and open the way to more possibilities.

Ability to configure some aspect of the logger behavior and
visuals:
- The hard-coded limit of 5000 entries has been
  removed and is now replaced with a variety of
  user-configurable settings to enforce the discarding of
  logger entries.
- Some columns in the logger output can now be hidden.

The filter list look-up feature has been merged into the
existing overlay dialog used to create URL rules or static
filters, as an entry in a new "Details" pane.

Other issues addressed during refactoring:
- https://github.com/uBlockOrigin/uBlock-issues/issues/280
- https://github.com/gorhill/uBlock/issues/1999

The minimum version supported on Firefox has been bumped
up to 55.0.
2019-01-12 16:36:20 -05:00
Raymond Hill
e9d76b3575
Report inline script tags in logger if present in document
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/343
2018-12-21 14:16:17 -05:00
Raymond Hill
5dca5285e2
Fix regression introduced in 9b27a98f90 (diff-f7413cbfa6561a980810c682fa4b1a12R638) 2018-12-18 14:00:23 -05:00
Raymond Hill
2f1d319072
code review: don't remember tabless network requests in behind-the-scene scope 2018-12-14 08:47:29 -05:00
Raymond Hill
9b27a98f90
Fix https://github.com/gorhill/uBlock/issues/3654
Additionally, there has been refactoring work done regarding
filtering context used throughout uBO, motivated by the fix
here.
2018-12-13 12:30:54 -05:00
Raymond Hill
3075582c72
fix https://github.com/uBlockOrigin/uBlock-issues/issues/314 2018-12-06 10:18:19 -05:00
Raymond Hill
9039874fc9
refactor some webRequest-related code (now that firefox legacy is out of the way) 2018-10-28 10:58:25 -03:00
Raymond Hill
6d34a52179
fix #2859 2018-09-03 14:06:49 -04:00
Raymond Hill
96525cffa5
code review for 3c85c03194: simplify counting of script resources 2018-09-01 06:36:17 -04:00
Raymond Hill
3c85c03194
fix #308, #3436, https://github.com/uBlockOrigin/uBlock-issues/issues/155
<https://github.com/gorhill/uBlock/issues/3436>: a new per-site switch
has been added, no-scripting, which purpose is to wholly disable/enable
javascript for a given site. This new switch has precedence over all
other ways javascript can be disabled, including precedence over dynamic
filtering rules.

The popup panel will report the number of script resources which have
been seen by uBO for the current page. There is a minor inaccuracy to
be fixed regarding the count, and which fix requires to extend request
journaling.

<https://github.com/gorhill/uBlock/issues/308>: the `noscript` tags will
now be respected when the new no-scripting switch is in effect on a given
site.

A default setting has been added to the _Settings_ pane to
disable/enable globally the new no-script switch, such that one can
work in default-deny mode regarding javascript execution.

<https://github.com/uBlockOrigin/uBlock-issues/issues/155>: a new
hidden setting, `requestJournalProcessPeriod`, has been added to
allow controlling the delay before uBO internally process it's
network request journal queue. Default to 1000 (milliseconds).
2018-08-31 18:47:02 -04:00
Raymond Hill
51a4e9ccf4
fix #2763 2018-07-22 10:47:02 -04:00
Raymond Hill
7e5661383a
code review to further lower overhead of updating toolbar icon 2018-05-08 09:43:25 -04:00
Raymond Hill
2c901588c7
fix #3546, #3428 2018-02-26 13:59:16 -05:00
gorhill
75659a3154
fix #3260 2017-11-22 07:41:33 -05:00
gorhill
9d86ab0af9
fix #3201 2017-11-07 11:31:19 -05:00
gorhill
95b25f7d49
fix #3150 2017-10-19 09:35:28 -04:00
gorhill
eb7bdba47f
fix #3140 2017-10-18 15:00:22 -04:00
gorhill
e7e390d2e2
fix #3077 2017-10-01 07:56:28 -04:00
gorhill
5626b5005a
fix #2946 2017-09-12 11:43:43 -04:00
gorhill
dfe18111b9
fix #1539 2017-09-11 09:53:42 -04:00
gorhill
eb3519b075
fix #2839 2017-08-03 10:18:05 -04:00
gorhill
84f22ce3a6
code review: do not pollute logger with firewall noop rules 2017-06-14 08:32:12 -04:00
gorhill
0232382695
refactor static network filtering, add support for csp injection 2017-05-12 10:35:11 -04:00
gorhill
d913eea1f6 fix #2132 + various minor code review 2016-11-08 15:53:08 -05:00
gorhill
d62059ccc7 fix #2103 2016-11-08 07:13:26 -05:00
gorhill
de587335bd elemhide is (and has always been) really generichide 2016-10-27 08:33:19 -04:00
gorhill
cbefeb923c fix #1884 2016-10-14 10:06:34 -04:00
gorhill
3ff3ae7d70 fix #2053 2016-10-08 10:15:31 -04:00
gorhill
6fd0bb4291 more refactoring of content script: better modularization of various components 2016-08-12 08:55:35 -04:00
gorhill
d092f02573 fix broken short-term per-page cache 2016-07-01 00:16:10 -04:00
gorhill
8374799c7d various minor code review 2016-06-30 22:03:29 -04:00
gorhill
74905aa2a5 this fixes #370, #1477 2016-03-15 11:18:34 -04:00
gorhill
e5c2eff2d0 code review to fix "javascript.options.strict" warnings in browser console of Firefox 2016-03-07 09:55:04 -05:00
gorhill
f044854068 this fixes #1359 2016-02-09 18:53:36 -05:00
gorhill
89148351e8 #1163: this implements "block elements by size" 2016-01-17 13:30:43 -05:00
gorhill
7fbde83a28 this fixes #912 2016-01-04 10:48:28 -05:00
gorhill
b63f55b7af this fixes #1121: allow rule will no longer affect cosmetic filtering.
the per-site cosmetic filtering switch must be used instead.
2015-12-30 17:35:32 -05:00
gorhill
9c12ef02bb cosmetic filtering switch must disable ONLY cosmetic filtering.
Before this fix, the turning off cosmetic filtering through the per-site
cosmetic filtering switch was also disabling the blocked resources
collapser.
2015-12-13 00:33:53 -05:00
gorhill
2705432f43 code review 2015-12-02 00:59:51 -05:00
gorhill
afd77a3cef this fixes #854.
Unlike PageStore, TabContext is best placed to keep track of whitelist status
2015-10-22 09:45:41 -04:00
gorhill
9b4b998364 #608: this fixes a bunch of strictness-related warnings 2015-08-18 11:44:24 -04:00
gorhill
eba046504f this fix #476 2015-07-10 14:02:02 -04:00
gorhill
631443768f dom inspector: ébauche 2015-06-26 00:08:41 -04:00