Features/Platform/Chrome-only Plugins
Status
Chrome-only plugins | |
Stage | Feature Inbox |
Status | ` |
Release target | ` |
Health | OK |
Status note | ` |
{{#set:Feature name=Chrome-only plugins
|Feature stage=Feature Inbox |Feature status=` |Feature version=` |Feature health=OK |Feature status note=` }}
Team
Product manager | ` |
Directly Responsible Individual | ` |
Lead engineer | ` |
Security lead | ` |
Privacy lead | ` |
Localization lead | ` |
Accessibility lead | ` |
QA lead | ` |
UX lead | ` |
Product marketing lead | ` |
Operations lead | ` |
Additional members | ` |
{{#set:Feature product manager=`
|Feature feature manager=` |Feature lead engineer=` |Feature security lead=` |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=` |Feature ux lead=` |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=` }}
Open issues/risks
`
Stage 1: Definition
1. Feature overview
Currently when an extension ships an NPAPI plugin, it is automatically available to web content. This feature would make it possible for extension to ship plugins which are only available to chrome, or in the case of SDK-based addons, only available to that particular addon.
2. Users & use cases
Extension authors are the primary target for this feature. This mirrors a feature provided by Google Chrome and provides a way for extensions to interact with native code which can be easier to use than ctypes and make use of existing plugin-development frameworks.
3. Dependencies
`
4. Requirements
`
Non-goals
`
Stage 2: Design
5. Functional specification
Instead of automatically installing all plugins from the plugins/ subdirectory of addons, require plugins to mentioned in the addons manifest file. Then registration modifiers can be used to modify the scope of plugin installation.
The chrome.manifest format would gain the following additional directive:
plugin <path-to-pluginDLL>
Plugins would be "chrome-private" by default. To make a plugin accessible to web content, use the modifier:
plugin <path-to-pluginDLL> public=true
Whether and how we can restrict plugins to particular jetpack addons is still TBD.
6. User experience design
`
Stage 3: Planning
7. Implementation plan
`
8. Reviews
Security review
`
Privacy review
`
Localization review
`
Accessibility
`
Quality Assurance review
`
Operations review
`
Stage 4: Development
9. Implementation
`
Stage 5: Release
10. Landing criteria
` {{#set:Feature open issues and risks=` |Feature overview=Currently when an extension ships an NPAPI plugin, it is automatically available to web content. This feature would make it possible for extension to ship plugins which are only available to chrome, or in the case of SDK-based addons, only available to that particular addon. |Feature users and use cases=Extension authors are the primary target for this feature. This mirrors a feature provided by Google Chrome and provides a way for extensions to interact with native code which can be easier to use than ctypes and make use of existing plugin-development frameworks. |Feature dependencies=` |Feature requirements=` |Feature non-goals=` |Feature functional spec=Instead of automatically installing all plugins from the plugins/ subdirectory of addons, require plugins to mentioned in the addons manifest file. Then registration modifiers can be used to modify the scope of plugin installation.
The chrome.manifest format would gain the following additional directive:
plugin <path-to-pluginDLL>
Plugins would be "chrome-private" by default. To make a plugin accessible to web content, use the modifier:
plugin <path-to-pluginDLL> public=true
Whether and how we can restrict plugins to particular jetpack addons is still TBD. |Feature ux design=` |Feature implementation plan=` |Feature security review=` |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=` |Feature operations review=` |Feature implementation notes=` |Feature landing criteria=` }}
Feature details
Priority | Unprioritized |
Rank | 999 |
Theme / Goal | ` |
Roadmap | Add-ons |
Secondary roadmap | Plugin Interactions |
Feature list | Desktop |
Project | ` |
Engineering team | Plugins |
{{#set:Feature priority=Unprioritized
|Feature rank=999 |Feature theme=` |Feature roadmap=Add-ons |Feature secondary roadmap=Plugin Interactions |Feature list=Desktop |Feature project=` |Feature engineering team=Plugins }}
Team status notes
status | notes | |
Products | ` | ` |
Engineering | ` | ` |
Security | ` | ` |
Privacy | ` | ` |
Localization | ` | ` |
Accessibility | ` | ` |
Quality assurance | ` | ` |
User experience | ` | ` |
Product marketing | ` | ` |
Operations | ` | ` |
{{#set:Feature products status=`
|Feature products notes=` |Feature engineering status=` |Feature engineering notes=` |Feature security status=` |Feature security health=` |Feature security notes=` |Feature privacy status=` |Feature privacy notes=` |Feature localization status=` |Feature localization notes=` |Feature accessibility status=` |Feature accessibility notes=` |Feature qa status=` |Feature qa notes=` |Feature ux status=` |Feature ux notes=` |Feature product marketing status=` |Feature product marketing notes=` |Feature operations status=` |Feature operations notes=` }}
See http://code.google.com/chrome/extensions/npapi.html for the equivalent Google Chrome feature/information.