Extension Manager UI: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
mNo edit summary
m (Reverted edit of Hznn, changed back to last version by RyanJones)
 
(35 intermediate revisions by 4 users not shown)
Line 1: Line 1:
''Please comment in the Talk page (use the Discussion tab above)''
Tracked by: [https://bugzilla.mozilla.org/show_bug.cgi?id=329045 bug 329045]
Tracked by: [https://bugzilla.mozilla.org/show_bug.cgi?id=329045 bug 329045]


==Current Issues==
= Goals & Objectives =
* There are multiple informational messages all sharing the same UI space (e.g. description, update check, update available, extension dependencies, extension blocklisting, incompatiblility, etc.).
Primary:
* The update now button doesn't scroll the related item into view when tabbing.
* Improved discoverability
* Often used commands for managing a selected item are not easily discoverable.
** common actions for an addon are only available via the context menu.
* The UI is type specific (e.g. Extensions and Themes) which prevents us from checking and installing updates for items of different types in one window.
* Task driven UI as appropriate
* The UI is not task driven in that we show commands for performing actions that have no relation to the current operation at hand.
** 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.
* Due to limited UI space in the command bar there is a mix of commands for a selected item and for all items (e.g. options, uninstall, and find updates) and this space would be better utilized for commands that apply to all items.
** 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.
* There is no UI for managing the two new nsIUpdateItem types of locale and plugin. These were created for Firefox 1.5 but the existing UI was never modified to support them.
* 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 ==
{| border="0" cellpadding="3" width="100%"
|-
! align=right valign=top width="15%" | pre-Alpha 2
| Design documented and there is buy in
|-
! align=right valign=top width="15%" | 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 ==
* [[Extension_Manager_UI:User_Interface|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 [https://bugzilla.mozilla.org/show_bug.cgi?id=285848 bug 285848]) which in turn impacts inline spell check (see [https://bugzilla.mozilla.org/show_bug.cgi?id=329668 bug 329668]) for Firefox 2.0.
* Extension Blocklisting (see [https://bugzilla.mozilla.org/show_bug.cgi?id=318338 bug 318338]).
* Extension Dependencies (see [https://bugzilla.mozilla.org/show_bug.cgi?id=298497 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

Latest revision as of 10:46, 25 November 2006

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