Firefox/Projects/New Theme
Overview
Sprint lead: shorlander
Sprinters: faaborg, limi, (martell)
Timeframe: 2 weeks (beginning 2009/07/13)
Description: Exploring a revamp of the Windows theme in evolutionary phases. Identifying current issues and weaknesses. Focus on modernizing and streamlining.
Current Theme Issues
Now has its own page: 3.0 Windows Default Theme Issues
Visually Appealing Windows Applications
Visually Appealing Windows Applications
Goals
General
- Streamline UI Elements
- Reduce Visual Footprint
- Modernize Look and Feel
- Retain Visual Integration While Still Being Attractive
Design
New theme implementation should be accomplished in two phases.
Mockups
- 4.0 Mockups: Firefox/4.0 Windows Theme Mockups
- 3.7 Mockups: Firefox/3.7 Windows Theme Mockups
Short-Term (Firefox 3.7):
Lightweight changes. Mostly style and texture. Some element shift/removal.
- Make use of Aero Glass
- Combine Stop and Reload (Separate Stop and Reload buttons in Customization dialog)
- Hiding of MenuBar
- Sort and Trim Menu Items
- Make use of Page and Tools buttons
- Move "Home" button to Home Tab
- Changes to the TabBar to make it more streamlined
- Shift towards more unified look across Windows variations(while still retaining platform look & feel "spirit")
- Less "bright and colorful" icons
- More tangible button appearance
- Perhaps more glyphs
- General icon cleanup/polish
Long-Term (Firefox 4.0):
(Updated)
Major changes. New UI elements, removal and/or relocation of traditional elements.
- Combine Reload/Stop/Go
- Move Reload/Stop/Go to the LocationBar
- Remove StatusBar
- Relocate StatusBar Content
- Combine Location and Search
- Addition of thin progress bar (tied to LocationBar in active tab and top of tab for background tabs)
- Possibly move tabs on top, above main toolbar. (option to move back underneath navigation bar and possibly left or right as well)
- Remove the bookmarks bar(if never user altered)
- Addition of tab sidebar
- Even less system native styling
- Download notification overlay UI
Platform Capabilities
These are all things that we would need to be able to do to create the theme changes that have been mocked up. As new limitations emerge I'll add them to this list as well.
All Platforms: General
- bug 513157 Ability to draw the title bar ourselves (possibly tabs, weave, OS theme integration, personas)
- bug 513158 Josh will look into this more for OS X
- bug 513162 Windows: talk to Jim or rstrong
- bug 513159 Linux: only gnome for overlaying the title bar? perhaps consider dropping, need to talk to karl tomlinson, zwol
- Additional OS theme resource extraction (are there things we should expose to the platform from the new OS themes?)
- Nothing comes to mind right now on things that are available
- Full OS theme detection (reduce our reliance on extraction)
- Not a problem, just need to actually do it
- Icons: all icons are in toolkit, about:icons, icon protocol
- Every agrees we should do it, just need to get it done
- Colors: about:colors, single file with all hard coded colors, new primitives (moz-red)
- Dao got started on doing this, it's a build time thing
All Platforms: Customization
- Ability to have multiple instances of the same control in the customization palette
- Not a problem, just need to actually do it
- Ability to change the appearance of a control based on its location relative to other controls on the toolbar
- Possible, but a lot easier to just do it based off of the immediate right and left items. We can go farther than that but it starts to get intractably complex.
Windows
- Ability to package multiple themes (XP, Vista, 7) instead of relying on chrome overrides
- Showing both in the theme manager might be difficult, need to follow up on the
- Ability to package different .ico files for different versions of Windows
- First icon embedded in the firefox.exe, so we would have to have different exe files.
- However, we can control the icon used for shortcuts (start menu, quick launch, desktop) so that very well could be good enough, especially if we are drawing our own title bar so can use whatever
- bug 506124 Glass support (already well discussed and on track, but a platform capability nonetheless)
- Some interesting cases with personas bug 513170 and also private browsing bug 513418