aboutsummaryrefslogtreecommitdiffstats
path: root/lib/clipboard.coffee
diff options
context:
space:
mode:
Diffstat (limited to 'lib/clipboard.coffee')
-rw-r--r--lib/clipboard.coffee29
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/clipboard.coffee b/lib/clipboard.coffee
new file mode 100644
index 00000000..2b28df70
--- /dev/null
+++ b/lib/clipboard.coffee
@@ -0,0 +1,29 @@
+Clipboard =
+ _createTextArea: ->
+ textArea = document.createElement("textarea")
+ textArea.style.position = "absolute"
+ textArea.style.left = "-100%"
+ textArea
+
+ # http://groups.google.com/group/chromium-extensions/browse_thread/thread/49027e7f3b04f68/f6ab2457dee5bf55
+ copy: (data) ->
+ textArea = @_createTextArea()
+ textArea.value = data
+
+ document.body.appendChild(textArea)
+ textArea.select()
+ document.execCommand("Copy")
+ document.body.removeChild(textArea)
+
+ paste: ->
+ textArea = @._createTextArea()
+ document.body.appendChild(textArea)
+ textArea.focus()
+ document.execCommand("Paste")
+ value = textArea.value
+ document.body.removeChild(textArea)
+ value
+
+
+root = exports ? window
+root.Clipboard = Clipboard