Confirmed users
954
edits
m (moved Firefox/Sprints/Jetpack Uplift Exploration/Notes to Firefox/Projects/Jetpack Uplift Exploration/Notes: They're actually projects) |
(fix Extension Manager Redesign link) |
||
(9 intermediate revisions by one other user not shown) | |||
Line 3: | Line 3: | ||
== Uplift Scope == | == Uplift Scope == | ||
This describes a ''potential'' ideal scope, if Jetpack were to be shipped as part of Firefox. | |||
'''Included''' | '''Included''' | ||
Line 28: | Line 30: | ||
== Subscription / Installation / Management == | == Subscription / Installation / Management == | ||
* Management through Extension Manager [[Firefox/ | * Management through Extension Manager [[Firefox/Projects/Extension_Manager_API|API]] and [[[[Firefox/Projects/Extension_Manager_Redesign|Extension Manager Redesign]] | ||
* Install & update comparable to current addons | * Install & update comparable to current addons | ||
Line 40: | Line 42: | ||
* URLbar icons | * URLbar icons | ||
* Site identity pane (Larry) | * Site identity pane (Larry) | ||
* [[Firefox/ | * [[Firefox/Projects/Doorhanger_notifications|Doorhanger notifications]] | ||
* Content context menu | * Content context menu | ||
* Statusbar panels (Note: may be removed in [[Firefox/Sprints/Windows_Theme_Revamp|Windows Theme revamp]]) | * Statusbar panels (Note: may be removed in [[Firefox/Sprints/Windows_Theme_Revamp|Windows Theme revamp]]) | ||
* Main menu (Note: may be removed in [[Firefox/ | * Main menu (Note: may be removed in [[Firefox/Projects/Windows_Theme_Revamp|Windows Theme revamp]]) | ||
* Main toolbar | * Main toolbar | ||
* Shortcuts | * Shortcuts | ||
Line 55: | Line 57: | ||
* [[Extension_Manager:UI_Update|UI update]] | * [[Extension_Manager:UI_Update|UI update]] | ||
* [[Firefox/ | * [[Firefox/Projects/Extension_Manager_API|API update]] | ||
=== Javascript / Sandboxing === | === Javascript / Sandboxing === | ||
Line 62: | Line 64: | ||
* Object.freeze() | * Object.freeze() | ||
** {{bug|492844}} - ES5: Implement Object.freeze, Object.isFrozen | ** {{bug|492844}} - ES5: Implement Object.freeze, Object.isFrozen | ||
* ChromeObjectWrapper (landed on trunk) | |||
=== Layout === | === Layout === | ||
Line 67: | Line 70: | ||
* Transparent iframes | * Transparent iframes | ||
** {{bug|235877}} - Iframe elements in XUL (like 'page' etc.) can not be made transparent | ** {{bug|235877}} - Iframe elements in XUL (like 'page' etc.) can not be made transparent | ||
** {{bug|130078}} - integrate iframe into chrome view hierarchy (link view managers / trees between chrome and content) | ** {{bug|130078}} - integrate iframe into chrome view hierarchy (link view managers / trees between chrome and content) | ||
* Lightweight iframes? Need some efficient way of sandboxing and displaying untrusted markup/code. | |||
* Scriptable HTML parser (@mozilla.org/xmlextras/domparser;1 only handles XML) | |||
=== Utility Libraries === | |||
'''Note:''' Not specific to Jetpack. | |||
Provide utility libraries similar to FUEL but for non-browser stuff. For browser-related functions, FUEL can be expanded. | |||
Examples: | |||
* OAuth | |||
* Logging | |||
* More convenience wrappers around commonly used XPCOM components. | |||
=== Native support for Content Scripts === | |||
Content scripts are JS scripts that run in content, but are provided by the browser, rather than by the website. This could be a potential first step in providing developers with native open-web tools to extend the browser. Currently this is provided by addons ([https://addons.mozilla.org/firefox/748/ Greasemonkey], and [[Labs/Jetpack/JEP/17|Jetpack has it planned]]). A technical exploration was done to see how Firefox could support this natively. | |||
'''Requirements''' | |||
* First-class support for content scripts | |||
* Must be secure - content space only, no chrome privileges | |||
'''Technical exploration''' | |||
* Success | |||
** But needs support from new Extension Manager | |||
* Would work as both a standalone feature, and a platform for Jetpack (and other addons) | |||
'''Outcome''' | |||
* Technically sound, but need more discussion with Jetpack team | |||
== Jetpack requirements == | == Jetpack requirements == | ||
Line 89: | Line 122: | ||
'''New Extension Manager API and UI''' | '''New Extension Manager API and UI''' | ||
* https://wiki.mozilla.org/Firefox/ | * https://wiki.mozilla.org/Firefox/Projects/Extension_Manager_API | ||
* https://wiki.mozilla.org/Extension_Manager:UI_Update | * https://wiki.mozilla.org/Extension_Manager:UI_Update | ||
* Jetpacks would fit great as first class citizens here, alongside current addons. The new API will make that possible, and the UI will make it doable. | * Jetpacks would fit great as first class citizens here, alongside current addons. The new API will make that possible, and the UI will make it doable. | ||
Line 95: | Line 128: | ||
'''Windows Theme Revamp''' | '''Windows Theme Revamp''' | ||
* https://wiki.mozilla.org/Firefox/ | * https://wiki.mozilla.org/Firefox/Projects/Windows_Theme_Revamp | ||
* This includes the possible/probable removal of the menubar and statusbar. These are the 2 most common areas for addons to extend. Even without these being removed, its clear that the browser window needs to provide more easy ways for things to be added to the UI, in areas that make sense. | * This includes the possible/probable removal of the menubar and statusbar. These are the 2 most common areas for addons to extend. Even without these being removed, its clear that the browser window needs to provide more easy ways for things to be added to the UI, in areas that make sense. | ||
'''Doorhanger notifications''' | '''Doorhanger notifications''' | ||
* https://wiki.mozilla.org/Firefox/ | * https://wiki.mozilla.org/Firefox/Projects/Doorhanger_notifications | ||
* New UI to hook into. | * New UI to hook into. | ||