Confirmed users, Bureaucrats and Sysops emeriti
3,599
edits
m (use cases enumerated, designs coming later tonight) |
(starting in on use cases) |
||
Line 9: | Line 9: | ||
# User does not already have a version of the extension installed | # User does not already have a version of the extension installed | ||
# User installs a locale pack for an extension that's already installed | # User manually installs a locale pack for an extension that's already installed | ||
# A new locale pack is made available using extension update system | # A new locale pack is made available using extension update system | ||
# User uninstalls an extension | # User uninstalls an extension | ||
Line 15: | Line 15: | ||
We plan to support use cases 1-4, but not to support use case 5 as we do not feel it is a common enough path to require first-class UI presence. For now we will point users with these requirements to extensions such as [http://benjamin.smedbergs.us/switch-locales/ Switch-Locales]. | We plan to support use cases 1-4, but not to support use case 5 as we do not feel it is a common enough path to require first-class UI presence. For now we will point users with these requirements to extensions such as [http://benjamin.smedbergs.us/switch-locales/ Switch-Locales]. | ||
The goal is to provide this functionality without any additional UI overhead in the extension manager. To do this, we propose that: | |||
* when a language pack is installed, it does not appear on its own in the list of installed extensions, but rather adds a locale code to the name of the extension (ie: "My Extension 1.00" would become "Mon Extension 1.00 [FR]") | |||
* when an extension is uninstalled, any associated language packs will also be uninstalled | |||
The following sections break down specific use cases. | |||
== User does not already have a version of the extension installed == | == User does not already have a version of the extension installed == | ||
The ideal support for this case would be that the system being used to publish the language pack will detect a user's declared locale and automatically offer the extension and language pack in a single XPI. | |||
If the language pack is provided without the base extension, then the UI should prompt the user saying that a required extension is missing. If enough information exists to fetch and install the base extension, the UI should prompt the user to do so. | |||
'''note:''' Unless the base extension is installed, the language pack should ''not'' be installed. | |||
== User manually installs a locale pack for an extension that's already installed == | |||
== A new locale pack is made available using extension update system == | == A new locale pack is made available using extension update system == |