Restore hub iframe soft nav to cut blank tab switch gap.
Use fetch in-frame navigation with overlay and hover prefetch; show delayed hub loading spinner instead of hiding the iframe. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1183,6 +1183,7 @@ body.market-chart-fs-open {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background: var(--bg, #0a0e14);
|
||||
isolation: isolate;
|
||||
}
|
||||
|
||||
.instance-frame-shell.hidden {
|
||||
@@ -1190,7 +1191,52 @@ body.market-chart-fs-open {
|
||||
}
|
||||
|
||||
.instance-frame-shell.is-instance-nav-loading .instance-frame {
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.instance-frame-loading {
|
||||
display: none;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
top: 49px;
|
||||
z-index: 2;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: color-mix(in srgb, var(--bg, #0a0e14) 72%, transparent);
|
||||
color: var(--muted, #8892b0);
|
||||
font-size: 0.9rem;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.instance-frame-shell.is-instance-nav-loading .instance-frame-loading {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.instance-frame-loading-inner {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
padding: 10px 16px;
|
||||
border-radius: 999px;
|
||||
border: 1px solid var(--border-soft);
|
||||
background: color-mix(in srgb, var(--panel-solid) 88%, transparent);
|
||||
}
|
||||
|
||||
.instance-frame-spinner {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
border-radius: 50%;
|
||||
border: 2px solid color-mix(in srgb, var(--muted, #8892b0) 35%, transparent);
|
||||
border-top-color: var(--accent, #6eb5ff);
|
||||
animation: instance-frame-spin 0.75s linear infinite;
|
||||
}
|
||||
|
||||
@keyframes instance-frame-spin {
|
||||
to {
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
.instance-frame-toolbar {
|
||||
|
||||
Reference in New Issue
Block a user