From bf2927fec25958d5b12f83d85dc693b6b1a56260 Mon Sep 17 00:00:00 2001 From: Joakim Date: Fri, 19 Sep 2025 19:41:30 +0200 Subject: [PATCH] fix: Update positionForm to support new StyleAwareEditor class names - Fix TypeError when accessing form.style by adding fallback selectors - Support both legacy (.insertr-edit-form) and new editor class names - Add null checks to prevent crashes when form element is not found - Ensure ensureModalVisible works with all editor types Resolves positioning error when opening style-aware editor interface. --- lib/src/ui/editor.js | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/lib/src/ui/editor.js b/lib/src/ui/editor.js index ec66045..c3aa72b 100644 --- a/lib/src/ui/editor.js +++ b/lib/src/ui/editor.js @@ -373,7 +373,16 @@ export class Editor { */ positionForm(element, overlay) { const rect = element.getBoundingClientRect(); - const form = overlay.querySelector('.insertr-edit-form'); + // Support both old and new editor formats + const form = overlay.querySelector('.insertr-edit-form') || + overlay.querySelector('.insertr-style-aware-editor') || + overlay.querySelector('.insertr-fallback-editor'); + + if (!form) { + console.error('No form element found in overlay for positioning'); + return; + } + const viewportWidth = window.innerWidth; // Calculate optimal width @@ -409,7 +418,16 @@ export class Editor { */ ensureModalVisible(overlay) { requestAnimationFrame(() => { - const modal = overlay.querySelector('.insertr-edit-form'); + // Support both old and new editor formats + const modal = overlay.querySelector('.insertr-edit-form') || + overlay.querySelector('.insertr-style-aware-editor') || + overlay.querySelector('.insertr-fallback-editor'); + + if (!modal) { + console.error('No modal element found for visibility check'); + return; + } + const modalRect = modal.getBoundingClientRect(); const viewportHeight = window.innerHeight;