diff options
| author | jmoenig <jens@moenig.org> | 2013-06-28 20:42:28 +0200 |
|---|---|---|
| committer | jmoenig <jens@moenig.org> | 2013-06-28 20:42:28 +0200 |
| commit | 09e3a296c25a73b4b4a21e1d0a2d9f6ce673f01f (patch) | |
| tree | 46c0a7d75e5029c86ef6acf35e2064d6de1dfa39 /morphic.js | |
| parent | b8c48040a26befd6a4670dbc89f5e91ef51210ea (diff) | |
| download | snap-yow-09e3a296c25a73b4b4a21e1d0a2d9f6ce673f01f.tar.gz snap-yow-09e3a296c25a73b4b4a21e1d0a2d9f6ce673f01f.zip | |
improved importing costumes
by dragging in pictures from other web pages, which now allows for
dragging links to pictures as well
Diffstat (limited to 'morphic.js')
| -rw-r--r-- | morphic.js | 22 |
1 files changed, 21 insertions, 1 deletions
@@ -1035,7 +1035,7 @@ /*global window, HTMLCanvasElement, getMinimumFontHeight, FileReader, Audio, FileList, getBlurredShadowSupport*/ -var morphicVersion = '2013-June-21'; +var morphicVersion = '2013-June-28'; var modules = {}; // keep track of additional loaded modules var useBlurredShadows = getBlurredShadowSupport(); // check for Chrome-bug @@ -9708,6 +9708,8 @@ HandMorph.prototype.processDrop = function (event) { var files = event instanceof FileList ? event : event.target.files || event.dataTransfer.files, file, + url = event.dataTransfer ? + event.dataTransfer.getData('URL') : null, txt = event.dataTransfer ? event.dataTransfer.getData('Text/HTML') : null, src, @@ -9818,6 +9820,24 @@ HandMorph.prototype.processDrop = function (event) { readBinary(file); } } + } else if (url) { + if ( + contains( + ['gif', 'png', 'jpg', 'jpeg', 'bmp'], + url.slice(url.lastIndexOf('.') + 1).toLowerCase() + ) + ) { + while (!target.droppedImage) { + target = target.parent; + } + img = new Image(); + img.onload = function () { + canvas = newCanvas(new Point(img.width, img.height)); + canvas.getContext('2d').drawImage(img, 0, 0); + target.droppedImage(canvas); + }; + img.src = url; + } } else if (txt) { while (!target.droppedImage) { target = target.parent; |
