1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-11-17 16:02:33 +01:00
Commit Graph

52 Commits

Author SHA1 Message Date
Raymond Hill
23332400f5
Improve annotations for search operations in CodeMirror editor
Before this commit, CodeMirror's add-on for search occurrences
was limited to find at most 1000 first occurrences, because of
performance considerations.

This commit removes this low limit by having the search
occurrences done in a dedicated worker. The limit is now
time-based, and highly unlikely to ever be hit under normal
condition.

With this change, all search occurrences are gathered,
and as a result:

- All occurrences are reported in the scrollbar instead of
just the 1,000 first

- The total count of all occurrences is now reported, instead
of capping at "1000+".

- The current occurrence rank at the cursor or selection
position is now reported -- this was not possible to report
this before.

The number of occurrences is line-based, it's not useful to
report finer-grained occurences in uBO.
2020-08-02 12:18:01 -04:00
Raymond Hill
f55c891d54
Avoid returning a value when injected as content script 2020-07-20 17:28:33 -04:00
Raymond Hill
e44a568278
Add CoreMirror's code-folding ability to list editor/viewer
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1134

CodeMirror's code folding reference:
- https://codemirror.net/doc/manual.html#addon_foldcode

This commit adds support for code-folding to the filter
list editor/viewer.

The following blocks of code are foldable by clicking the
corresponding marker in the gutter:

- !#if/#endif blocks
- !#include blocks

Addtionally, the following changes:

- The `!#include` line is now preserved when importing a
  sublist
- The `!#if` directives will be syntax-colored according
  to whether they evaluate to true or false on the current
  platform
- Double-clicking on a foldable line in the gutter will
  select the content of the foldable block
- Minor visual improvement to matching brackets
2020-07-10 08:01:39 -04:00
Raymond Hill
3e72a47c1f
Add support for auto-completion in _My filters_ pane
This commit adds CodeMirror's auto-completion capability
to the _My filters_ pane.

Currently, auto-completion is available for scriptlet
tokens: pressing ctrl-space while the text cursor is
positioned where a scriptlet token should appear will
cause auto-completion to kick-in. In case of ambiguity,
CodeMirror's widget to pick a specific scriptlet will
appear.
2020-06-15 09:15:13 -04:00
Raymond Hill
0e32e4391d
Add ability to comment out block of filters
Pressing Tab in _My filters_ will toggle the
commenting out of filters in the current
selection or current line if no selection.
2020-06-14 14:02:33 -04:00
Raymond Hill
6d8b310d94
Minor code review of static filtering parser
Rename `l` property to `len`, to avoid ambiguity as
`l` could mean _left_ or _length_. Typically `l` is
to be used for _left_ (whereas `r` is to be used for
_right_).

Additionally, add CodeMirror's bracket-matching and
bracket auto-closing to _My filters_ pane and and
bracket-matching to asset viewer page.
2020-06-14 12:05:42 -04:00
Raymond Hill
f667fc2d65
Fix page count computation in publicSuffixList.enableWASM() 2019-04-25 19:40:07 -04:00
Raymond Hill
cd1a11fa9d
Update to CodeMirror version 5.46 2019-04-23 19:06:03 -04:00
Raymond Hill
f47ad8366e
Fix https://github.com/NanoAdblocker/NanoCore/issues/257 2019-04-03 00:18:16 -03:00
Raymond Hill
d505adfa38
Upgrade CodeMirror to 5.45 2019-03-31 00:31:29 -03:00
Raymond Hill
008370e4b9
Fix https://github.com/uBlockOrigin/uBlock-issues/issues/461
uBO will fallback using a JSON string when trying to encode an array
buffer in Chromium version 59 and earlier.
2019-03-16 09:00:31 -04:00
Raymond Hill
2fb4dc8358
Update PSL library to latest official version 2019-02-12 12:00:20 -05:00
Raymond Hill
1e2969c3b0
Update PSL library to last version 2019-02-12 07:59:38 -05:00
Raymond Hill
4da340384a
Update publicSuffixLibrary to latest (WASM-able) version
See https://github.com/gorhill/publicsuffixlist.js
2019-02-10 12:19:05 -05:00
Raymond Hill
69c87c5117
Fix Promise chain of WASM module load operations
The Promise chain was not properly designed for WASM module
loading. This became apparent when removing WASM modules
from Opera build[1].

The problem was that errors thrown by fetch() -- used to
load WASM modules -- were not properly handled.

[1] Opera refuses updating uBO if there are unrecognized file
types in the package, and `.wasm`/`.wat` files are not
recognized by Opera uploader.
2019-02-01 08:20:43 -05:00
Raymond Hill
2be36ffe81
Fix bad alignment in comments 2018-12-22 12:26:50 -05:00
Raymond Hill
0ce42fa23d
Apply fix to diff code as per http://www.mathertel.de/Diff/DiffTest.aspx?oldfile=Diff.cs.v1&newfile=Diff.cs.v2 2018-12-20 18:57:06 -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
5fd3f82205
Update README.md 2018-10-19 12:02:04 -03:00
Raymond Hill
3076b0f4fa
include source code of lz4-block-codec.wasm for reviewers 2018-10-19 11:56:28 -03:00
Raymond Hill
832c6f0a31
fix https://github.com/uBlockOrigin/uMatrix-issues/issues/64 by importing CodeMirror 5.40.2 2018-09-26 06:38:02 -04:00
Raymond Hill
3c187c6278
fix https://github.com/uBlockOrigin/uBlock-issues/issues/141#issuecomment-416792939 2018-08-29 08:20:31 -04:00
Raymond Hill
b3dec3825c
minor code review of lz4-related code 2018-08-21 11:07:34 -04:00
Raymond Hill
f0308960a4
fix typos 2018-08-14 10:07:49 -04:00
Raymond Hill
5502a03f50
fix typo 2018-08-12 19:18:54 -04:00
Raymond Hill
4b72918e3a
typo 2018-08-12 09:07:44 -04:00
Raymond Hill
815283c77c
explain purpose of files (for reviewers really) 2018-08-12 09:06:25 -04:00
Raymond Hill
55501c4cdf
code review of pure-js implementation of lz4 2018-08-12 08:47:50 -04:00
Raymond Hill
0aeaf27f58
code review of 38aabc937a 2018-08-12 07:18:34 -04:00
Raymond Hill
38aabc937a
reorganize cache storage compression; workaround fix for #2812 2018-08-11 10:39:43 -04:00
Raymond Hill
e163080518
added optional lz4 compression for cache storage (https://github.com/uBlockOrigin/uBlock-issues/issues/141)
Squashed commit of the following:

commit 6a8473822537636ac54d5dabdb14472114bb730b
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Mon Aug 6 10:56:44 2018 -0400

    remove remnant of snappyjs and spurious instruction

commit 9a4b709bee97d3cc2235fab602359fa5953bdb46
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Mon Aug 6 09:48:58 2018 -0400

    make cache storage compression optionally available on all platforms

    New advanced setting: `cacheStorageCompression`. Default is `false`.

commit 22ee6547f2f7c9c5aefe25dea1262a1b31612155
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sun Aug 5 19:16:26 2018 -0400

    remove Chromium from lz4 experiment

commit ee3e201c45afe983508f70713a2d43af74737d8d
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sun Aug 5 18:52:43 2018 -0400

    import lz4-block-codec.wasm library

commit 883a3118efcfd749c82356fde7134754d6ae371d
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sun Aug 5 18:50:46 2018 -0400

    implement storage compression through lz4-wasm [draft]

commit 48d1ccaba407de447c2cd6747dc3a90839c260a7
Merge: 8ae77e6 b34c897
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Sat Aug 4 08:56:51 2018 -0400

    Merge branch 'master' of github.com:gorhill/uBlock into lz4

commit 8ae77e6aeeaa85af335e664c2560d2afd37288c6
Author: Raymond Hill <rhill@raymondhill.net>
Date:   Wed Jul 25 18:17:45 2018 -0400

    experiment with compression
2018-08-06 12:34:41 -04:00
Raymond Hill
75b148b307
upgrade to CodeMirror 5.37 2018-04-23 17:30:28 -04:00
Raymond Hill
c0387835fa
code review: modernize old code 2018-04-05 15:22:19 -04:00
Raymond Hill
6871d9aed4
add ability to filter out rules in "My rules" pane 2018-03-21 07:24:52 -04:00
Raymond Hill
d29b40991a
remove use of innerHTML to please Firefox validator (see https://github.com/codemirror/CodeMirror/pull/5313) 2018-03-17 08:58:55 -04:00
Raymond Hill
caef7d00bb
add CodeMirror's merge.js addon + modify imported diff code for compatibility 2018-03-11 10:59:02 -04:00
Raymond Hill
2aa704651d
import original version of https://github.com/Swatinem/diff 2018-03-11 10:54:29 -04:00
Raymond Hill
ed8c9ac04e
add missing addon for 9df0202a00 2018-03-05 11:27:23 -05:00
Raymond Hill
bc61bef9a7
address #3567 2018-03-04 14:07:01 -05:00
Raymond Hill
b14011deb8
add CodeMirror's lib README to the package 2018-03-02 07:15:41 -05:00
Raymond Hill
8680bbc086
fine tuning codemirror styles 2018-03-01 11:26:24 -05:00
Raymond Hill
273c80564a
fix rendering of comments starting with # 2018-02-28 19:16:19 -05:00
Raymond Hill
61ec088d43
integrate codemirror into "My filters" pane 2018-02-28 18:51:33 -05:00
Raymond Hill
ac7e012633
start integration of codemirror to improve UI 2018-02-28 12:31:43 -05:00
Raymond Hill
d2df01dc08
remove unused library 2017-12-27 09:46:12 -05:00
gorhill
6fcad5dc9f minor code review re. #150 2015-04-29 12:03:06 -04:00
gorhill
ff41aed7cf maybe this will address #150 2015-04-29 10:29:44 -04:00
Bernd
2c674f14ac Update punycode.js
702cc2daf1
2015-04-16 10:34:03 +02:00
gorhill
9a622107ea this completes fix of #520 2015-02-24 13:48:03 -05:00
gorhill
084f092c33 re #550: use non-minified external libs 2015-01-30 08:04:52 -05:00