Commit graph

40 commits

Author SHA1 Message Date
Raymond Hill
266a170beb
Add more CSS variables in preparation of dark mode support
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/401
2020-10-02 12:18:13 -04:00
Raymond Hill
303240c713
Minor changes to dark theme
A whole lot more work needed across all of uBO's user
interface.
2020-10-01 10:09:59 -04:00
Raymond Hill
fef375a594
Minor improvements to syntax highlight of static filters
Double-cliking on a URL will cause the whole URL to be
selected, thus making it easier to navigate to this
URL (through your browser "Open in new tab" entry in
contextual menu).

Unrecognized scriptlet names will be highlighted so as
to warn that the filter is not going to be effective.
2020-09-30 10:01:10 -04:00
Raymond Hill
532ed5c390
Add ability to collpase unchanged rules in _My rules_ pane
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/604
2020-08-25 13:23:30 -04:00
Raymond Hill
dd655473f6
Add ability to sort rules in _My rules_ pane
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1055
2020-08-24 12:39:07 -04:00
Raymond Hill
e44af458c0
Fine tune visuals of CodeMirror's search feature
Added a dotted box around found text occurrences,
as just pale yellow to highlight the text is not
enough to visually distinguish from surrounding text.

Iterating through found text occurrences will now
ensure they are vertically positioned in the middle
of the editor.
2020-08-04 10:14:38 -04:00
Raymond Hill
59496cfa45
Restore visual of input field on Firefox 2020-08-03 14:30:30 -04:00
Raymond Hill
50bf999a12
Fine tune CodeMirror editor's search widget
Code review following latest changes.

Also, move the input field to the left so that it
renders properly on smaller displays and does not
jump around when the result position/count numbers
change.

This also makes it easier to add more functionality
to the editor's toolbar in the future.
2020-08-03 08:55:02 -04:00
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
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
aa000e282e
Add auto-completion for procedural operators
Related commit:
- 3e72a47c1f
2020-06-16 08:59:55 -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
1a082e0581
Expand parser's ability to process static extended filtering
This commit moves some of the parsing logic of static
extended filtering into the static filtering parser; this
allows better syntax highlighting and creation-time
error-catching for cosmetic, HTML, and scriptlet filters.
2020-06-13 08:48:56 -04:00
Raymond Hill
08eca13364
Visually emphasize regex-based pattern
To help prevent mistakenly creating regex-based
patterns.
2020-06-08 12:39:31 -04:00
Raymond Hill
2ba4312a8b
Minor fine-tuning of CSS color 2020-06-05 10:00:35 -04:00
Raymond Hill
01b1ed9a98
Add a new static filtering parser
A new standalone static filtering parser is introduced,
vAPI.StaticFilteringParser. It's purpose is to parse
line of text into representation suitable for
compiling filters. It can additionally serves for
syntax highlighting purpose.

As a side effect, this solves:
- https://github.com/uBlockOrigin/uBlock-issues/issues/1038

This is a first draft, there are more work left to do
to further perfect the implementation and extend its
capabilities, especially those useful to assist filter
authors.

For the time being, this commits break line-continuation
syntax highlighting -- which was already flaky prior to
this commit anyway.
2020-06-04 07:18:54 -04:00
Raymond Hill
fe94aa331a
Replace CodeMirror resize code with CSS flex 2020-04-25 10:19:08 -04:00
Raymond Hill
54b68ebd94
Fine tune various visuals
Related feedback:
- e917213e81 (commitcomment-38533349)
2020-04-16 08:49:34 -04:00
Raymond Hill
99b2a0a761
Fourth pass to re-design the dashboard
Related commits:
- a8e3118fea
- 453f5450b6
- a45a21f337

Roughly, the changes in this commit:
- Make it easier to implement a dark theme eventually:
  - Flatten the look of buttons
  - Remove the use of `opacity` style property as a
    color modifier
- Some work toward removing dependency on FontAwesome
  font
2020-04-10 18:17:12 -04:00
Raymond Hill
17886abcda
Centralize break-all CSS property
So that both asset viewer and "My filters" inherit
the property for filter list rendering.
2020-03-15 09:25:18 -04:00
Raymond Hill
eef76c49ae
Add a link to the remote asset in asset viewer
The link will be present if and only if the content
of the currently viewed asset has been fetched from
a remote location.
2019-05-23 19:29:59 -04:00
Raymond Hill
ac71d6577a
Visually emphasize directive syntax (!#if/!#endif) in list viewer/editor 2019-03-21 19:53:04 -03:00
Raymond Hill
c192045e1d
fix https://github.com/uBlockOrigin/uBlock-issues/issues/264 2018-10-15 14:15:00 -03:00
Raymond Hill
fce2eaf3c3
further improving UI for small screens 2018-03-28 16:15:50 -04:00
Raymond Hill
dbd34c4592
force default pointer because Firefox legacy (#3611) 2018-03-16 20:49:00 -04:00
Raymond Hill
fc850ec8b9
force default pointer for find next-prev buttons 2018-03-16 20:28:17 -04:00
Raymond Hill
31eaa766dc
fix other quirks with rtl languages (#3611) 2018-03-16 19:38:43 -04:00
Raymond Hill
b10ac0020d
make use of CodeMirror in "My rules" pane 2018-03-11 10:59:39 -04:00
Raymond Hill
a470c119aa
make options separator standout a bit better 2018-03-06 15:47:40 -05:00
Raymond Hill
7a90a69347
fine tuning syntax highlighter 2018-03-05 13:05:26 -05:00
Raymond Hill
9b803a2295
fine tuning syntax highlighter 2018-03-05 11:25:45 -05:00
Raymond Hill
9df0202a00
[codemirror] add active line addon 2018-03-05 06:59:03 -05:00
Raymond Hill
1205156ca3
prevent search bar from shrinking (#3567) 2018-03-04 18:23:01 -05:00
Raymond Hill
65e55549c7
fix resizing quirk due to new top panel (#3567) 2018-03-04 18:09:06 -05:00
Raymond Hill
2c45971c65
code review: fine tuning look/behavior (#3567) 2018-03-04 17:13:27 -05:00
Raymond Hill
bc61bef9a7
address #3567 2018-03-04 14:07:01 -05:00
Raymond Hill
8d5ebf44ef
support saving using keyboard (through codemirror) in "My filters" 2018-03-01 13:37:23 -05:00
Raymond Hill
8680bbc086
fine tuning codemirror styles 2018-03-01 11:26:24 -05:00
Raymond Hill
61ec088d43
integrate codemirror into "My filters" pane 2018-02-28 18:51:33 -05:00