86
edits
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
=Goals= | = Goals = | ||
* Integrate the most recently used personas (number TBD) into the themes list | *Integrate the most recently used personas (number TBD) into the themes list | ||
* Allow switching between personas and themes as seamlessly as possible | *Allow switching between personas and themes as seamlessly as possible | ||
** Switching between the default theme or any persona and another persona will not require a restart | **Switching between the default theme or any persona and another persona will not require a restart | ||
** Switching to or from any non-default theme will require a restart | **Switching to or from any non-default theme will require a restart | ||
=Design= | = Design = | ||
The personas will appear inline in the themes list. Preview images will be displayed in the preview pane and we'll offer the same options for them as we do for normal themes (Use Theme, Uninstall, About, Homepage) | The personas will appear inline in the themes list. Preview images will be displayed in the preview pane and we'll offer the same options for them as we do for normal themes (Use Theme, Uninstall, About, Homepage) | ||
The installation experience for personas will be: | The installation experience for personas will be: | ||
*user browses to a site that hosts a persona | |||
*if the site is whitelisted, rolling over the persona link will preview, clicking will install the persona | |||
**www.getpersonas.com and addons.mozilla.org will be whitelisted automatically | |||
*if the site is not whitelisted, clicking will verify that the site is allowed to install software before installing the persona | |||
= Current Progress = | |||
The patch is complete and landed, waiting for baking before landing on the 1.9.2 branch. | |||
== Bugs == | |||
*Tracked in {{bug|510909}} | |||
== Implementation Plan == | |||
''' | '''P1''' | ||
''' | *Support the basic DOM events '''(Dao - <s>{{bug|511771}}</s>, done)''' | ||
* | **Install event | ||
** | **Preview event | ||
** | **Reset event | ||
* | *Only allow installs from whitelisted sites '''(Dao - <s>{{bug|511771}}</s>, done)''' | ||
**addons.mozilla.org | |||
**www.getpersonas.com | |||
*local caching of current persona '''(Dao - <s>{{bug|516013}}</s>, done)''' | |||
*Periodic update check '''(Dao - {{bug|520346}}, ETA ???)''' | |||
*Performance testing (feature should be Ts/Txul neutral without a persona applied, and have a minimal, well-understood impact with one applied) '''(Who's going to own this?)''' | |||
*EM exposure of installed personas, recent personas '''(Dave - <s>{{bug|510909}}</s>, done)''' | |||
'''P2''' | |||
*Fast theme switcher UI | |||
* | *Clearer linkage from prefs dialog to EM themes UI | ||
*Linkage from EM -> AMO personas gallery | |||
*EM exposing authorship/homepage details | |||
'''P3''' | |||
the | *Supplemental images | ||
**Dialog backgrounds | |||
**Theme the firefox start page | |||
*Support the notion of "favourites" (persistently stored, auto-fetched based on JSON feed contents) | |||
== Server/Backend Changes == | |||
Needs: | If we're using the JSON object presented in the DOM event, instead of the JSON feed, then we need: | ||
* preview image | |||
*API to request the latest/up-to-date JSON object for a persona, given an ID | |||
http://server/static/1/0/34510/index_1.json | |||
the two single digits in the middle are the second to last and last digits of the id. | |||
We also talked about needing some extra features in the JSON object: | |||
Needs: | |||
*preview image | |||
if you want to use the current preview image, it's | if you want to use the current preview image, it's | ||
/static/1/0/34510/preview.jpg | /static/1/0/34510/preview.jpg | ||
*32x32 icon | |||
/static/1/0/34510/preview_small.jpg | |||
Note that the code to generate these is not live yet. We'll also need to go through the old personas and generate these files. | |||
*summary text | |||
Will be in the json object as "description" | |||
(also needs to be checked in, pushed, then everything has to be rebuilt) | |||
Wants: | |||
* | *isDynamic/updateInterval (is this expected to update regularly | ||
*version | |||
== Infrastructure Requirements == | |||
*[[Firefox/Projects/Personas Uplift Exploration/Capacity|Capacity planning]] | |||
*[[Firefox/Projects/Personas Uplift Exploration/Code Cleanup|Code Cleanup]] | |||
= Planning Meetings = | |||
'''Planning Group''' | |||
[[Firefox/Projects/Personas Uplift Exploration/Weekly Meetings|Agenda 10.01.09]] | |||
*[[Firefox/Projects/Personas Uplift Exploration/Weekly Meetings Notes 10.01.09|Notes 10.01.09]] | |||
[[Firefox/Projects/Personas Uplift Exploration/Meeting Agenda 10.08.09|Agenda 10.08.09]] | |||
*[[Firefox/Projects/Personas Uplift Exploration/Weekly Meetings Notes 10.08.09|Notes 10.08.09]] | |||
* [[Firefox/Projects/ | |||
[[Firefox/Projects/Personas Uplift Exploration/Weekly Meetings 10.15.09|Agenda 10.15.09]] | |||
[[Firefox/Projects/ | |||
'''Legal''' | '''Legal''' | ||
[[Firefox/Projects/ | [[Firefox/Projects/Personas Uplift Exploration/Legal Meeting 10.13.09|Kickoff 10.13.09]] | ||
[[Firefox/Projects/Personas Uplift Exploration/Legal Meeting 10.20.09|Kickoff 10.20.09]] | |||
edits