diff --git a/core/flyout_base.js b/core/flyout_base.js index aa315118c..5be9802b7 100644 --- a/core/flyout_base.js +++ b/core/flyout_base.js @@ -725,13 +725,11 @@ Blockly.Flyout.prototype.moveRectToBlock_ = function(rect, block) { * @private */ Blockly.Flyout.prototype.filterForCapacity_ = function() { - var remainingCapacity = this.targetWorkspace_.remainingCapacity(); var blocks = this.workspace_.getTopBlocks(false); for (var i = 0, block; block = blocks[i]; i++) { if (this.permanentlyDisabled_.indexOf(block) == -1) { - var allBlocks = block.getDescendants(false); - block.setDisabled(allBlocks.length > remainingCapacity || - this.targetWorkspace_.remainingCapacityOfType(block.type) <= 0); + block.setDisabled(!this.targetWorkspace_ + .isCapacityAvailable(Blockly.utils.getBlockTypeCounts(block))); } } };