Extension Manager UI

From MozillaWiki
Jump to: navigation, search

Please comment in the Talk page (use the Discussion tab above)

Tracked by: bug 329045

Goals & Objectives

Primary:

  • Improved discoverability
    • common actions for an addon are only available via the context menu.
  • Task driven UI as appropriate
    • when performing a task the ui should only present actions associated with the task (e.g. checking for updates should present ui associated with checking for updates, when showing the user available updates the ui should present ui associated with installing the updates, etc.
    • There is no clear separation between actions that apply to all addons displayed and an individual addon - this is in reference to the buttons along the bottom of the user interface two of which apply to a selected addon and one which applies to all addons.
  • Consistent / complete status messages
    • we use one element to provide all status messages. This prevents us from displaying multiple status messages when appropriate (e.g. an addon has an update and is blocklisted as well as several other combinations).
  • Accessibility
    • for example, we display an update now button for addons with updates within the list which allows tabbing to addons that are not displayed. This is to specifically call out that accessibility must be taken into account when designing the user interface.
  • Add support for addon types that are already defined but not supported by the user interface
    • specifically, locales and plug-ins were added for 1.5 though the user interface does not support displaying these types.
  • Improved theme support
    • the element used for status when viewing themes does not resize with the window unlike with extensions which prevents being able to read the complete theme's description and status message in several cases.

Secondary:

  • Extensibility
    • provide the ability for extension developers to add new views.

Planned Milestones

pre-Alpha 2 Design documented and there is buy in
Alpha 2 code complete and landed

Overview

Background

The Extension Manager user interface has not been updated significantly to keep up with new features and functionality that has been added since its initial inception. Besides adding capabilities to be leveraged by new features / functionality there are also usability enhancements that should be addressed with the primary one being discoverability.

Use Cases

  • New user (e.g. discoverability)
  • Application and extension locale management
  • Extension Blocklisted, Extension Dependency, etc. status messages

Functional Requirements

  • common actions / tasks should be clearly presented and discoverable
  • ability to present multiple status messages (e.g. operation, blocklisted, update available, dependency, etc.)

Plans & Design Documents

  • User Interface Design
  • There will be a documentation requirement if the secondary goal to be able to add views from extensions is completed.

API Changes Required

No API changes should be required though additional methods will be required.

Impact

The current design impacts the following areas of development

  • Application / extension locale management (see bug 285848) which in turn impacts inline spell check (see bug 329668) for Firefox 2.0.
  • Extension Blocklisting (see bug 318338).
  • Extension Dependencies (see bug 298497) which in turn impacts Application / extension locale management.

Extensions

  • this will make it much simpler to provide the correct status messages and thereby simplify adding new features to the Extension Manager that require status messages.

Localization

  • String changes / additions will be required

Update

  • No impact

See Also

  • N/A

Discussion & Implications

Caveats / What We've Tried Before

Security Implications

  • Improved status messages will more clearly display status messages involving security.

Privacy Considerations

  • N/A - nothing will be added by this project that should affect privacy