From 185dc5594cfaf495df2f0fd40d21e6eaa888260e Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 28 Mar 2026 18:26:10 +0000 Subject: [PATCH] Respawn colour shadow when color input is disconnected from scene blocks When dragging a colour list out of sky/ground/background blocks, the input slot was left empty. Now uses setShadowDom to configure a colour shadow so Blockly automatically respawns it when the connected block is removed. https://claude.ai/code/session_018BDZmtQcAE2kbxPdRhpLKf --- blocks/scene.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/blocks/scene.js b/blocks/scene.js index f5f57ef4..3311f9e8 100644 --- a/blocks/scene.js +++ b/blocks/scene.js @@ -146,6 +146,17 @@ function initSceneColourLikeBlock(block, cfg) { subtreeInputName: inputName, includeSelfDelete: false, }); + + if (cfg.inputColor) { + const input = block.getInput(inputName); + if (input?.connection) { + const shadowDom = Blockly.utils.xml.textToDom( + `${cfg.inputColor}`, + ); + input.connection.setShadowDom(shadowDom); + input.connection.respawnShadow_(); + } + } } export function cacheMaterialState(mapBlock) {