fix(B06): 숨은 횡단 보기의 조정창이 다른 보기의 방향키를 먹지 않음(24-3a)

- 조정창 방향키 듣기가 창이 숨은 보기에 있으면 넘김(Cross_Panel_Base · Cross_Structure_Panel 한 줄씩)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BU9gbNE3aWFUvE61pS2WGt
This commit is contained in:
2026-09-29 21:58:17 +09:00
co-authored by Claude Opus 5.5
parent 90a2cb9a11
commit d74eecc9f6
2 changed files with 4 additions and 2 deletions
@@ -92,7 +92,8 @@ export function bindArrowKeys(
return;
}
const slot = ARROW_SLOT[event.key];
if (!slot || root.classList.contains("is-hidden")) return;
// 보기가 숨었으면(한 페이지 두 보기 · 계획서 24-3a) 다른 보기의 방향키를 먹지 않는다.
if (!slot || root.classList.contains("is-hidden") || !root.getClientRects().length) return;
const focus = event.target as HTMLElement | null;
if (focus && (focus.tagName === "SELECT" || focus.tagName === "INPUT")) return;
for (const container of containers()) {
@@ -457,7 +457,8 @@ export function buildStructurePanel(
return;
}
const slot = ARROW_SLOT[event.key];
if (!slot || root.classList.contains("is-hidden")) return;
// 보기가 숨었으면(한 페이지 두 보기 · 계획서 24-3a) 다른 보기의 방향키를 먹지 않는다.
if (!slot || root.classList.contains("is-hidden") || !root.getClientRects().length) return;
const focus = event.target as HTMLElement | null;
if (focus && (focus.tagName === "SELECT" || focus.tagName === "INPUT")) return;
for (const candidate of [basinRow, moveRow]) {