summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG2
-rw-r--r--app/assets/javascripts/dropzone_input.js.coffee31
2 files changed, 14 insertions, 19 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 9ce9caa503f..8e054cec7c5 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -42,7 +42,7 @@ v 7.8.0
- Password reset token validity increased from 2 hours to 2 days since it is also send on account creation.
-
-
- -
+ - Enable raw image paste from clipboard, currently Chrome only (Marco Cyriacks)
-
-
- Add action property to merge request hook (Julien Bianchi)
diff --git a/app/assets/javascripts/dropzone_input.js.coffee b/app/assets/javascripts/dropzone_input.js.coffee
index a0f0d98a8dc..abb5bf519ee 100644
--- a/app/assets/javascripts/dropzone_input.js.coffee
+++ b/app/assets/javascripts/dropzone_input.js.coffee
@@ -13,6 +13,8 @@ class @DropzoneInput
form_textarea = $(form).find("textarea.markdown-area")
form_textarea.wrap "<div class=\"div-dropzone\"></div>"
+ form_textarea.bind 'paste', (event) =>
+ handlePaste(event)
form_dropzone = $(form).find('.div-dropzone')
form_dropzone.parent().addClass "div-dropzone-wrapper"
@@ -133,24 +135,17 @@ class @DropzoneInput
formatLink = (str) ->
"![" + str.alt + "](" + str.url + ")"
- handlePaste = (e) ->
- e.preventDefault()
- my_event = e.originalEvent
-
- if my_event.clipboardData and my_event.clipboardData.items
- processItem(my_event)
-
- processItem = (e) ->
- image = isImage(e)
- if image
- filename = getFilename(e) or "image.png"
- text = "{{" + filename + "}}"
- pasteText(text)
- uploadFile image.getAsFile(), filename
-
- else
- text = e.clipboardData.getData("text/plain")
- pasteText(text)
+ handlePaste = (event) ->
+ pasteEvent = event.originalEvent
+ if pasteEvent.clipboardData and pasteEvent.clipboardData.items
+ image = isImage(pasteEvent)
+ if image
+ event.preventDefault()
+
+ filename = getFilename(pasteEvent) or "image.png"
+ text = "{{" + filename + "}}"
+ pasteText(text)
+ uploadFile image.getAsFile(), filename
isImage = (data) ->
i = 0