From 5445cf4cf823a8dbbcae5f356776733ae5e6193e Mon Sep 17 00:00:00 2001 From: Beka Westberg Date: Wed, 19 Feb 2020 14:40:28 -0800 Subject: [PATCH] Add comments to break block change listener. --- blocks/loops.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/blocks/loops.js b/blocks/loops.js index 0163350d5..d6fb2f2f6 100644 --- a/blocks/loops.js +++ b/blocks/loops.js @@ -331,9 +331,13 @@ Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN = { * @this {Blockly.Block} */ onchange: function(e) { + // Don't change state if: + // * It's at the start of a drag. + // * It's not a move event. + // * Or the moving block is not this block. if (!this.workspace.isDragging || this.workspace.isDragging() || e.type != Blockly.Events.BLOCK_MOVE || e.blockId != this.id) { - return; // Don't change state at the start of a drag. + return; } var enabled = Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN .getSurroundLoop(this); @@ -341,6 +345,7 @@ Blockly.Constants.Loops.CONTROL_FLOW_IN_LOOP_CHECK_MIXIN = { Blockly.Msg['CONTROLS_FLOW_STATEMENTS_WARNING']); if (!this.isInFlyout) { var group = Blockly.Events.getGroup(); + // Makes it so the move and the disable event get undone together. Blockly.Events.setGroup(e.group); this.setEnabled(enabled); Blockly.Events.setGroup(group);