テキスト/ユニコードとテキスト/htmlの2つのフレーバーを使用して、HTMLドキュメントのスニペットをクリップボードにコピーすることになっているFirefoxアドオンに取り組んでいます。
コードは次のようになります。
function copySelection() {
var textUnicode = window.getSelection().toString();
var textHtml = window.getSelection();
var trans = Transferable(window);
trans.addDataFlavor("text/unicode");
trans.setTransferData("text/unicode", SupportsString(textUnicode), textUnicode.length * 2);
trans.addDataFlavor("text/html");
trans.setTransferData("text/html", textHtml, textHtml.length * 2); // *2 because it's unicode
Services.clipboard.setData(trans, null, Services.clipboard.kGlobalClipboard);
return true;
}
問題は、コピーしたテキスト OOWriter (フォーマット済み) または他の場所 (プレーン テキスト) を貼り付けることができないことです。xclip で確認できると同時に、テキストがクリップボードにコピーされますが、どこにも貼り付けることができません。私は何か間違ったことをしていますか?