Firefox/Projects/ClipboardAPI

From MozillaWiki
Jump to: navigation, search

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.