Commit Graph

10919 Commits

Author SHA1 Message Date
Raymond Hill f0eadae3ba
Clear unprocessed status of removed tabs 2023-04-11 22:38:43 -04:00
Raymond Hill e1500ee88d
Add ability to defer set-constant execution
A new optional parameter has been added to `set-constant`
scriptlet: `runAt`, default to `0`.

 ..##+js(set, document.body.oncontextmenu, null, 2)

When the `runAt` parameter is present, uBO will take it into
account to possibly defer execution of `set-constant`:

- `runAt` not present: execute immediately
- `runAt` = 1: execute immediately
- `runAt` = 2: execute when document state is "interactive"
- `runAt` = 3: execute when document state is `"complete"
2023-04-11 21:45:40 -04:00
Raymond Hill 8083e06b30
Revert 09b3695205 (re. `browser.alarms`)
Relates issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2591

THe issue was simply that I had forgotten to add the `alarms`
permission to the manifest.
2023-04-11 18:06:57 -04:00
Raymond Hill 6f3b5df8ef
Fix errand change re. new setTimeout wrapper 2023-04-11 10:33:21 -04:00
Raymond Hill a5f735b585
Fix mv3 builds 2023-04-11 09:35:31 -04:00
Raymond Hill 5cadc2799f
Make Firefox dev build auto-update 2023-04-11 09:01:26 -04:00
Raymond Hill 73a63b1930
Import translation work from https://crowdin.com/project/ublock 2023-04-11 08:46:14 -04:00
Raymond Hill 660d6fd8cf
New revision for dev build 2023-04-11 08:43:16 -04:00
Raymond Hill 47287caf1f
Use valid Gecko version 2023-04-11 08:42:28 -04:00
Raymond Hill 09b3695205
Provide fallback API for platforms not supporting alarms API
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2591
2023-04-11 08:40:18 -04:00
Raymond Hill f0c28f2faa
Minor CSS change 2023-04-10 19:54:16 -04:00
Raymond Hill a495dabff9
Import translation work from https://crowdin.com/project/ublock 2023-04-10 19:37:32 -04:00
Raymond Hill 61fdc744ca
Make Firefox dev build auto-update 2023-04-10 17:21:28 -04:00
Raymond Hill ef345ade31
New revision for dev build 2023-04-10 17:15:28 -04:00
Raymond Hill bf5f343548
Replace toolbar icon tooltip with message section in panel
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2585

Related feedback:
- https://www.reddit.com/r/uBlockOrigin/comments/126rn4f/yellow_toolbar_icon_exclamation_mark_badge/jfns0pc/
2023-04-10 17:10:00 -04:00
Raymond Hill dad862f063
Properly detect incorrect usage of CSS combinators
Related discussion:
- https://www.reddit.com/r/uBlockOrigin/comments/12fquk4/ublock_is_on_but_im_still_getting_ads_on_this/jfpkz1g/
2023-04-10 15:13:03 -04:00
Raymond Hill 768bf7d6f6
Import translation work from https://crowdin.com/project/ublock 2023-04-10 10:22:17 -04:00
Raymond Hill ff117f3d62
New revision for dev build 2023-04-10 10:15:28 -04:00
Raymond Hill 63d0f124ba
Replace requestIdleCallback() with new vAPI.defer utility
Related commit:
- 91f9795023
2023-04-10 10:10:19 -04:00
Raymond Hill 3b14fd915a
Fix cloud storage widget not showing (regression)
Related feedback:
- 50afd5ae38 (commitcomment-108294887)
2023-04-10 10:03:51 -04:00
Raymond Hill 0a1deffb02
Add missing period, as suggested 2023-04-10 08:16:01 -04:00
Raymond Hill a8b40ffe6c
Make Firefox dev build auto-update 2023-04-09 18:55:49 -04:00
Raymond Hill 1958af5a10
New revision for dev build 2023-04-09 18:49:20 -04:00
Raymond Hill 5baced053a
Import translation work from https://crowdin.com/project/ublock 2023-04-09 18:48:49 -04:00
Raymond Hill eb7e1ae821
Make Firefox dev build auto-update 2023-04-09 18:25:37 -04:00
Raymond Hill fe45a0dd77
Import translation work from https://crowdin.com/project/ublock 2023-04-09 14:04:42 -04:00
Raymond Hill 3530b9dc89
Add informative tooltip re. unprocessed requests at launch
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2585
2023-04-09 14:02:01 -04:00
Raymond Hill c5d62d9ae7
Import translation work from https://crowdin.com/project/ublock 2023-04-09 14:00:39 -04:00
Raymond Hill 91f9795023
Wrap usage of setTimeout in helper for background + auxiliary pages
This commit centralizes usage of setTimeout()/clearTimeout() in the
source code at one single location.
2023-04-09 13:38:16 -04:00
Raymond Hill b4984ed85b
New revision for dev build 2023-04-07 20:31:04 -04:00
Raymond Hill bec6cad2c0
Start using browser.alarms instead of setTimeout() where applicable
Related documentation:
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Background_scripts#convert_to_non-persistent
2023-04-07 20:24:20 -04:00
Raymond Hill 66c70cf746
Fix improper detection of quotes in quoted strings
Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2586
2023-04-07 18:10:50 -04:00
Raymond Hill 521c3dcd1d
Fix Chromium publish script for uBO Lite 2023-04-07 14:48:45 -04:00
Raymond Hill a538089a08
Fix Firefox publish script for uBO Lite 2023-04-07 14:26:18 -04:00
Raymond Hill 2108c11889
Work toward signed releases of Firefox uBO Lite 2023-04-07 14:18:58 -04:00
gorhill d13cd2bd30 Update build log file
Files changed:
M	dist/mv3/log.txt
2023-04-07 17:36:32 +00:00
Raymond Hill ba1d686795
Fix github-actions re uBO Lite 2023-04-07 13:34:27 -04:00
Raymond Hill 16b50852c3
Make a firefox package of uBO Lite on release 2023-04-07 13:24:57 -04:00
Raymond Hill b408b9314c
Use more reliable way to check browser environment 2023-04-07 13:00:01 -04:00
Raymond Hill cbfd2ad942
Create a MVP version of uBOLite for Firefox
What does not work at the time of commit:

Cosmetic filtering does not work:

The content scripts responsible for cosmetic filtering fail when
trying to inject the stylesheets through document.adoptedStyleSheets,
with the following error message:

  XrayWrapper denied access to property Symbol.iterator
  (reason: object is not safely Xrayable).
  See https://developer.mozilla.org/en-US/docs/Xray_vision for more
  information. ... css-declarative.js:106:8

A possible solution is to inject those content scripts in the
MAIN world. However Firefox scripting API does not support MAIN
world injection at the moment.

Scriptlet-filtering does not work:

Because scriptlet code needs to be injected in the MAIN world,
and this is currently not supported by Firefox's scripting API,
see https://bugzilla.mozilla.org/show_bug.cgi?id=1736575

There is no count badge on the toolbar icon in Firefox, as it
currently does not support the `DNR.setExtensionActionOptions`
method.

Other than the above issues, it does appear uBO is blocking
properly with no error reported in the dev console.

The adoptedStyleSheets issue though is worrisome, as the
cosmetic filtering content scripts were designed with ISOLATED
world injection in mind. Being forced to inject in MAIN world
(when available) make things a bit more complicated as uBO
has to ensure it's global variables do not leak into the page.
2023-04-07 10:19:43 -04:00
Raymond Hill 8b5774a83d
Minor CSS tweak 2023-04-06 17:43:03 -04:00
Raymond Hill f2698b097c
Fix mv3 build 2023-04-06 17:42:21 -04:00
Raymond Hill d33633ecc9
Make Firefox dev build auto-update 2023-04-06 13:30:42 -04:00
Raymond Hill 8285958be4
New revision for dev build 2023-04-06 13:23:13 -04:00
Raymond Hill b2894756e5
Import translation work from https://crowdin.com/project/ublock 2023-04-06 13:22:48 -04:00
Raymond Hill bc21a1fe72
Use custom linter gutter as container for code-folding widgets
This allows to reduce the horizontal size of the gutter; more efficient
management of folding since we already need to parse each line for the
linter; and eventually this will also allows to detect unbalanced
!#if-!#endif directives and report such cases as errors.

Additionally, keep incrementally improving error reporting details
in the linter.
2023-04-06 13:14:42 -04:00
Raymond Hill 028eee456f
Ensure error count is decrease when an error is fixed 2023-04-04 16:55:47 -04:00
Raymond Hill 767fcf9929
Make Firefox dev build auto-update 2023-04-04 14:36:28 -04:00
Raymond Hill 5264eb7604
New revision for dev build 2023-04-04 14:30:01 -04:00
Raymond Hill d59eeba8e2
Fix tabs.executeScript() not resolving in due time
Related feedback:
- 6efd8eb84a
2023-04-04 14:28:48 -04:00