NS_ERROR_NOT_INITIALIZED status in nsIHttpChannel · 2010-03-19 09:17 by Wladimir Palant
Dear Lazyweb! Do you have any idea why XMLHttpRequest might fail with channel.status being NS_ERROR_NOT_INITIALIZED? This seems to be happening consistently for some Adblock Plus users when downloading https://easylist-downloads.adblockplus.org/easylist.txt. This issue is happening on all platforms and across all supported Firefox versions (I see 3.0, 3.5, 3.6 in the logs).
Getting screen coordinates for an HTML element · 2010-01-31 02:27 by Wladimir Palant
getBoxObjectFor() is deprecated, we all know that. And there is
getBoundingClientRect() now which is much better anyway. But what should I do if I need the screen coordinates of an HTML element?
getBoundingClientRect() won’t provide them and translating doesn’t seem possible (
window.screenX is not the screen position of the window’s client area). Google found only a newsgroup discussion yet I already knew that popups can be positioned relative to a node automatically. I need to update the position of a popup that is already open and there doesn’t seem a way to realign the popup with its anchor node without closing it (at least not in Firefox 3.5).
Trying to get rid of "Author not verified" (or: Signing extensions with StartCom certificate) · 2009-07-07 21:47 by Wladimir Palant
Over the past few days I tried to get Adblock Plus builds signed and gave up again. Given that there is fairly little documentation on that topic, I though I would summarize my experience.
Different ways to force garbage collection · 2008-11-20 12:49 by Wladimir Palant
Yesterday I reported a Gecko bug where reproducing required the garbage collector to run. In the following discussion this useful snippet of code appeared:
window.QueryInterface(Components.interfaces.nsIInterfaceRequestor) .getInterface(Components.interfaces.nsIDOMWindowUtils) .garbageCollect();
Making modal dialogs work on Mac OS X · 2008-09-15 22:49 by Wladimir Palant
If you ever tried TomTom HOME, you probably noticed that its user interface is “unusual”. It tries to mimic the user interface of a navigation device meaning among others that all messages (“dialogs”) replace the entire window content and require you to dismiss them before you can continue doing whatever you have been doing. There are some advantages to that kind of user interface but it was also a constant source of irritation among our testers (and, no doubt, users). In particular, you could still use the menu despite the dialog, with strange results.
Filtering HTML code in Adblock Plus · 2008-09-11 18:54 by Wladimir Palant
Henrik Gemal blogged about a new feature in Firefox, extensions can now inspect and modify the response of HTTP requests before it gets to the sender. And the best news is, it is coming to Firefox 3.0.3 as well, so extension developers don’t need to wait a year before this feature can be used. Obviously, Firebug and Firekeeper developers want this — the former to display the response, the latter to prevent a malicious response from ever reaching the sender. However, it could be useful for Adblock Plus as well.
Web pages accessing chrome:// is forbidden · 2008-04-13 22:30 by Wladimir Palant
I didn’t believe that this would still be fixed in Firefox 3 but bug 292789 has landed. The timing could be better, having such a big change go in shortly before a release is certainly less than optimal — yet still, I think that we are much better off now than we were before.
Why "Save Page As HTML, complete" sucks · 2007-03-15 00:20 by Wladimir Palant
I read a forum question from an Opera user who was upset because Opera 9.10 now saves web pages “like IE and Firefox” – meaning saving them with all the included files. His problem was easily solved with a configuration change but it got me thinking. Generally this doesn’t seem to be such a bad idea, it allows you to open a saved web page and it will look exactly the same. So I tried to understand why this user was so upset and why I almost never use this feature myself. It seems there are three things.
Status of "immediate unblocking" feature · 2007-03-07 03:28 by Wladimir Palant
My post about finding a way to unblock items immediately when the filters change was probably too optimistic. I am finished coding the basics but I hit some problems in Gecko.
Recognizing third-party content · 2007-01-31 16:07 by Wladimir Palant
I have done all the preparation work so that now I can finally implement the $third-party filter option allowing to restrict filters to third-party or same-party content. This would be used for filters like
*/banners/*$third-party — if some webmaster is crazy enough to call the directory with site logos “banners” those still won’t be blocked. This filter will only block something coming from the directory “banners” on a different server.