mirror of
https://github.com/google/blockly.git
synced 2026-01-18 14:27:12 +01:00
Detect undefined elements in the debugger and remove undefined elem if a row has no elements when adding spacers. (#3576)
This commit is contained in:
@@ -282,7 +282,12 @@ Blockly.blockRendering.Debug.prototype.drawRenderedRow = function(row, cursorY,
|
||||
* @package
|
||||
*/
|
||||
Blockly.blockRendering.Debug.prototype.drawRowWithElements = function(row, cursorY, isRtl) {
|
||||
for (var i = 0, elem; (elem = row.elements[i]); i++) {
|
||||
for (var i = 0, l = row.elements.length; i < l; i++) {
|
||||
var elem = row.elements[i];
|
||||
if (!elem) {
|
||||
console.warn('A row has an undefined or null element.', row, elem);
|
||||
continue;
|
||||
}
|
||||
if (Blockly.blockRendering.Types.isSpacer(elem)) {
|
||||
this.drawSpacerElem(
|
||||
/** @type {!Blockly.blockRendering.InRowSpacer} */ (elem),
|
||||
|
||||
@@ -435,6 +435,9 @@ Blockly.blockRendering.RenderInfo.prototype.addElemSpacing_ = function() {
|
||||
row.elements.push(new Blockly.blockRendering.InRowSpacer(
|
||||
this.constants_, this.getInRowSpacing_(null, oldElems[0])));
|
||||
}
|
||||
if (!oldElems.length) {
|
||||
continue;
|
||||
}
|
||||
for (var e = 0; e < oldElems.length - 1; e++) {
|
||||
row.elements.push(oldElems[e]);
|
||||
var spacing = this.getInRowSpacing_(oldElems[e], oldElems[e + 1]);
|
||||
|
||||
@@ -143,6 +143,9 @@ Blockly.geras.RenderInfo.prototype.addElemSpacing_ = function() {
|
||||
row.elements.push(new Blockly.blockRendering.InRowSpacer(
|
||||
this.constants_, this.getInRowSpacing_(null, oldElems[0])));
|
||||
}
|
||||
if (!oldElems.length) {
|
||||
continue;
|
||||
}
|
||||
for (var e = 0; e < oldElems.length - 1; e++) {
|
||||
row.elements.push(oldElems[e]);
|
||||
var spacing = this.getInRowSpacing_(oldElems[e], oldElems[e + 1]);
|
||||
|
||||
Reference in New Issue
Block a user