Adblock Plus and (a little) more
The future of Element Hiding Helper · 2012-01-19 12:08 by Wladimir Palant
The Adblock Plus roadmap currently has a bullet point “Integrate Element Hiding Helper into Adblock Plus”. After adding Page Inspector support to Element Hiding Helper today I think that I’m confident about what exactly will be integrated there.

Using Page Inspector in Firefox 10 and higher to hide elements · 2012-01-19 11:51 by Wladimir Palant
Firefox 10 will introduce a new Page Inspector feature, you can read more about it here. This feature allows selecting elements a lot better than the current Element Hiding Helper. You can either right click an element and choose “Inspect Element” – the element will be selected in the Inspector and you will be able to click up/down in the hierarchy line at the bottom. Or you can choose “Inspect” from the Web Developer menu, this will let you select an element similarly to how you would do it with Element Hiding Helper. Once you click an element the selection is fixed, you can click the “Inspect” button to continue selecting. Starting with Firefox 11 there will also be a very impressive 3D View, something that was previously provided by the Tilt extension.
Element Hiding Helper 1.2b.372 will now add an “Hide with ABP” button to the inspector toolbar. This allows you to select an element with the Page Inspector and then click this button to open rule composer. If you use a pre-release Firefox version — please test this feature. Element Hiding Helper 1.2 should be released in a week, in time for Firefox 10 release.
In other news, all issues related to making Element Hiding Helper restartless should have been resolved by now. If you experience any issues, please comment in this post or create a forum topic.

Faster extension development cycle: install changes automatically · 2012-01-13 16:33 by Wladimir Palant
The usual extension development cycle is less than optimal: change something, create a new extension build, install it in the browser (gonna love warnings), restart the browser, finally test it. I don’t like repeating this cycle all the time and so in the past years I’ve been using a test environment in which most extension files are loaded directly from my source code checkout (thanks to a manipulated chrome.manifest
file). With this test environment many changes could be tested by simply reopening the extension window, for others you would restart the browser.

Adblock Plus 1.2 (Beta) for Google Chrome™ released · 2012-01-10 11:44 by Wladimir Palant
Install Adblock Plus for Google Chrome™
Major changes
- Better blocking thanks to webRequest API (requires in Chrome 17).
- Changed user interface for filter subscription management (an intermediate step towards porting our Firefox user interface).
- Improved “Add filter” dialog, safe from being manipulated by the web page and with filter editing.
- Filter data is being stored using File System API, file format identical to Firefox.
- Using the same algorithm for filter subscription updates as in Firefox (proper handling of expiration intervals, download mirrors etc).
- Added support for subscribing from web pages via
abp:
links. - Proper handling of
$third-party
filter options, top-level domains like co.uk are now being considered. - No longer putting all our element hiding rules into the document’s DOM.

Adblock Plus 1.2 for Chrome release candidate available · 2012-01-09 14:56 by Wladimir Palant
The current development build (Adblock Plus 1.1.4.757 for Google Chrome, the non-experimental version) is a release candidate for Adblock Plus 1.2. It got a bunch of changes over the last few days, mostly polishing:
- Options: Fixed displayed subscription download time after a filter update.
- Fixed content script functionality in Chrome 18.
- Fixed: Two “Add filter” dialogs might get opened at a time, in that case the first dialog becomes dysfunctional.
- Fixed third-party checks when not using webRequest API.
- Removed work-around for WebKit’s image loading bug (fixed in Chrome 16).
- Updated user interface translations from Adblock Plus/Firefox.
- Updated to current versions of code modules from Adblock Plus/Firefox.
- Updated to current jQuery and jQuery UI versions.
The bigger (and older) changes in this version:
- Better blocking thanks to webRequest API (only in Chrome 17 or with the experimental builds).
- Changed user interface for filter subscription management (an intermediate step towards porting our Firefox user interface).
- Improved “Add filter” dialog, safe from being manipulated by the web page and with filter editing.
- Filter data is being stored using File System API, file format identical to Firefox.
- Using the same algorithm for filter subscription updates as in Firefox (proper handling of expiration intervals, download mirrors etc).
- Proper handling of $third-party filter options, top-level domains like co.uk are now being considered.
- No longer putting all our element hiding rules into the document’s DOM.
There will be a release shortly, please report any issues you notice.

Raymond Chen quote of the day · 2012-01-05 19:59 by Wladimir Palant
I regularly use a program that doesn’t follow this rule. The program allocates a lot of memory during the course of its life, and when I exit the program, it just sits there for several minutes, sometimes spinning at 100% CPU, sometimes churning the hard drive (sometimes both). When I break in with the debugger to see what’s going on, I discover that the program isn’t doing anything productive. It’s just methodically freeing every last byte of memory it had allocated during its lifetime.

Diagnostics 1.2 for Adblock Plus released · 2012-01-05 10:51 by Wladimir Palant
Install Diagnostics 1.2 for Adblock Plus
- Made Diagnostics install/uninstall without requiring a browser restart.
- Added context menu to copy item’s address and filter.
- Dropped support for old application versions (at least Firefox 8, Thunderbird 8 or SeaMonkey 2.5 required now).

Adblock Plus 2.0.3 released · 2012-01-05 09:54 by Wladimir Palant
- Added a way to disable automatic filter subscription updates by means of a hidden preference.
- Fixed: Blocking from context menu sometimes doesn’t work if the context menu has a submenu.
- Fixed: Tabs on Flash and Java sometimes disappear before they can be clicked.
- Filter Preferences: Fixed the default width of the “Enabled” column.
- Blockable items: Fixed “Disable filter on site” feature.

Element Hiding Helper: the restartless edition · 2012-01-04 14:00 by Wladimir Palant
Starting with Element Hiding Helper 1.2a.361 the Element Hiding Helper extension installs and uninstalls without a browser restart as well. You can also enable or disable Element Hiding Helper immediately in the Add-ons Manager. However, you will still need to restart your browser when updating from an older extension version because this older version cannot shut down while the browser is running. As with the Diagnostics extension, a reasonably new application version is required (at least Firefox 8, Thunderbird 8, SeaMonkey 2.5), old versions are no longer supported.
Another important change: Element Hiding Helper will no longer warn you if Adblock Plus isn’t installed, we will instead rely on AMO to communicate this to users. One reason for removing this check is that Adblock Plus should also become restartless in future which will make checking for its presence a lot more complicated.

Measuring the memory use of an SDK (Jetpack) based add-on · 2012-01-04 11:37 by Wladimir Palant
Add-on SDK 1.2.1 added a nifty feature: starting with Firefox 9 the memory usage of add-ons built with the SDK is visible in about:memory
. However, if you actually try to use this feature you get lost in the sheer amount of compartments. Each module gets its own compartment and the SDK has lots and lots of them. This even prompted a user to report “zombie compartments” caused by my only SDK-based add-on so far.
