Reclaim vertical space in the layer panel
Three cuts, so the right column keeps more of itself for the chart. The five daily MA periods now sit on one line. 10px gaps and a 22px indent had pushed 200 onto a row by itself; nowrap, 7px gaps, a 4px label gap and 12px boxes fit all five with room to spare, verified as five labels sharing one offsetTop and no horizontal overflow. Auto trendlines becomes a parenthetical on the Manual lines row instead of owning a row. It is disabled until M8 builds it, so a full row overstated it. The alert log becomes a collapsible section like Confluence zones, closed by default with its count in the summary. Closed by default is the point — leaving it open would reclaim nothing — and the count keeps activity visible while it is shut, with the banner, sound and phone push unaffected either way. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
bec445b599
commit
a0b8ac1cd2
3 changed files with 17 additions and 6 deletions
|
|
@ -1416,3 +1416,12 @@ rendered it. Now an overlay histogram on its own hidden scale in the bottom
|
|||
fifth. An overlay rather than a pane, and emphatically not the price scale:
|
||||
volumes are five figures against four-figure prices, and sharing a scale would
|
||||
flatten the candles to a line.
|
||||
|
||||
**Sidebar vertical space.** Three cuts, all in §9.4's layer panel. The daily MA
|
||||
periods sit on one line — `flex-wrap:nowrap` with tighter gaps and 12px boxes,
|
||||
where 10px gaps and 22px indent had pushed 200 onto a line of its own.
|
||||
Auto trendlines joins Manual lines as a parenthetical `(auto)` rather than
|
||||
owning a row, which suits a control that is disabled until M8. The alert log
|
||||
becomes a `<details>` like Confluence zones, closed by default with its count in
|
||||
the summary — collapsed by default is the point, since leaving it open would
|
||||
save nothing, and the count means activity is still visible while closed.
|
||||
|
|
|
|||
|
|
@ -81,9 +81,9 @@
|
|||
<label><input type="checkbox" v-model="prefs.enabled.horizontal"><span class="swatch horizontal"></span>Prior day H/L/C</label>
|
||||
<label><input type="checkbox" v-model="prefs.enabled.vwap"><span class="swatch vwap"></span>Session VWAP</label>
|
||||
</div>
|
||||
<div class="layer-group">
|
||||
<div class="layer-group layer-inline">
|
||||
<label><input type="checkbox" v-model="prefs.enabled.manual"><span class="swatch manual"></span>Manual lines</label>
|
||||
<label class="disabled"><input type="checkbox" disabled>Auto trendlines</label>
|
||||
<label class="disabled" title="Automatic trendline detection is not built yet">(<input type="checkbox" disabled>auto)</label>
|
||||
</div>
|
||||
<label class="score-hidden"><input type="checkbox" v-model="prefs.hidden_levels_score">Hidden levels still count toward confluence</label>
|
||||
</details>
|
||||
|
|
@ -120,9 +120,11 @@
|
|||
<div class="distance">{{ cluster.distance > 0 ? '+' : '' }}{{ cluster.distance.toFixed(2) }} pts</div>
|
||||
</div>
|
||||
</details>
|
||||
<h2>Alert log</h2>
|
||||
<div v-if="!alerts.length" class="empty">No alerts fired.</div>
|
||||
<div v-for="alert in alerts" :key="alert.key" class="alert-entry"><time>{{ alert.at }}</time>{{ alert.message }}</div>
|
||||
<details class="sidebar-section">
|
||||
<summary>Alert log ({{ alerts.length }})</summary>
|
||||
<div v-if="!alerts.length" class="empty">No alerts fired.</div>
|
||||
<div v-for="alert in alerts" :key="alert.key" class="alert-entry"><time>{{ alert.at }}</time>{{ alert.message }}</div>
|
||||
</details>
|
||||
</aside>
|
||||
</main>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ button { border:1px solid var(--line); background:transparent; color:var(--muted
|
|||
aside { padding:16px; }h2 { margin:0 0 12px; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:1.3px; }h2:not(:first-child) { margin-top:30px; }.empty { border-left:2px solid var(--line); padding:10px 12px; color:var(--muted); font-size:11px; }
|
||||
.sidebar-section { margin-top:30px; }.sidebar-section summary { margin-bottom:12px; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:1.3px; cursor:pointer; user-select:none; }.sidebar-section:not([open]) summary { margin-bottom:0; }
|
||||
.trendline-actions { display:flex; gap:5px; margin-bottom:7px; }.trendline-actions button { flex:1; padding:4px; font-size:9px; }.trendline-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:5px 8px; padding:7px; border:1px solid transparent; }.trendline-row.selected { border-color:var(--accent); }.trendline-row>.line-select { align-self:center; accent-color:var(--accent); }.trendline-row>input:not(.line-select) { min-width:0; border:0; border-bottom:1px solid var(--line); background:transparent; color:var(--fg); font:inherit; font-size:11px; }.trendline-row span { grid-column:2; color:var(--muted); font-size:9px; text-transform:uppercase; }.trendline-row button { grid-column:3; grid-row:1; padding:3px 6px; font-size:9px; }.line-style-controls { grid-column:3; display:flex; align-items:center; gap:4px; }.line-style-controls input { width:24px; height:20px; padding:0; border:0; background:transparent; }.line-style-controls select { border:1px solid var(--line); background:var(--panel); color:var(--fg); font-size:9px; }
|
||||
.layer-group { padding:9px 0; border-bottom:1px solid var(--line); display:grid; gap:7px; }.layer-group label,.score-hidden { display:flex; align-items:center; gap:7px; font-size:11px; cursor:pointer; }.layer-group input,.score-hidden input { accent-color:var(--accent); }.periods { display:flex; flex-wrap:wrap; gap:10px; padding-left:22px; }.periods label { color:var(--muted); }.swatch { width:13px; height:3px; display:inline-block; background:var(--muted); }.tf-1d { background:#d96073; }.tf-1h { background:#efb643; }.manual { background:#65b7cf; }.vwap { background:#b07ad6; }.horizontal { background:#9fb0c4; }
|
||||
.layer-group { padding:9px 0; border-bottom:1px solid var(--line); display:grid; gap:7px; }.layer-group label,.score-hidden { display:flex; align-items:center; gap:7px; font-size:11px; cursor:pointer; }.layer-group input,.score-hidden input { accent-color:var(--accent); }.periods { display:flex; flex-wrap:nowrap; gap:7px; padding-left:20px; }.periods label { color:var(--muted); gap:4px; }.periods input { width:12px; height:12px; margin:0; flex:none; }.layer-inline { display:flex; align-items:center; gap:12px; }.layer-inline .disabled { gap:2px; }.swatch { width:13px; height:3px; display:inline-block; background:var(--muted); }.tf-1d { background:#d96073; }.tf-1h { background:#efb643; }.manual { background:#65b7cf; }.vwap { background:#b07ad6; }.horizontal { background:#9fb0c4; }
|
||||
.hint { margin:6px 0 2px; font-size:10px; color:var(--muted); line-height:1.35; }
|
||||
|
||||
/* Tool palette: the head arms the tool, the body configures what it creates. */
|
||||
|
|
|
|||
Loading…
Reference in a new issue