mirror of
https://github.com/scratchfoundation/scratch-vm.git
synced 2024-12-24 06:52:40 -05:00
Include the origin blockId of the top block being dragged.
This is required by the GUI in order to take a snapshot of the blocks for the backpack. Only the ID is needed, the rest can be done by the GUI.
This commit is contained in:
parent
5593c9ab3e
commit
596d0c4f5f
3 changed files with 6 additions and 5 deletions
|
@ -340,7 +340,7 @@ class Blocks {
|
||||||
// Drag blocks onto another sprite
|
// Drag blocks onto another sprite
|
||||||
if (e.isOutside) {
|
if (e.isOutside) {
|
||||||
const newBlocks = adapter(e);
|
const newBlocks = adapter(e);
|
||||||
optRuntime.emitBlockEndDrag(newBlocks);
|
optRuntime.emitBlockEndDrag(newBlocks, e.blockId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -1857,9 +1857,10 @@ class Runtime extends EventEmitter {
|
||||||
/**
|
/**
|
||||||
* Emit event to indicate that the block drag has ended with the blocks outside the blocks workspace
|
* Emit event to indicate that the block drag has ended with the blocks outside the blocks workspace
|
||||||
* @param {Array.<object>} blocks The set of blocks dragged to the GUI
|
* @param {Array.<object>} blocks The set of blocks dragged to the GUI
|
||||||
|
* @param {string} topBlockId The original id of the top block being dragged
|
||||||
*/
|
*/
|
||||||
emitBlockEndDrag (blocks) {
|
emitBlockEndDrag (blocks, topBlockId) {
|
||||||
this.emit(Runtime.BLOCK_DRAG_END, blocks);
|
this.emit(Runtime.BLOCK_DRAG_END, blocks, topBlockId);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -96,8 +96,8 @@ class VirtualMachine extends EventEmitter {
|
||||||
this.runtime.on(Runtime.BLOCK_DRAG_UPDATE, areBlocksOverGui => {
|
this.runtime.on(Runtime.BLOCK_DRAG_UPDATE, areBlocksOverGui => {
|
||||||
this.emit(Runtime.BLOCK_DRAG_UPDATE, areBlocksOverGui);
|
this.emit(Runtime.BLOCK_DRAG_UPDATE, areBlocksOverGui);
|
||||||
});
|
});
|
||||||
this.runtime.on(Runtime.BLOCK_DRAG_END, blocks => {
|
this.runtime.on(Runtime.BLOCK_DRAG_END, (blocks, topBlockId) => {
|
||||||
this.emit(Runtime.BLOCK_DRAG_END, blocks);
|
this.emit(Runtime.BLOCK_DRAG_END, blocks, topBlockId);
|
||||||
});
|
});
|
||||||
this.runtime.on(Runtime.EXTENSION_ADDED, blocksInfo => {
|
this.runtime.on(Runtime.EXTENSION_ADDED, blocksInfo => {
|
||||||
this.emit(Runtime.EXTENSION_ADDED, blocksInfo);
|
this.emit(Runtime.EXTENSION_ADDED, blocksInfo);
|
||||||
|
|
Loading…
Reference in a new issue