diff options
| author | jmoenig <jens@moenig.org> | 2013-12-12 14:55:40 +0100 |
|---|---|---|
| committer | jmoenig <jens@moenig.org> | 2013-12-12 14:55:40 +0100 |
| commit | 59a39077b80d35fdb47ea67b4d87f1ab9a67807f (patch) | |
| tree | 24a6d7e7d778cab3b639eaa81f11c7f231f3ff8c /objects.js | |
| parent | f0268d9cd81b6869eaeb9d7729806fd9d33573ab (diff) | |
| download | snap-byow-59a39077b80d35fdb47ea67b4d87f1ab9a67807f.tar.gz snap-byow-59a39077b80d35fdb47ea67b4d87f1ab9a67807f.zip | |
fixed #277, #279 (blitting null-canvasses fails)
Thanks, Nathan, for the pointer to this!
Diffstat (limited to 'objects.js')
| -rw-r--r-- | objects.js | 28 |
1 files changed, 16 insertions, 12 deletions
@@ -124,7 +124,7 @@ PrototypeHatBlockMorph*/ // Global stuff //////////////////////////////////////////////////////// -modules.objects = '2013-December-04'; +modules.objects = '2013-December-12'; var SpriteMorph; var StageMorph; @@ -3373,12 +3373,14 @@ SpriteMorph.prototype.thumbnail = function (extentPoint) { ctx = trg.getContext('2d'); ctx.save(); - ctx.scale(scale, scale); - ctx.drawImage( - src, - Math.floor(xOffset / scale), - Math.floor(yOffset / scale) - ); + if (scale !== Infinity) { + ctx.scale(scale, scale); + ctx.drawImage( + src, + Math.floor(xOffset / scale), + Math.floor(yOffset / scale) + ); + } return trg; }; @@ -4662,11 +4664,13 @@ StageMorph.prototype.thumbnail = function (extentPoint, excludedSprite) { this.children.forEach(function (morph) { if (morph !== excludedSprite) { fb = morph.fullBounds(); - ctx.drawImage( - morph.fullImage(), - fb.origin.x - myself.bounds.origin.x, - fb.origin.y - myself.bounds.origin.y - ); + if (fb.extent().gt(new Point())) { + ctx.drawImage( + morph.fullImage(), + fb.origin.x - myself.bounds.origin.x, + fb.origin.y - myself.bounds.origin.y + ); + } } }); return trg; |
