Commit Graph

588 Commits (master)

Author SHA1 Message Date
gorhill c8a461a815 interim version for dev build 9 years ago
gorhill d6a48df601 this fixes #246 -- FF tab management re-factored 9 years ago
gorhill 6f842724be SQlite: importing changes from uBlock 9 years ago
gorhill a1ff628a57 this addresses AMO feedback from uBlock 9 years ago
gorhill bbfef4f6cf this fixes #234 + other fixes imported from uBlock 9 years ago
gorhill cef90f0b20 fixed bad wrapper around seTimeout 9 years ago
gorhill 9b45f27792 interim version for dev build 9 years ago
gorhill dd657f31ae new revision 9 years ago
gorhill 685bec0647 new revision 9 years ago
gorhill 8063ea1e67 translation work from https://crowdin.com/project/umatrix 9 years ago
gorhill 303291fe09 less glitchy autoresize of the popup while in use 9 years ago
gorhill 2129490a92 not needed anymore 9 years ago
gorhill 05d8c51580 this fixes #205 9 years ago
gorhill 714c02232a script injection can throw when not a real HTML document 9 years ago
gorhill 1aa8b4fc1e this addressed #200: uMatrix compatible for FF35+ 9 years ago
gorhill f3c5815848 interim version number for dev build 9 years ago
gorhill cc6eae5555 works on Nightly 41 9 years ago
gorhill 4ab8f52b44 this fixes #189: reverted changes from 6123335c51 9 years ago
gorhill 276d48a00c new revision 9 years ago
gorhill 6f4257bb2a this fixes #189 9 years ago
gorhill 4ba4d55e6b fixing small details 9 years ago
gorhill 8aaadb8fc0 toward a release: general code review, polishing, removing obsolete stuff 9 years ago
gorhill 3d3160efdf minor code review 9 years ago
gorhill c4699d06a1 Firefox e10s compatibility 9 years ago
gorhill 6bc728f8b8 refactoring of inline script blocking + improving AMO validation 9 years ago
gorhill 57de4fdf14 code review 9 years ago
gorhill 5155b87ca9 translation work from https://crowdin.com/project/umatrix 9 years ago
gorhill 486183cbe6 this fixes popup matrix position/resize issues 9 years ago
gorhill 8c506d4d73 code review 9 years ago
gorhill 04f160efba this addresses #171 9 years ago
gorhill 8fcecdbde8 this fixes #174 9 years ago
gorhill 4f2ecc710d this fixes #172 9 years ago
gorhill 52540c1a9a various fixes 9 years ago
gorhill 3849a3d4d9 code review 9 years ago
gorhill 1e1ec2e92c Firefox: this fixes ocasional bad cookie handling 9 years ago
gorhill 1d2954c39c cleaning up last committed code 9 years ago
gorhill 2cd6961ed4 firefox: draft work for fixing #165 9 years ago
gorhill 6f786635f4 extremely early draft of matrix integration within the logger 9 years ago
gorhill a49340b57a firefox: cookie and browser cache management 9 years ago
gorhill 4ad7c65362 various fixes 9 years ago
gorhill b4254db51c refactoring: many changes throughout -- not close to be done 9 years ago
gorhill be3e86e055 user is responsible to reload + fixed cleanup of stale tabs 9 years ago
gorhill e751a5403b code review 9 years ago
gorhill 0e77cbd15d this fixes #45 + revised color-blind mode + support shutdown of content script 9 years ago
gorhill dbe14694c8 code review 9 years ago
gorhill 1c05281183 comments 9 years ago
gorhill 1f4ff9c809 more refactoring, code review 9 years ago
gorhill 8ae33e9c12 FF: this fixes availability of response headers for when item pulled from cache 9 years ago
gorhill 7cd060a15f refactoring, fixing script/frame blocking on FF, etc., more to do 9 years ago
gorhill c0bfb00be8 code review 9 years ago
gorhill c1314e496b support ping request type explicitly 9 years ago
gorhill 595de33e83 sanitizing outgoing headers (drafty) 9 years ago
gorhill 5106c4bc44 this fixes rendering of toolbar icon 9 years ago
gorhill 764b1a0b7a jshint 9 years ago
gorhill 9340975606 a whole lot more left to do, at least popup shows 9 years ago
gorhill dd90ff1c57 code review re. last commit 9 years ago
gorhill 4fffc97954 untangling fennec code 9 years ago
gorhill 4d8f908022 #10: manually imported fixes from e762a29d30 9 years ago
gorhill 7c5cf28c33 this fixes https://github.com/chrisaljoudi/uBlock/issues/1219 for Firefox 9 years ago
gorhill 301e707e6b refactored tabs/context code 9 years ago
gorhill c6d89dab64 removed spurious lines of code 9 years ago
YFdyh000 8102f3467e Correct issue links 9 years ago
gorhill a14f487488 new switch: toggle cosmetic filtering on/off for a site 9 years ago
AlexVallat 3607286a3e Changes following review 9 years ago
AlexVallat 4f825399f6 No need for special treatment for about:blank and about:newtab 9 years ago
AlexVallat 0a736dc270 Fix for #1122 9 years ago
AlexVallat a0b86f7d25 Remove onNavigation from onTabSelect, as mentioned in #1125 9 years ago
gorhill 882d1d9425 translation work from https://crowdin.com/project/ublock 9 years ago
gorhill d8bbe9a501 this fixes #1013, #1062 (draft) 9 years ago
AlexVallat 3ec2c29ef0 Use a nsIWebProgressListener instead of a tabsProgressListener for location change monitoring 9 years ago
AlexVallat ca8330d4f0 Cleanup for DOMTitleChanged listener 9 years ago
gorhill dbbd13a8d5 #1013: Firefox support 9 years ago
AlexVallat ed43097de8 Fix for #1072: Listen to DOMTitleChanged as additional navigation event for Fennec 9 years ago
gorhill a179821f3d #1057: cleanup code 9 years ago
gorhill eb70156b90 this fixes #1057 9 years ago
Deathamns b93759e2f9 Firefox: handle nsIContentPolicy.TYPE_IMAGESET
https://bugzil.la/1055750
9 years ago
Deathamns 687e9d84a9 Firefox: register unload event sooner 9 years ago
Deathamns e38cd3c7f1 Firefox: check for non-existent button 9 years ago
AlexVallat 28923771dc Robustness changes from watching logs in Fennec 9 years ago
Deathamns 1629accdb8 Firefox: determine tabIds via <browser> 9 years ago
Deathamns 8f9be95a08 abp:subscribe fixes
Test a[href^="abp:"], since the protocol probably not used for anything
else, also "a", because ABP checks only anchors, and these links are made
only for ABP.

Also, the event target is not always the link, so at least some parents
should be tested as well.
9 years ago
Deathamns 0124096789 Firefox: update buttons when addon is enabled 9 years ago
AlexVallat 2643125f66 Fixing #1017, only apply switch to about:blank or about:newtab if not loading 9 years ago
AlexVallat aa80edc171 Testing alternative tab ID for Fennec (issue #1001) 9 years ago
Deathamns 8474fce1bc No hasAttribute on tab objects in Fennec 9 years ago
gorhill 365593a389 move platform-specific images to their respective platform 9 years ago
gorhill 1bfe037de6 fixed ff icons 9 years ago
Deathamns cba6d2346e Firefox: badge color fix 9 years ago
Deathamns b5c47c898e Code organizing 9 years ago
Deathamns fffec145b9 Firefox: load content-scripts on extension start 9 years ago
Deathamns 539826310b Firefox: bypass cache when reloading a tab 9 years ago
Deathamns f3d62969ee Remove unnecessary fallback code for downloading 9 years ago
gorhill 0b81faebee this helps #993 9 years ago
AlexVallat 16ff5db8f4 Trying to fix merge 9 years ago
AlexVallat c9a8c8d6df Changes following review at https://github.com/gorhill/uBlock/pull/956#issuecomment-78047032 9 years ago
gorhill 651fa9c16a this fixes #967 9 years ago
Deathamns 96454afb20 Firefox: change badge color in onWidgetUnderflow 9 years ago
Deathamns f5c675e8b8 Firefox: different way for reloading a tab 9 years ago
AlexVallat 64e3310a36 Initial UI support for Fennec 9 years ago
Deathamns ef9301276c Firefox: block popups earlier 9 years ago
Deathamns 6c4428ff73 Firefox: workaround for #886 9 years ago
Deathamns 6952156891 Firefox: handle behind-the-scene redirects 9 years ago
Deathamns 42e84760dc Fennec: fix tab title 9 years ago
AlexVallat 21c8bfa537 https://github.com/gorhill/uBlock/issues/524#issuecomment-76620479 9 years ago
Deathamns e965b1eef7 Firefox/Fennec fixes 9 years ago
AlexVallat dc5761164b Fixing up basic functionality for Fennec 9 years ago
Deathamns 29aa1d393d Firefox/Fennec code cleanup 9 years ago
Cheng Sun dee9c4706f Fennec WIP #2 9 years ago
Cheng Sun b843ddfd70 Use named "same document" constant instead of hardcoding 9 years ago
Deathamns 33af8467b8 Firefox: toolbar icon fixes for Firefox 36+ 9 years ago
Deathamns 223240bba0 Firefox: behind-the-scene request types 9 years ago
Deathamns bace1708f9 Remove unused code 9 years ago
gorhill 178bded97f this fixes #730 9 years ago
gorhill 8f7d7d233b link to relevant jsperf 9 years ago
gorhill e0eaf97eb4 use static function instead of closure 9 years ago
Deathamns 8db990daa3 Firefox: get the version number from the fragment 9 years ago
Deathamns 1ee1bd052a Firefox: use correct data for parentFrameId 9 years ago
Deathamns f4a7378ff2 Firefox: each frame should have a unique ID 9 years ago
Deathamns 97ae38c584 Firefox: remove evalInSandbox
Probably we won't eval plain text code, which makes it unnecessary, also
this way the validator on AMO won't complain about it.
9 years ago
Deathamns a61e73d212 Firefox: vAPI.tabs.onNavigation() for about: pages 9 years ago
Deathamns 6d8554da76 Firefox: behind-the-scene requests / non-http tabs 9 years ago
gorhill 24f1ef515f more fixes for #105 9 years ago
gorhill 56d4cf6a6a code review: jshint'ed 9 years ago
gorhill 26e80a8c5c this fixes #536 9 years ago
gorhill cfa4b7ebe5 new version 9 years ago
gorhill 05b835dd73 started work on #105, #475, and possibly #510 9 years ago
gorhill a3c4df4e00 new revision 9 years ago
Chris c64e26deea Fix `set` for Firefox & Safari (don't set non-own properties in for..in loop) 9 years ago
gorhill 3e71ee90c6 new revision + fixed frame parent id 9 years ago
gorhill db6ed71060 fixed bad test 9 years ago
gorhill f9ca8d5040 new revision 9 years ago
Deathamns 0241870671 Firefox: minimal effort to support older versions 9 years ago
Deathamns 86e852a722 Firefox: suppress some "unsafe CPOW usage" message 9 years ago
Deathamns 859482fff2 Firefox: fix tab closing issue (pop-up blocking) 9 years ago
Deathamns ab556945f3 URL handling changes 9 years ago
gorhill 8a1b6d806e code review re #498 9 years ago
gorhill 3bd9eee897 this fixes one part of #498 9 years ago
Deathamns d1a5a1856f Firefox: lower popup resize delay 9 years ago
Deathamns 1c64aa4af4 Firefox: fix tooltip animation 9 years ago
gorhill e90bc19420 this fixes #490 9 years ago
Deathamns 5a422a681d Fix popup tooltips and sizing for Firefox 9 years ago
Deathamns 09d605fa04 Implement vAPI.insertHTML
The purpose of this API is basically to satisfy AMO reviewers in the
future, since the use of innerHTML with variables (i.e., not plain text) will
be rejected without any questions.

Since this is not a problem for browsers other than Firefox, they will
use simple innerHTML assignment, however safe-parsing could be implemented
for them too.
9 years ago
Deathamns 6151b10bd8 Firefox: remove unloading from vAPI 9 years ago
Deathamns 00e081f3fe Miscellaneous changes 9 years ago
Deathamns 89fe48ae66 Firefox: fixed content scripts? 9 years ago
Deathamns 7a5d174aa4 Firefox,Safari: implement vAPI.tabs.reload 9 years ago
Deathamns 648e5e2d67 Firefox: simplify vAPI.app.restart 9 years ago
Deathamns bc9c9ca2d9 Firefox: blocking improvements / other fixes
- Implement pop-up blocking
- Support blocking redirected requests
- Fix Local mirroring and inline-script blocking
- Block content on data: and about:blank pages
9 years ago
Deathamns f1e9bc363e Firefox: popup size for menu-panel 9 years ago
Deathamns 71b0c22c9d Firefox: fix copy-paste memory leak 9 years ago
Deathamns ec337b61af Firefox: implement vAPI.app.restart 9 years ago
Deathamns 2a2fa8da75 Code styling 9 years ago
Deathamns a3b2edf65e Firefox: ownsWeak=true for observers, +minor mods 9 years ago
Deathamns 4f8c0e65e6 Make vAPI.setIcon less Chromium specific 9 years ago
Deathamns 488be6ef3e Popup related changes 9 years ago
Deathamns 749c723d57 Firefox: new method for request handling
Now both nsIContentPolicy and on-http-* observers are used for net request
monitoring.

Reasons:
 - In many cases, nsIContentPolicy.shouldLoad is invoked twice for the same
   resource, because of the speculative parsing.
 - nsIContentPolicy.shouldLoad don't have information about the channel,
   so it can't redirect the request, nor change its headers, however
   on-http-opening-request can.

Also, local mirroring and inline-script blocking has been implemented.
9 years ago
Deathamns 84a0bbf18e Firefox: proper cleanup for context-menu item 9 years ago
Deathamns 0769160b34 Firefox: move callback to last call 9 years ago
Deathamns c2af79c996 Firefox: saved prefs were overwritten by defaults 9 years ago
Deathamns 6b4a9a1962 Firefox: add missing vAPI.onLoadAllCompleted 9 years ago
Deathamns 4833012ae3 Firefox: improve vAPI.tabs.getTabId 9 years ago
Deathamns 85eded970b Firefox: implement vAPI.contextMenu 9 years ago
Deathamns dd25e64134 Firefox: revert previous change
Initializing the extension with AddonManager takes too long (at least for
this extension).
When starting the browser, tabs loaded before the extension could, and
because of that, blocking didn't work.
It works better, if it's initialized when the window's DOM is ready.
9 years ago
Deathamns 3ce0d0aded Firefox,Safari: fill vAPI.app in a different way
Pass the extension data (name and version) as the fragment of the URL
for the background script, so vAPI.app can be filled without using XHR
to read the manifest files.
9 years ago
Deathamns feea508a8e Firefox: location.host isntead of app.cleanName 9 years ago
Deathamns fb2cb5c41c Add license headers, plus some code styling 9 years ago
Deathamns 6eaa7e02b8 Firefox: minor changes 9 years ago
Deathamns f17ad2f1a5 Firefox: implement vAPI.tabs.injectScript 9 years ago
Deathamns 4e1b938f25 Firefox: 'load' -> 'DOMContentLoaded' 9 years ago
Deathamns e0d742b040 Firefox: initialize buttons when DOM is ready 9 years ago
Deathamns f432dfa856 Firefox: observe main_frame requests too 9 years ago
Deathamns 7348d11871 Firefox: fix styling for toolbar button 9 years ago
Deathamns e2105c395e Firefox: implement toolbar button and popup 9 years ago
Deathamns 055c398916 Firefox: blocking and content scripts for e10s 9 years ago
Deathamns e724d1a9e2 Firefox: add basic blocking + some fixes 9 years ago
Deathamns a6b4e3dee0 Firefox: partial vAPI.tabs implementation 9 years ago
Deathamns cba32c8eb4 Firefox: implement vAPI.storage via SQLite 9 years ago
Deathamns 54868d149a Initial Firefox port (base, messaging, locales) 9 years ago
Deathamns 08403a44f8 Implement vAPI.insertHTML
The purpose of this API is basically to satisfy AMO reviewers in the
future, since the use of innerHTML with variables (i.e., not plain text) will
be rejected without any questions.

Since this is not a problem for browsers other than Firefox, they will
use simple innerHTML assignment, however safe-parsing could be implemented
for them too.
9 years ago
Deathamns bbfcb4eea9 abp:subscribe fixes
Test a[href^="abp:"], since the protocol probably not used for anything
else, also "a", because ABP checks only anchors, and these links are made
only for ABP.

Also, the event target is not always the link, so at least some parents
should be tested as well.
9 years ago
Deathamns aff7501596 Firefox: different kind of vAPI.localStorage 9 years ago
Deathamns 10f364c153 Firefox,Safari: vAPI.localStorage 9 years ago
gorhill c80280bd2d this fixes #792 9 years ago
Deathamns c9b1298344 Remove unnecessary fallback code for downloading 9 years ago
gorhill c6e3b5a81b Firefox: oops 9 years ago
gorhill 3e43478e13 changes re #993 for firefox platform 9 years ago
Deathamns 829f80e1da Fix prorblems caused by vAPI.insertHTML 9 years ago
Deathamns 618502354f Implement vAPI.insertHTML
The purpose of this API is basically to satisfy AMO reviewers in the
future, since the use of innerHTML with variables (i.e., not plain text) will
be rejected without any questions.

Since this is not a problem for browsers other than Firefox, they will
use simple innerHTML assignment, however safe-parsing could be implemented
for them too.
9 years ago
Deathamns e2c0beb663 Miscellaneous changes 9 years ago
Deathamns 3dc8e88c75 Popup related changes 9 years ago
Deathamns 9cb78c2575 Add license headers, plus some code styling 9 years ago
Deathamns 7c69a427c2 Firefox: implement toolbar button and popup 9 years ago
Deathamns 799aafbcd4 Firefox: implement vAPI.storage via SQLite 9 years ago
Deathamns e98b514a51 Initial Firefox port (base, messaging, locales) 9 years ago
gorhill db49291fa6 this fixes https://github.com/chrisaljoudi/uBlock/issues/1219 for Firefox 9 years ago
gorhill 2fbca2cc09 forgot to add shutdown to other platforms (re. https://github.com/gorhill/uMatrix/issues/144) 9 years ago
Deathamns afaf6aff9b vAPI.sessionId, element-picker dialog as iframe
vAPI.sessionId - random ID generated every time when a page loads.

Having the dialog in an iframe lowers the chance of interference with the
styling of the page, also avoids using innerHTML (AMO complaint).
9 years ago
Chris 0fbaf41d09 Remove previous Safari overhead; cleanup workarounds from rest of code 9 years ago
Deathamns 4b3d6716ff Firefox: remove evalInSandbox
Probably we won't eval plain text code, which makes it unnecessary, also
this way the validator on AMO won't complain about it.
9 years ago
Deathamns f196d31a2f Firefox: behind-the-scene requests / non-http tabs 9 years ago
gorhill 995236c6a9 not needed 9 years ago
Deathamns a7f15f0b71 URL handling changes 9 years ago
Deathamns a6acb50892 Firefox: fixed content scripts? 9 years ago
Deathamns 5f92ce4599 Firefox: improvements for content scripts 9 years ago
Deathamns 1a1d1b1c4b Code styling 9 years ago
Deathamns 3e39e1bd9f Firefox: new method for request handling
Now both nsIContentPolicy and on-http-* observers are used for net request
monitoring.

Reasons:
 - In many cases, nsIContentPolicy.shouldLoad is invoked twice for the same
   resource, because of the speculative parsing.
 - nsIContentPolicy.shouldLoad don't have information about the channel,
   so it can't redirect the request, nor change its headers, however
   on-http-opening-request can.

Also, local mirroring and inline-script blocking has been implemented.
9 years ago
Deathamns e70bf61206 Add license headers, plus some code styling 9 years ago
Deathamns 1ae15f1a61 Firefox: implement vAPI.tabs.injectScript 9 years ago
Deathamns 747f6f9955 Firefox: implement toolbar button and popup 9 years ago
Deathamns e96e535f3d Firefox: add basic blocking + some fixes 9 years ago
Deathamns dd6f3cc4b3 Firefox: partial vAPI.tabs implementation 9 years ago
Deathamns 8f0cf1d340 Initial Firefox port (base, messaging, locales) 9 years ago
AlexVallat cc85464eb5 Tidying .xul location, update linux script to match windows one 9 years ago
gorhill e4688ecf22 this fixes https://github.com/chrisaljoudi/uBlock/issues/1219 for Firefox 9 years ago
Deathamns 2b365ec4c1 Firefox: update application versions 9 years ago
AlexVallat 15df6b8e4f Initial UI support for Fennec 9 years ago
Deathamns 6812ed591a Firefox/Fennec code cleanup 9 years ago
Cheng Sun cce2e85eeb Fennec WIP #2 9 years ago
Deathamns 0397ea0eac Remove unused code 9 years ago
Deathamns ab0b1936b4 Firefox: get the version number from the fragment 9 years ago
Deathamns ad19bae5e1 Firefox: add localized descriptions to install.rdf 9 years ago
Deathamns 2f7be81668 Firefox: minimal effort to support older versions 9 years ago
Deathamns 839c6300b8 Miscellaneous changes 9 years ago
Deathamns 8b01ed93ed Firefox: update manifest files when building 9 years ago
Deathamns 2750dac88c Firefox: implement toolbar button and popup 9 years ago
Deathamns 691c261118 Firefox: partial vAPI.tabs implementation 9 years ago
Deathamns ee210ad15c Firefox: implement vAPI.storage via SQLite 9 years ago
Deathamns 91ad0d65a8 Initial Firefox port (base, messaging, locales) 9 years ago
AlexVallat 8af9d7f361 Use a nsIWebProgressListener instead of a tabsProgressListener for location change monitoring 9 years ago
Deathamns 8c9382d4db Firefox: load content-scripts on extension start 9 years ago
Deathamns 9aaee014d4 Miscellaneous changes 9 years ago
Deathamns 9317615bc7 Firefox: improvements for content scripts 9 years ago
Deathamns 3646ecbeb2 Code styling 9 years ago
Deathamns e9b3b5bcd2 Firefox: new method for request handling
Now both nsIContentPolicy and on-http-* observers are used for net request
monitoring.

Reasons:
 - In many cases, nsIContentPolicy.shouldLoad is invoked twice for the same
   resource, because of the speculative parsing.
 - nsIContentPolicy.shouldLoad don't have information about the channel,
   so it can't redirect the request, nor change its headers, however
   on-http-opening-request can.

Also, local mirroring and inline-script blocking has been implemented.
9 years ago
Deathamns 24bc4c9f47 Remove duplicate 'use strict'; 9 years ago
Deathamns dced33ca44 Add license headers, plus some code styling 9 years ago
Deathamns bc199316be Firefox: implement toolbar button and popup 9 years ago
Deathamns 41f3579461 Firefox: blocking and content scripts for e10s 9 years ago
Deathamns 05f174ab97 Firefox: add basic blocking + some fixes 9 years ago
Deathamns ac201e2f8e Firefox: partial vAPI.tabs implementation 9 years ago
Deathamns 3b5826fe75 Firefox: implement vAPI.storage via SQLite 9 years ago
Deathamns 24163694f4 Firefox: implement content scripts 9 years ago
Deathamns efb4b98986 Initial Firefox port (base, messaging, locales) 9 years ago
gorhill beb70b8343 code review 9 years ago
gorhill a26c893339 this fixes #43 9 years ago
gorhill 73dc3ba2b0 removed spurious lines of code 9 years ago
gorhill 231afb565a translation work from https://crowdin.com/project/ublock 9 years ago
AlexVallat 75ac4b979e Changes following review 9 years ago
gorhill 22bad6201e translation work from https://crowdin.com/project/ublock 9 years ago
AlexVallat 822d78be1b More restrictive monitoring.
Probably doesn't make a difference, but at least theoretically more efficient.
9 years ago