From 4fe036a338188859d82c96bde427e4bc186fd5b8 Mon Sep 17 00:00:00 2001 From: tegwick Date: Fri, 2 Oct 2026 23:03:55 +0200 Subject: [PATCH] fix(main-updated): refresh section DOM on accept even without the debug panel The changes-accepted handler was registered only when debugPanel existed, so with debug off an accepted edit updated the model but never re-rendered. Found by a headless-browser edit smoke test through markitect md-render. Co-Authored-By: Claude Sonnet 5.5 Assistant: claude-code Assistant-Model: sonnet Assistant-Process: 299063@bnt-lap001 Assistant-Session: 53eb1e1c-c13a-4277-9ce2-3702960d93f7 --- js/main-updated.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/js/main-updated.js b/js/main-updated.js index 12b3c64..7575dff 100644 --- a/js/main-updated.js +++ b/js/main-updated.js @@ -189,6 +189,16 @@ const MarkitectMain = { }); // Setup section manager event handlers + if (this.sectionManager) { + // The DOM refresh must not depend on the optional debug panel. + this.sectionManager.on('changes-accepted', (data) => { + if (this.debugPanel) { + this.debugPanel.addMessage(`Changes accepted for section: ${data.sectionId}`, 'SUCCESS'); + } + this.updateSectionDOM(data.sectionId); + }); + } + if (this.sectionManager && this.debugPanel) { this.sectionManager.on('sections-created', (data) => { this.debugPanel.addMessage(`Created ${data.count} sections`, 'INFO'); @@ -198,11 +208,6 @@ const MarkitectMain = { this.debugPanel.addMessage(`Edit started for section: ${data.sectionId}`, 'DEBUG'); }); - this.sectionManager.on('changes-accepted', (data) => { - this.debugPanel.addMessage(`Changes accepted for section: ${data.sectionId}`, 'SUCCESS'); - this.updateSectionDOM(data.sectionId); - }); - this.sectionManager.on('changes-cancelled', (data) => { this.debugPanel.addMessage(`Changes cancelled for section: ${data.sectionId}`, 'WARNING'); });