diff --git a/M02_MasterTemplete/M02_MasterTemplete_UI_Page.ts b/M02_MasterTemplete/M02_MasterTemplete_UI_Page.ts index 69d869319..17cb6cbc6 100644 --- a/M02_MasterTemplete/M02_MasterTemplete_UI_Page.ts +++ b/M02_MasterTemplete/M02_MasterTemplete_UI_Page.ts @@ -157,11 +157,15 @@ export async function renderM02MasterTemplate(root: HTMLElement): Promise void go("personal", next, open), }) : panel; - // 704-4 [구조물 조합으로] 만든 항목 → 나무 · 옆 목록 다시(페이지가 내려가면 듣기 끝) + // 704-4 [구조물 조합으로] 만든 항목 → 나무 · 옆 목록 · 열린 표(행렬)를 다시(페이지가 내려가면 듣기 끝) + const afterItem = async (): Promise => { + await Promise.all([side.refresh(), tree.refresh()]); + const now = main.current(); + const shown = now?.kind === "table" && now.name === STRUCTURE_TABLE; + if (shown && (await main.settle()) !== false) await main.openTable(layer, null, true); + }; const onItem = (): void => - tree.root.isConnected - ? void Promise.all([side.refresh(), tree.refresh()]) - : document.removeEventListener(ITEM_BUILT, onItem); + tree.root.isConnected ? void afterItem() : document.removeEventListener(ITEM_BUILT, onItem); document.addEventListener(ITEM_BUILT, onItem); const main = createMain( isAdmin,