@@ -32,7 +32,8 @@ import {
3232 openConnectionModal ,
3333 openCustomExtensionModal ,
3434 openExtensionImportMethodModal ,
35- setSelectedExtension
35+ setSelectedExtension ,
36+ setSelectedExtensions
3637} from '../reducers/modals' ;
3738import { activateCustomProcedures , deactivateCustomProcedures } from '../reducers/custom-procedures' ;
3839import { setConnectionModalExtensionId } from '../reducers/connection-modal' ;
@@ -199,6 +200,10 @@ class Blocks extends React.Component {
199200 this . workspace = this . ScratchBlocks . inject ( this . blocks , workspaceConfig ) ;
200201 AddonHooks . blocklyWorkspace = this . workspace ;
201202 this . syncWorkspaceCullingState ( ) ;
203+ window . __twEnableProcedureReturns = ( ) => {
204+ this . handleEnableProcedureReturns ( ) ;
205+ this . handleCategorySelected ( 'myBlocks' ) ;
206+ } ;
202207
203208 // Register buttons under new callback keys for creating variables,
204209 // lists, and procedures from extensions.
@@ -346,6 +351,9 @@ class Blocks extends React.Component {
346351 cancelAnimationFrame ( this . toolboxStateSyncFrame ) ;
347352 this . toolboxStateSyncFrame = null ;
348353 }
354+ if ( window . __twEnableProcedureReturns ) {
355+ delete window . __twEnableProcedureReturns ;
356+ }
349357 this . workspace . dispose ( ) ;
350358
351359 // Clear the flyout blocks so that they can be recreated on mount.
@@ -1204,6 +1212,7 @@ class Blocks extends React.Component {
12041212 onOpenCustomExtensionModal,
12051213 onOpenExtensionImportMethodModal,
12061214 onSetSelectedExtension,
1215+ onSetSelectedExtensions,
12071216 reduxOnOpenCustomExtensionModal,
12081217 updateToolboxState,
12091218 onActivateCustomProcedures,
@@ -1246,6 +1255,7 @@ class Blocks extends React.Component {
12461255 onOpenCustomExtensionModal = { onOpenCustomExtensionModal || reduxOnOpenCustomExtensionModal }
12471256 onOpenExtensionImportMethodModal = { onOpenExtensionImportMethodModal }
12481257 onSetSelectedExtension = { onSetSelectedExtension }
1258+ onSetSelectedExtensions = { onSetSelectedExtensions }
12491259 />
12501260 ) : null }
12511261 { customProceduresVisible ? (
@@ -1282,6 +1292,7 @@ Blocks.propTypes = {
12821292 onOpenCustomExtensionModal : PropTypes . func ,
12831293 onOpenExtensionImportMethodModal : PropTypes . func ,
12841294 onSetSelectedExtension : PropTypes . func ,
1295+ onSetSelectedExtensions : PropTypes . func ,
12851296 reduxOnOpenCustomExtensionModal : PropTypes . func ,
12861297 onRequestCloseCustomProcedures : PropTypes . func ,
12871298 onRequestCloseExtensionLibrary : PropTypes . func ,
@@ -1359,6 +1370,7 @@ const mapDispatchToProps = dispatch => ({
13591370 reduxOnOpenCustomExtensionModal : ( ) => dispatch ( openCustomExtensionModal ( ) ) ,
13601371 onOpenExtensionImportMethodModal : ( ) => dispatch ( openExtensionImportMethodModal ( ) ) ,
13611372 onSetSelectedExtension : extension => dispatch ( setSelectedExtension ( extension ) ) ,
1373+ onSetSelectedExtensions : extensions => dispatch ( setSelectedExtensions ( extensions ) ) ,
13621374 onRequestCloseExtensionLibrary : ( ) => {
13631375 dispatch ( closeExtensionLibrary ( ) ) ;
13641376 } ,
0 commit comments