Details on a couple Firefox GSoC projects

1 April, 2012 § 2 Comments

Felipe and I have been getting a lot of questions about the Fullscreen Mode and Silverfox projects for Google Summer of Code. This blog post should hopefully answer any questions that you have about the two projects. There are many more projects that are being offered by Mozilla. Please take some time to get to know the various projects and find one that interests you.

Fullscreen Mode

The picture on the right is a mockup of the Fullscreen Mode theme. This Google Summer of Code project is to implement the Australis theme for fullscreen browsing.

What is part of the project:

  • A curved and clipped back button that is the full height of the toolbar.
  • The forward button should slide behind the back button when it is disabled, similar to the current theme. This feature is called a “conditional forward button”.
  • The address bar should be a fixed width. The tabs should flex to fit the remaining space.
  • The mockup shows the overflowed address fading out. This would be a nice touch, but is not required.
  • The navigation elements (back, forward, address bar) should be on the same line as the tabs.
  • A button to access the Firefox menu is located at the end of the toolbar.
  • There should be a button after the Firefox menu to exit fullscreen mode.

What is not part of the project:

  • The curved tab design (Australis tabs) is not part of this project. Those may or not be complete in time for the project, and are part of the overall Australis theme work that is ongoing.
  • Completing the work for Windows, OS X, and Linux. We are only asking that a student work on one of the platforms for this project, although we only have mockups for Windows and OS X. I would prefer to find a student who wants to work on the Windows theme.
  • The web page below the toolbar (hopefully that was obvious :)).


Silverfox is the codename of a new feature meant to be an operation mode targeted to beginner users who are being guided on learning how to use the web. In this mode, most settings should be locked down, preventing the user from mistakenly tweaking settings or installing unwanted add-ons. It’s not meant to be a tightly controlled, irreversible-without-password setting, but rather a feature that will make it harder to accidentally break or deteriorate the Firefox experience.

This project will touch many parts of the Firefox codebase. For example, we’d like:

  • the ability to restrict installing, disabling, modifying add-ons
  • the ability to restrict adding, modifying, restoring preferences in about:config
  • the ability to block access to Preferences/Options, or possibly only showing a subset of less dangerous preferences
    • for example, when Silverfox mode is enabled, users shouldn’t be able to change proxy settings
  • and the ability to restrict customizing the toolbars.

Work for this project can be done in steps by approaching each of the aforementioned requirements one at a time. We’re not sure yet how Silverfox would get enabled on a user’s system, but we’re open to hear ideas.

Tagged: , , , , ,

§ 2 Responses to Details on a couple Firefox GSoC projects

  • Caspy7 says:

    Wouldn’t it be less jarring to the user to resize the solid white square of a the address bar slightly (as Firefox currently does) rather than push over and resize all other elements to the right of it?
    The comment about the address bar being a fixed width makes me think anytime the conditional forward button appears everything will be shifting.

  • […] that is useful to have when a software is running in fullscreen mode (like a clock). We have had a preliminary mock-up for a while and it is the starting point for this […]

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

What’s this?

You are currently reading Details on a couple Firefox GSoC projects at JAWS.


%d bloggers like this: