Firefox/Projects/ClipboardAPI
Improve clipboard API
- Project Lead: Enn
Status
Goals
This is the second of the three phase external data exchange project.
The first implemented the dataTransfer drag and drop API. Recently, all the usages of the old nsDragAndDrop.js script were removed from Firefox code and that script is no longer used. The only remaining usage of the lower drag and drop api nsIDragService/nsIDragSession is within editor code, and one reference in places to check if drag is currently active.
This second step will be to change the clipboard API to also support the dataTransfer API in a manner compatible with IE and Webkit, and convert all code to use it instead. The current clipboard api is hard to use and difficult to cut and paste anything other than strings.
The third step will be the remove nsITransferable and use data transfer objects directly in widget code. This will reduce complexity and, hopefully, better unify support for different clipboard and drag formats across platforms. Currently, it is unclear what formats are supported on which platforms and how.
Non Goals
Timeline / Milestones
These are the bugs of interest:
Bug | Owner | Status |
---|---|---|
bug 407983 - clipboard api | Enn |
Requirements
Dependencies
Testing
Most testing can be acheived using automated tests. Tests from and to other applications will need to be done manually.