Firefox/Projects/PanelImprovements

From MozillaWiki
Jump to navigation Jump to search

Summary

Improve panels in a number of ways. See XUL:Panel_Improvements for specifics of which features would be useful.

Current Status

The following steps are implemented and require testing:

  • Basic titlebar support on all platforms is working OK, and moving the panel around works fine. Support for normal versus thin titlebars is dependent on what the native platform provides, and is still not fully investigated (bug 552982)
  • Some coordinate inconsistencies exist which may be due to the way that each platform stores its window bounds and supply them to specific functions. This will take a couple of days to map out.
  • Being able to retrieve popup coordinates within a popup showing event is almost complete but I need to investigate how layout flushing affects this as commented in the bug. (bug 558072)
  • basic arrow panel support (unstyled) has started and the arrow adjusts its location depending on the popup location.

Next Steps

  • titlebar labels (should be easy)
  • thin and normal titlebars (relatively easy)
  • seperate hiding and hidden steps for Mac (this is a multiple day task)
  • panel docking
    • dock/undock button on titlebar (harder)
    • dock/undock api (easy)
    • dock events (easy)
  • special titlebar when docked (harder)
  • background drag to move (easy)
  • create a binding for arrow popups with an arrow pointing to the anchor (mostly theme work)

Related Bugs

Bugs are pointed to by XUL:Panel_Improvements.

Team

Enn

Designs

Goals/Use Cases

This is a tentative list of how we may use panels in Firefox's UI in the future:

  • [currently in use] Bookmark properties
  • [currently in use] Site identity
  • Context menu on hyperlink > "Bookmark This Link"
  • Context menu on bookmark > "Properties"
  • Notification of site level events (password manager, geolocation, popups blocked, xpi install, etc.)
  • Download progress (Limi is the main contact, he'll post details soon)
  • Items on the extension bar, both jetpacks and converted traditional toolbars (Boriss is the main contact)
  • Test pilot notifications from the extension bar, not technically part of Firefox but nonetheless a good example of extensions using panels for parts of their UI.
  • Firebug would like to have some floating tool palette panels.

Non Goals