summaryrefslogtreecommitdiff
path: root/objects.js
diff options
context:
space:
mode:
authorjmoenig <jens@moenig.org>2013-12-12 14:55:40 +0100
committerjmoenig <jens@moenig.org>2013-12-12 14:55:40 +0100
commit59a39077b80d35fdb47ea67b4d87f1ab9a67807f (patch)
tree24a6d7e7d778cab3b639eaa81f11c7f231f3ff8c /objects.js
parentf0268d9cd81b6869eaeb9d7729806fd9d33573ab (diff)
downloadsnap-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.js28
1 files changed, 16 insertions, 12 deletions
diff --git a/objects.js b/objects.js
index 7f1e7a2..e6cb533 100644
--- a/objects.js
+++ b/objects.js
@@ -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;