diff --git a/src/editor/engine/BabylonScene.js b/src/editor/engine/BabylonScene.js index 875f97d..de559e5 100644 --- a/src/editor/engine/BabylonScene.js +++ b/src/editor/engine/BabylonScene.js @@ -2352,6 +2352,11 @@ export class BabylonScene { const tag = (target.tagName || '').toLowerCase(); if (tag === 'input' || tag === 'textarea' || tag === 'select') return true; if (target.isContentEditable) return true; + // Monaco-редактор — у его внутренних элементов tagName бывает 'div', + // фокус живёт на скрытой textarea, но в зависимости от роутинга + // событий e.target может оказаться родительским div. Проверяем + // принадлежность дереву Monaco — там точно идёт набор текста. + if (typeof target.closest === 'function' && target.closest('.monaco-editor')) return true; return false; };