feat: hover preview as full-window overlay with text wrap + click-to-navigate

Replace side-positioned popover with a viewport-covering overlay (5vh/5vw
margins). pre-wrap + word-break wraps terminal text to fit any viewport.
pointer-events:none on overlay lets mouseleave fire on the original tile.
Click anywhere while preview is active navigates to that session.
Removes repositionPreview() — no JS positioning needed.
This commit is contained in:
Brian Krabach
2026-03-29 18:00:36 -07:00
parent 5906de9e67
commit af95b90b02
3 changed files with 39 additions and 76 deletions
+14 -9
View File
@@ -968,21 +968,26 @@ body {
z-index: 500;
background: var(--bg-secondary);
border: 1px solid var(--border);
border-radius: 6px;
padding: 10px 12px;
max-height: 80vh;
border-radius: 8px;
padding: 16px 20px;
/* Cover most of the viewport — centered with margin */
top: 5vh;
left: 5vw;
right: 5vw;
bottom: 5vh;
overflow-y: auto;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
pointer-events: none; /* don't interfere with mouse leaving tile */
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6);
pointer-events: none; /* mouse events pass through to tiles below */
}
.preview-popover pre {
margin: 0;
font-family: var(--font-mono);
font-size: 11px;
line-height: 1.4;
color: var(--text-muted);
white-space: pre;
font-size: 12px;
line-height: 1.5;
color: var(--text-dim);
white-space: pre-wrap; /* WRAP text instead of horizontal overflow */
word-break: break-all; /* break long lines at viewport edge */
overflow-x: hidden;
}