From 628bc2cd2644dd12232b80323b1df493c9f1dd33 Mon Sep 17 00:00:00 2001 From: "greenkeeper[bot]" Date: Sat, 30 Mar 2019 01:07:25 +0000 Subject: [PATCH 1/3] chore(package): update scratch-vm to version 0.2.0-prerelease.20190329172358 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e5b021f50..92bef6489 100644 --- a/package.json +++ b/package.json @@ -111,7 +111,7 @@ "scratch-render": "0.1.0-prerelease.20190312125229", "scratch-storage": "1.2.2", "scratch-svg-renderer": "0.2.0-prerelease.20190304180800", - "scratch-vm": "0.2.0-prerelease.20190326160300", + "scratch-vm": "0.2.0-prerelease.20190329172358", "selenium-webdriver": "3.6.0", "startaudiocontext": "1.2.1", "style-loader": "^0.23.0", From 2b5196106a1f2610edf19dc77470662f9a0a3d97 Mon Sep 17 00:00:00 2001 From: Ben Wheeler Date: Mon, 1 Apr 2019 14:08:11 -0400 Subject: [PATCH 2/3] remove code in sb-file-uploader that sets uri history on loading project from file --- src/containers/sb-file-uploader.jsx | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/containers/sb-file-uploader.jsx b/src/containers/sb-file-uploader.jsx index de89b3afd..cc2e488b5 100644 --- a/src/containers/sb-file-uploader.jsx +++ b/src/containers/sb-file-uploader.jsx @@ -118,12 +118,6 @@ class SBFileUploader extends React.Component { const filename = this.fileToUpload && this.fileToUpload.name; this.props.vm.loadProject(this.reader.result) .then(() => { - // Remove the hash if any (without triggering a hash change event or a reload) - try { // Can fail e.g. when GUI is loaded from static file (integration tests) - history.replaceState({}, document.title, '.'); - } catch { - // No fallback, just do not trigger promise catch below - } this.props.onLoadingFinished(this.props.loadingState, true); // Reset the file input after project is loaded // This is necessary in case the user wants to reload a project From e82e370e83483055b19d23f298fc86a1ac311128 Mon Sep 17 00:00:00 2001 From: Karishma Chadha Date: Wed, 3 Apr 2019 11:10:10 -0400 Subject: [PATCH 3/3] Register callback keys for buttons used in future extensions. --- src/containers/blocks.jsx | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/containers/blocks.jsx b/src/containers/blocks.jsx index ecb998ea4..d79c7e9c7 100644 --- a/src/containers/blocks.jsx +++ b/src/containers/blocks.jsx @@ -96,6 +96,21 @@ class Blocks extends React.Component { ); this.workspace = this.ScratchBlocks.inject(this.blocks, workspaceConfig); + // Register buttons under new callback keys for creating variables, + // lists, and procedures from extensions. + + const toolboxWorkspace = this.workspace.getFlyout().getWorkspace(); + + const varListButtonCallback = type => + (() => this.ScratchBlocks.Variables.createVariable(this.workspace, null, type)); + const procButtonCallback = () => { + this.ScratchBlocks.Procedures.createProcedureDefCallback_(this.workspace); + }; + + toolboxWorkspace.registerButtonCallback('MAKE_A_VARIABLE', varListButtonCallback('')); + toolboxWorkspace.registerButtonCallback('MAKE_A_LIST', varListButtonCallback('list')); + toolboxWorkspace.registerButtonCallback('MAKE_A_PROCEDURE', procButtonCallback); + // Store the xml of the toolbox that is actually rendered. // This is used in componentDidUpdate instead of prevProps, because // the xml can change while e.g. on the costumes tab.