1 dump('entering util/clipboard.js\n');
3 if (typeof util == 'undefined') var util = {};
6 util.clipboard.EXPORT_OK = [
9 util.clipboard.EXPORT_TAGS = { ':all' : util.clipboard.EXPORT_OK };
11 util.clipboard.cut = function() {
13 var n = document.popupNode;
14 if (n.getAttribute('readonly')=='true') return;
16 var start = n.selectionStart;
17 var end = n.selectionEnd;
18 var clip = v.substring( start, end );
19 n.value = v.substring(0, start) + v.substring(end, v.length);
20 const gClipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"]
21 .getService(Components.interfaces.nsIClipboardHelper);
22 gClipboardHelper.copyString(clip);
23 n.setSelectionRange(start,start);
24 dump('Copied ' + clip + '\n');
30 util.clipboard.copy = function() {
32 var n = document.popupNode;
34 var start = n.selectionStart;
35 var end = n.selectionEnd;
36 var clip = v.substring( start, end );
37 const gClipboardHelper = Components.classes["@mozilla.org/widget/clipboardhelper;1"]
38 .getService(Components.interfaces.nsIClipboardHelper);
39 gClipboardHelper.copyString(clip);
40 dump('Copied ' + clip + '\n');
46 util.clipboard.paste = function() {
48 var n = document.popupNode;
49 if (n.getAttribute('readonly')=='true') return;
51 var start = n.selectionStart;
52 var end = n.selectionEnd;
53 var cb = Components.classes["@mozilla.org/widget/clipboard;1"].getService(Components.interfaces.nsIClipboard);
54 if (!cb) return false;
55 var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
56 if (!trans) return false;
57 trans.addDataFlavor("text/unicode");
58 cb.getData(trans, cb.kGlobalClipboard);
59 var str = {}; var strLength = {};
60 trans.getTransferData("text/unicode",str,strLength);
61 if (str) str = str.value.QueryInterface(Components.interfaces.nsISupportsString);
62 var clip; if (str) clip = str.data.substring(0, strLength.value / 2);
63 n.value = v.substring(0, start) + clip + v.substring(end, v.length);
64 n.setSelectionRange(start + clip.length,start + clip.length);
65 dump('Pasted ' + clip + '\n');
71 dump('exiting util/clipboard.js\n');