Status
NPAPI AsyncDrawing specification and implementation | |
Stage | Landed |
Status | Complete |
Release target | Firefox 13 |
Health | ` |
Status note | This was on hold for agreement from plugin-futures, but we'd like to go ahead and implement this with Adobe so that we can move away from windowed plugins even without general buyin. This appears to be landed https://bugzilla.mozilla.org/show_bug.cgi?id=651192 so I'm updating this feature page. Please revert if I'm wrong - Asa (2012-05-02) |
{{#set:Feature name=NPAPI AsyncDrawing specification and implementation
|Feature stage=Landed |Feature status=Complete |Feature version=Firefox 13 |Feature health=` |Feature status note=This was on hold for agreement from plugin-futures, but we'd like to go ahead and implement this with Adobe so that we can move away from windowed plugins even without general buyin.
This appears to be landed https://bugzilla.mozilla.org/show_bug.cgi?id=651192 so I'm updating this feature page. Please revert if I'm wrong - Asa (2012-05-02) }}
Team
Product manager | Chris Blizzard |
Directly Responsible Individual | Josh Aas |
Lead engineer | Bas Schouten |
Security lead | Curtis Koenig |
Privacy lead | ` |
Localization lead | ` |
Accessibility lead | ` |
QA lead | Virgil Dicu |
UX lead | ` |
Product marketing lead | ` |
Operations lead | ` |
Additional members | ` |
{{#set:Feature product manager=Chris Blizzard
|Feature feature manager=Josh Aas |Feature lead engineer=Bas Schouten |Feature security lead=Curtis Koenig |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=Virgil Dicu |Feature ux lead=` |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=` }}
Open issues/risks
`
Stage 1: Definition
1. Feature overview
This feature allows plugins to asynchronously draw to surfaces. These surfaces may be located in video memory, and so this allows hardware accelerated plugin drawing.
2. Users & use cases
Goals
- Make it possible for plugins to draw, explicitly asynchronously, to a bitmap/software surface.
- Make it possible for plugins to draw, explicitly asynchronously, to a hardware accelerated surface - DXGI or DirectX 9Ex.
- Allow Flash to never request windowed plugin mode
3. Dependencies
`
4. Requirements
- Needs testing with a version of Flash that implements the specification.
- Needs a design and implementation security review.
Non-goals
- Non-Windows implementations or specifications for accelerated drawing.
Stage 2: Design
5. Functional specification
6. User experience design
`
Stage 3: Planning
7. Implementation plan
`
8. Reviews
Security review
Privacy review
`
Localization review
`
Accessibility
`
Quality Assurance review
- Patch still being developed
Operations review
`
Stage 4: Development
9. Implementation
The specification was designed by Bas Schouten and Josh Aas, with input from Robert O'Callahan. The Windows implementation is being done by Bas Schouten.
- bug 651192 Implement new AsyncDrawing model for plugins
Next Steps
- Complete the implementation of the specification.
- Get a build of Flash that implements this specification.
- Get the specification ratified by the plugin-futures group.
Stage 5: Release
10. Landing criteria
` {{#set:Feature open issues and risks=` |Feature overview=This feature allows plugins to asynchronously draw to surfaces. These surfaces may be located in video memory, and so this allows hardware accelerated plugin drawing. |Feature users and use cases===== Goals ====
- Make it possible for plugins to draw, explicitly asynchronously, to a bitmap/software surface.
- Make it possible for plugins to draw, explicitly asynchronously, to a hardware accelerated surface - DXGI or DirectX 9Ex.
- Allow Flash to never request windowed plugin mode
|Feature dependencies=` |Feature requirements=* Needs testing with a version of Flash that implements the specification.
- Needs a design and implementation security review.
|Feature non-goals=* Non-Windows implementations or specifications for accelerated drawing. |Feature functional spec=* NPAPI:AsyncDrawing |Feature ux design=` |Feature implementation plan=` |Feature security review=* Security Discussion/Review |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=* Patch still being developed |Feature operations review=` |Feature implementation notes=The specification was designed by Bas Schouten and Josh Aas, with input from Robert O'Callahan. The Windows implementation is being done by Bas Schouten.
- bug 651192 Implement new AsyncDrawing model for plugins
Next Steps
- Complete the implementation of the specification.
- Get a build of Flash that implements this specification.
- Get the specification ratified by the plugin-futures group.
|Feature landing criteria=` }}
Feature details
Priority | P2 |
Rank | 999 |
Theme / Goal | ` |
Roadmap | Platform |
Secondary roadmap | Plugin Interactions |
Feature list | Platform |
Project | Flash |
Engineering team | Graphics |
{{#set:Feature priority=P2
|Feature rank=999 |Feature theme=` |Feature roadmap=Platform |Feature secondary roadmap=Plugin Interactions |Feature list=Platform |Feature project=Flash |Feature engineering team=Graphics }}
Team status notes
status | notes | |
Products | ` | ` |
Engineering | ` | ` |
Security | sec-review-complete | Notes |
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=sec-review-complete |Feature security health=OK |Feature security notes=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=` }}