Ehsan Akhgari's blog

First Persian Firefox builds available

The first Persian Firefox builds (built by Tinderbox) are available!  These builds, according to Persian Mozilla Dashboard are 86% percent complete.  Nearly all parts of the browser are translated.  The remaining things to translate include a number of security error messages and UI strings, and the installer (which is in fact translated, I'm just working on bug 305039 to make the installer Unicode, so that we can have a useful Persian installer).  These will hopefully be finished soon as well.

HTTP Accept-Ranges support improved

I thought I'd blog about this, hoping some web developers may find it useful.

Previously, Mozilla's HTTP protocol implementation did not check the presence of the Accept-Ranges response header.  The job of this header is to tell the client whether it can perform HTTP range requests, and if so, in what units should it express its range requests.  Practically, the only unit used by web servers is bytes, so this header's job in the real world is to tell the server whether it can perform range requests at all.

Testing in Mozilla talk

I gave a talk on Mozilla Software testing approach as part of my Software Testing course.  You can find the slides (built using S5) here.  I introduced a number of tools that we use for automated and manual testing, and also gave an overview on parts of the process employed to use the tests in real life.

You can grab the slides.  I hope that they'll be useful to you.

ABC Meme (or "Expose Yourself")

in

Started by Benjamin.  Here are my results.

Persian Firefox: Sneak Peak

Look what we're building!

Persian Firefox (فایرفاکس فارسی)

First Private Browsing extension

I did expect the community to get interested in extending the Private Browsing mode by developing extensions, but I didn't expect it to happen this soon!  I'm happy to announce that the first Private Browsing extension has been developed by the community member Kurt Schultz! This extension adds a toolbar and a status bar button to Firefox for quick access to the Private Browsing feature, and lets you toggle a few of the underlying preferences as a bonus!  Grab it while it's hot from AMO!

Prepare your add-on for Private Browsing

Private Browsing is one of the new features of Firefox which extension developers should start to handle in their extensions.  The API for this new mode is quite straightforward, and easy to use.  In addition, theme developers may want to style Firefox differently inside the Private Browsing mode.  That is also insanely easy to do.  In this article, I'm going to give you an overview of how the API works, plus with some sample code.  Note that what I'm explaining here is based the latest features landed on Mozilla trunk, and I don't expect any of them to break before the final release of Firefox 3.1, but we may land extra API support if add-on developers demand it, so make sure to leave your comments.

Don't leave a trace: Private Browsing in Firefox

Today, a major feature was added to the pre-release versions of Firefox 3.1, called Private Browsing.  I've been working for quite some time on this, so I thought it may be a good time to write about what this feature is and how to use it.

First bits of the Private Browsing patch landed

I'm pleased to announce that the first pieces of the Private Browsing feature have just landed on Firefox trunk!  This might not be something to get too excited about, since all of the landed code remains disabled for now, but it's a big breakthrough for me, considering the fact that I've been playing with this code since January!  Some of you may even remember that this feature was cut off Firefox 3 because of the fact that it was too big to take at that stage of Firefox 3 development, it will be included in the final release of Firefox 3.1.

Testing the cache service

I was trying to write a unit test for my modifications to the cache service as part of the implementation of private browsing, and the experience wasn't as smooth as I would have liked.  So, I decided to document my experience here.

Syndicate content