summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGubolin <gubolin@fantasymail.de>2015-07-01 17:43:21 +0200
committerGubolin <gubolin@fantasymail.de>2015-07-01 17:43:21 +0200
commita3cae8db6e442da230a880a26546595afee7a3bd (patch)
treef9a2b3473e65885e1804e2b46f75f883efe1e365
parentb0d5fca03273d74c009c1415285c0ec375e1f848 (diff)
parent44e4f5d94bc6e448beb46e5d688153c8203d6da8 (diff)
downloadsnap-a3cae8db6e442da230a880a26546595afee7a3bd.tar.gz
snap-a3cae8db6e442da230a880a26546595afee7a3bd.zip
Merge branch 'OOP' into development
-rw-r--r--blocks.js7
-rw-r--r--byob.js10
-rw-r--r--gui.js6
-rwxr-xr-xhistory.txt16
-rw-r--r--objects.js4
5 files changed, 34 insertions, 9 deletions
diff --git a/blocks.js b/blocks.js
index f75146f..b88bfe3 100644
--- a/blocks.js
+++ b/blocks.js
@@ -155,7 +155,7 @@ DialogBoxMorph, BlockInputFragmentMorph, PrototypeHatBlockMorph, Costume*/
// Global stuff ////////////////////////////////////////////////////////
-modules.blocks = '2015-May-01';
+modules.blocks = '2015-June-08';
var SyntaxElementMorph;
@@ -3084,6 +3084,11 @@ BlockMorph.prototype.fullCopy = function () {
ans.allChildren().filter(function (block) {
if (block instanceof SyntaxElementMorph) {
block.cachedInputs = null;
+ if (block instanceof InputSlotMorph) {
+ block.contents().clearSelection();
+ }
+ } else if (block instanceof CursorMorph) {
+ block.destroy();
}
return !isNil(block.comment);
}).forEach(function (block) {
diff --git a/byob.js b/byob.js
index bc0f75f..1c2cfee 100644
--- a/byob.js
+++ b/byob.js
@@ -106,7 +106,7 @@ SymbolMorph, isNil*/
// Global stuff ////////////////////////////////////////////////////////
-modules.byob = '2015-May-01';
+modules.byob = '2015-May-23';
// Declarations
@@ -3297,15 +3297,17 @@ BlockExportDialogMorph.prototype.selectNone = function () {
// BlockExportDialogMorph ops
BlockExportDialogMorph.prototype.exportBlocks = function () {
- var str = this.serializer.serialize(this.blocks);
+ var str = encodeURIComponent(
+ this.serializer.serialize(this.blocks)
+ );
if (this.blocks.length > 0) {
- window.open(encodeURI('data:text/xml,<blocks app="'
+ window.open('data:text/xml,<blocks app="'
+ this.serializer.app
+ '" version="'
+ this.serializer.version
+ '">'
+ str
- + '</blocks>'));
+ + '</blocks>');
} else {
new DialogBoxMorph().inform(
'Export blocks',
diff --git a/gui.js b/gui.js
index 8040390..5fa1c6a 100644
--- a/gui.js
+++ b/gui.js
@@ -69,7 +69,7 @@ SpeechBubbleMorph*/
// Global stuff ////////////////////////////////////////////////////////
-modules.gui = '2015-May-01';
+modules.gui = '2015-May-18';
// Declarations
@@ -3109,7 +3109,9 @@ IDE_Morph.prototype.exportGlobalBlocks = function () {
};
IDE_Morph.prototype.exportSprite = function (sprite) {
- var str = this.serializer.serialize(sprite.allParts());
+ var str = encodeURIComponent(
+ this.serializer.serialize(sprite.allParts())
+ );
window.open('data:text/xml,<sprites app="'
+ this.serializer.app
+ '" version="'
diff --git a/history.txt b/history.txt
index 7f60776..f9ea785 100755
--- a/history.txt
+++ b/history.txt
@@ -2510,3 +2510,19 @@ ______
* Threads: return empty string when querying first letter of a list
* GUI: hide “save to disk” option behind shift-click again (has issues in Chrome)
* GUI: parameters for embedding projects in iFrames, thanks, Bernat!
+
+150518
+------
+* Objects, GUI: Fix encoding for exported sprites (esp. comments)
+
+150521
+------
+* BYOB: Fix encoding for exported libraries of global blocks
+
+150521
+------
+* BYOB: Fix encoding glitch
+
+150608
+------
+* Blocks: Fixed #820
diff --git a/objects.js b/objects.js
index 39aa567..8615ee2 100644
--- a/objects.js
+++ b/objects.js
@@ -125,7 +125,7 @@ PrototypeHatBlockMorph*/
// Global stuff ////////////////////////////////////////////////////////
-modules.objects = '2015-April-17';
+modules.objects = '2015-May-18';
var SpriteMorph;
var StageMorph;
@@ -2900,7 +2900,7 @@ SpriteMorph.prototype.userMenu = function () {
};
SpriteMorph.prototype.exportSprite = function () {
- if (this.isCoone) {return; }
+ if (this.isClone) {return; }
var ide = this.parentThatIsA(IDE_Morph);
if (ide) {
ide.exportSprite(this);