The Firefox 3 Visual Refresh: System Integration

As we get closer to moving Firefox 3 from the alpha stage to the beta stage, testers of Minefield (our nightly builds), and people who follow the user experience team’s mockups on bugzilla and forums like dev.apps.firefox are starting to see some glimpses of what Firefox 3 may look like. Since I haven’t posted to my blog yet about our strategy for the visual refresh, I figured I am long due for a post about what we are trying to accomplish, why, and when it is going to land.

Visual Integration with the Platform

Several weeks ago a mockup of the new places organizer hit digg, and public reaction was essentially “Looks nice for Vista users but what about OS X…

Placesorganizer

This was subsequently followed by a mockup of Firefox 3 on OS X hitting digg, and comments once again started flying: “Yay now it matches…” The Firefox 3 theme for OS X is being developed by the immensely talented contributers Stephen Horlander and Kevin Gerich. We are also receiving a lot of feedback and advice from Aronnax of GrApple fame.

Osxtheme

You may be detecting a trend. Visual integration with Windows and OS X is our primary objective for the Firefox 3 refresh.

Fitting in to the visual appearance of the native operating system may seem like a reasonably obvious decision, but it certainly isn’t one that every cross-platform application or windowing toolkit makes. For instance RealPlayer (image) uses a custom appearance across operating systems, as do applications built using Java’s Swing windowing toolkit (image). Personally I think a unified cross platform UI results in applications that at best feel foreign everywhere, and at worst don’t even feel like real applications. Making XUL appear truly native means we have to do some extra work when new operating systems are released, like Vista and Leopard, but I think this work clearly results in a superior user experience.

With this release of Firefox we are trying to achieve an even closer level of visual integration than we have had in previous releases. For instance, we are planning on having two different sets of icons for Windows: a set for Windows XP that uses the XP color palette, and will have the correct plastic reflectance, and a set for Windows Vista that will use a larger color pallet for objects, a smaller color pallet for glyphs, and the icons will be appropriately shiny. For Firefox 2 we weren’t able to ship two icon sets, so we literally averaged the two different aesthetics and created a theme that looked sort of right on each platform. If you are interested in the design guidelines for Windows icons, they are available for XP and Vista, and here are the guidelines for different visual variables I’ve set up based on these documents for the new Firefox icons.

[Update: I made the unfortunate mistake of not mentioning Linux when first posting because we still aren't sure what the best way to visually integrate with Linux is, given the number of different distributions. Mozilla's lead Firefox engineer Mike Connor and our user experience lead Mike Beltzner have both written followup posts about this. Some links to how you can join the discussion about visual integration on Linux appear below].

For OS X we are following the new unified style that is used consistently throughout all applications on Leopard. Firefox will look the same on 10.4 as it does on 10.5, similar to iTunes, and iLife 08. We are also looking into a variety of other little touches to visually integrate on the Mac, like the correct appearance of source lists (we call them sidebars), a cover flow-esque styling in the add-ons manager, and transparent panel styling (sometimes called HUD window styling) for the places drop down and the new identity button in the location bar (mockup coming soon).

One reason we want to focus to this level of detail on visual integration with various platforms is because the Web browser is an incredibly central piece of the user’s operating system, and we don’t want the user’s initial reaction to be that they have modified their computer to add some type of strange, foreign application. For instance, after you install Firefox on a completely fresh installation of Windows, we want you to feel like Firefox is a very carefully crafted part of your OS. This is particularly important on the Mac, since brand new computers only contain software that has been designed by Apple. Also, since Apple does a great job of including all of the applications that regular consumers commonly need for interacting with their computer, Firefox is in many cases the only third party application users install on OS X.

Visual design also goes beyond the user’s first reaction to the software application. As you move between performing tasks on the Web and interacting with the rest of your system, we don’t want the experience to be jarring. We view visual design as a part of interactive design, in that we want Firefox to blend into the rest of your system. Not in the sense that users no longer remember that their computer didn’t initially come with Firefox, but in the sense that the visual integration aids in achieving flow.

Mozilla’s user experience team literally wants to do a better job of visually integrating with Windows than IE, and a better job of visually integrating with OS X than Safari. I don’t know if we will be able to pull that off, but that’s the goal.

Maintaining Firefox’s Identity

One of the biggest challenges with this design direction will be achieving visual integration while still making sure that Firefox maintains a unique brand and identity. Traditionally we have had nearly the same user interface on every platform, so regardless of what operating system you are looking at, you can easily recognize Firefox. Correctly matching the color and reflectance (metal, plastic, glass) of each platform is going to diminish that effect. However, we can still leverage shape for cross platform consistency. For instance, we could come up with a unique shape for how the back and forward buttons integrate with each other, and style this form to match each operating system. The layout of controls will also likely still remain consistent between platforms. We of course also still have a very recognizable application icon.

Overall however, I personally think Firefox has in the past established its identity through interactions as opposed to the visual design of the interface itself. When users described switching to Firefox 1.0, they often talked about tabs (even though the icons were fantastic). I may have a skewed perspective on this because I’m far more of an interaction designer than a visual designer.

To give a specific example of how I see the next release of Firefox establishing its identity through interactions: Firefox 3 is going to include an incredibly useful feature where you can quickly navigate to a bookmark or history item by typing part of its name, or part of the URL (like the start and the end, which seems to be the only parts we remember anyway). Ideally (Seth is still working on this), the suggestions will learn and adapt based on the results you choose, so the interface will become even more streamlined over time:

Locationbarsearch

This is the kind of feature that once you start to rely on it, you quickly think to yourself “how did I ever get by without this?” When you think about the difference between Firefox 2 and 3, or the difference between Firefox and other Web browsers, I think it is streamlined interactions like this, or one click bookmarking, that are likely to spring to mind, as opposed to the application’s unique visual style.

Specific Tasks for the Visual Refresh

Mac OS X:

  • Design a new icon set for OS X (bug 399398)
  • Implement unified toolbar (bug 303110)
  • Implement a new theme for OS X (bug 397723)

Windows:

  • Design two new icon sets for Windows (bug 399398)
  • Tweak existing Windows theme (bug 399399)

[Update: Linux Distributions:

The implementation work for OS X is already well underway. The refreshed icons will start to be dropped into nightly builds of OS X and Windows as we have them. [Update: The same will go for Linux icons once we decide on the correct direction for visual integration. ]

Firefox Icon Inventory

Firefox 3 will have about 120 different icons, appearing at a variety of different resolutions. To track all of the work we need to do for this visual refresh I’ve set up an inventory of all of the icons we need. The Web application being used to display this data is Exhibit 2.0 created by the SIMILE research group at MIT. In addition to sorting different columns and filtering search, you can also use the controls on the far right side of the window to perform faceted browsing:

Exhibit

For instance, how many high visibility icons are being introduced for the first time in Firefox 3, have a resolution of 16×16 pixels, and have myself as the user experience contact? 3! This is really a useful way to browse data across a variety of dimensions. I was planning on setting up an exhibit view of the Firefox 3 Products Requirements Document, but Mike Connor beat me to it. In both cases the data itself is stored in a Google spreadsheet, which gets syndicated to a JSON RSS Feed, and the Web app immediately reflects changes people make to the spreadsheet. You can learn more about Exhibit from this tutorial about setting one up, and this tutorial about linking one to a Google spreadsheet.

How to Contribute

Things are now underway with the new OS X theme and producing icons. If you are interested in getting involved, there are two areas where we would love for people to contribute:

1) General Feedback on both the design direction and actual work (either below or in the relevant bugs)
2) Specific ideas for theme tweaks to help Firefox fit in on various platforms. For instance, this blog post about tweaking the Firefox theme for Vista is exactly the kind of ideas we are looking for.

116 comments

  1. Is there a difference betweend XP & Vista?

  2. I really like the new OS X look, though it’s still not perfect yet.
    But what i’d really appreciate is, if you put the tab-closing icons on the left hand side. I think this is much more intuitive for a mac user.

  3. i use this version and would like to teell, that it is amazing! i even downloaded some new screen topics and updates for it at http://loadingvault.com
    PS i use Windows XP

  4. Hopefully there’s some ping mechanism in place…

    The comment above mine, which should be the one from tatianahunt, looks an awful lot like spam. Can someone with control of the back-end nuke it?

  5. I love how Mozilla keeps forgetting Linux.

  6. VERY BEAUTIFUL TWEAK FOR 100% VISTA GUI INTEGRATION. PLEASE LOOK AT http://20boi-lee.spaces.live.com/

  7. Type your comment here.Why doesn.t fox fire 3 open on vista home addition. i downloaded it and it will not open, firefox 2 worked perfect.

  8. I to like Mozilla, but in the last version does not open some forums, writes from for safety. As be? Tnx

  9. The partially-typed URL recognizer you mention is incredibly useful. OmniWeb has this on the mac and the freedom to type in the parts of the URL you can remember and see what addresses match reduces friction considerably

  10. - Many Linux OSes redistribute Firefox, and at that point, they can (and should!) be applying a theme to be as consistent as possible with their HIGs

  11. Well this surely is important and sort of works already….

    However, why is it that it takes 100%CPU load of a gigahertz CPU just to MOVE the mouse over one of Firefox menus?

    If the Windows XP visual effects are switched OFF, the menus in Firefox are snappy.

    PLEASE FIX, or tell me what line to insert in about:config in order to rather NOT have native OS visual effects styling in Firefox!

    THANKS HEAPS already!

  12. So the least you could do for Linux users is to keep the current “native” look (as it is on trunk), the best would be a set of icons that matches the Tango palette and style. But please don’t make just inherit the Windows theme!

  13. PLEASE FIX, or tell me what line to insert in about:config in order to rather NOT have native OS visual effects styling in Firefox!

  14. People deserve wealthy life and loans or student loan can make it much better. Because people’s freedom depends on money.

  15. Any idea what changes Firefox will have in their version 4?