docs: events in the dock and on its page
The dock's Events block, the events slide-over page, the availability-rule deviation, the probe lines and the removal of the left pane are described; the false remembered-width claim is gone. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
9db5e4a49c
commit
c4b79da057
7 files changed
+206
-105
No files matched your search
@@ -440,15 +440,24 @@ Part of [CLAUDE.md](../../CLAUDE.md). These are rules that cost a defect to lear
|
||||
|
||||
## A latch is also a file
|
||||
|
||||
The pane that lists the cache is **on demand**: the toolbar's event-history button and the pane are
|
||||
collapsed until it is asked for, because a column of stale events beside a live plot is what a user
|
||||
who has stopped looking at events does not want. What makes it *available* -- (recording is on) or
|
||||
(an event is on screen) -- is decided in one place, `sync_events_availability()`, so the button and
|
||||
the pane cannot disagree; a disabled cache with nothing being examined takes the button away *and*
|
||||
collapses the pane, because a visible empty column is what "off" must not look like. Trigger mode is
|
||||
deliberately **not** one of the conditions: a stored event being examined is a file, which has no
|
||||
trigger, and tying the pane to the trigger would close the list under the click that opened an event.
|
||||
The recording switch lives in the trigger panel, not in the pane it empties.
|
||||
The cache is listed twice, from one `EventStore::list()`: the dock's compact **Events block** and the full list on the
|
||||
`events` slide-over page (the left pane, its divider and the header toggle are gone, so events no longer take
|
||||
any of the plot's width). What makes it *available* -- recording is on, **or** a replay is on screen, **or** the
|
||||
cache already holds something (`event_recording || replaying || events_cached`) -- is decided in one place,
|
||||
`sync_events_availability()`, and it sets the block's sensitivity (`dock_events_set_sensitive()`) and the page's
|
||||
(`events_box`) from the one `available`, so they cannot disagree. Unavailable means **insensitive, never hidden**
|
||||
("disable, do not hide"): the block stays on screen greyed, and turning recording off with the page open leaves it up
|
||||
and greyed rather than stale and live.
|
||||
|
||||
**This deliberately differs from the redesign spec**, which has the block insensitive "outside trigger mode". Trigger
|
||||
mode is *not* one of the conditions: a stored event being examined is a file, which has no trigger, and a replay or a
|
||||
group *leaves* trigger mode, so a block that went grey outside trigger mode would grey itself under the very click
|
||||
that started the replay -- the one-click replay in the dock would disable the dock it was clicked in. Do not "fix" this
|
||||
to match the spec. The recording switch lives in the trigger panel, not in the block it empties.
|
||||
|
||||
The two views follow the latch on different cadences: the dock is rebuilt on **every** latch (`record_event()`), the
|
||||
page's list only while the page is open, and `open_events_page()` refreshes it when it was closed; a caller that
|
||||
opens the page any other way shows a list that is as stale as the last time it was open.
|
||||
|
||||
## Opening a file is a detour, so *Go live* is a restore
|
||||
|
||||
|
||||
Reference in new issue
Block a user