One of the most often requested features in the private browsing support for Firefox has been the ability to open a private window without needing to close the entire session. Over the past 19 months, we have been working on a plan to rewrite the private browsing code to make it possible to open a private window without needing to close down the entire non-private session, and today, I'm happy to announce that we now have the first experimental builds with this feature ready for testing. First of all, let's look at a few screenshots:
Shopping for an engagement ring in a private window, with a news site open in a normal window
You can download the experimental builds for the various desktop platforms here:
These experimental builds have a number of known issues that we're working on.
- The download manager UI is not hooked up yet (bug 801232), which means that the download panel and the download manager only show your non-private downloads.
- The social UI is enabled for private windows (bug 808215)
- The geolocation token used for websites asking to know your location is not correctly separated for private and non-private windows (bug 769285)
- Permanent private browsing mode's UI is going to change (bug 801823)
- A bunch of other UI work remains to be done.
Under the hood, implementing this feature meant that instead of having a single value representing the global private browsing mode throughout the application, we now have one value per each document that the browser loads, and we made sure that when we're about to store a piece of information which can reveal traces of your browsing history, we check that value and decide whether we should do that based on the current privacy state of a document. This seems like a simple idea, but there was a lot of effort involved in rearchitecturing the various components involved to make this possible.
Because this is an extremely big change, we really need to hear your feedback. Please download these builds, and let us know if some feature is not working properly, or if you find traces from your private browsing session on your hard disk. Please note that while we've taken a lot of care to make sure that these builds do not in fact leave traces from your browsing on your local disk, it's possible that there are bugs which we have missed, so please don't use these builds to browse anything highly sensitive.
We're planning to work on the remaining pieces hard to make sure that this feature gets in a future version of Firefox for desktop, and your testing really helps us here. Once we address the major remaining issues, we're planning to turn this feature on in Nightly, and at that point we will safely upgrade these builds to the regular Nightly channel so that you can continue testing the latest and greatest features of Firefox as they're introduced. If you're interested to follow along this project, see the tracking bug.
Last but very least, this project was made possible by the continued help of many people in the Mozilla community, and is one of the best examples of collaboration between the community members that I've seen over the years. I'd like to thank the following people for their help in this project (hope that I'm not forgetting anyone.)
- Mario Alvarado
- Saurabh Anand
- Bellindira Castillo
- Andres Hernandez
- Diana Koenraadt
- Raymond Lee
- Chris Lord
- Hessam Salehi
- Eric Wong
Oh, and of course a special thanks goes to Josh Matthews who was involved in the planning and implementation phases and did some heroic work to make this a reality!