Public Access
Record v5b in the design-import log, and true up the manual checks
This commit is contained in:
+33
-30
@@ -24,15 +24,17 @@ a phase had nothing left for a person to do, which is the good outcome rather th
|
||||
|
||||
---
|
||||
|
||||
## Phase 1 — the shell and the tab strip
|
||||
## Phase 1 — the shell and the nav rail
|
||||
|
||||
### 1.1 No screen is sliced at the WebView's left edge · **the important one**
|
||||
|
||||
Open two terminals, then visit every nav rail entry in turn — Hosts, Keychain, Pins, Snippets, Logs, Vaults,
|
||||
Preferences — and both of the fixed tabs, SFTP and S3.
|
||||
Open two terminals, then visit every nav rail entry in turn — Hosts, Keys, Pins, Snips, Logs — and both of
|
||||
the switcher's other two segments, SFTP and S3, at the rail's own head.
|
||||
|
||||
**Pass:** each screen draws whole, its buttons all clickable, and the tab strip stays across the top of all
|
||||
nine. The nav rail is there for the seven and gone for the two, because it belongs to the Vaults tab.
|
||||
**Pass:** each screen draws whole, its buttons all clickable, and the nav rail stays up the left edge for
|
||||
every one of them. Since v5b's chrome pass the rail is permanent furniture — it no longer collapses for
|
||||
SFTP, S3 or an open terminal the way it did while it belonged to a Vaults tab; see
|
||||
`MainWindowViewModel.IsVaultsTab`'s own remark for what changed and what stayed the same under that name.
|
||||
|
||||
**Failure means:** a screen is not collapsing while the terminal shows. The terminal is a native child
|
||||
window and composites above everything Avalonia paints, so the symptom is a screen cut off at the WebView's
|
||||
@@ -41,8 +43,8 @@ bound to `IsShowingPages` in `MainWindow.axaml` is what should make it impossibl
|
||||
|
||||
### 1.2 A tab clicked from another screen takes the keyboard
|
||||
|
||||
Go to FILES with a terminal open. Click the tab. **Start typing immediately, without clicking anything
|
||||
else.**
|
||||
Go to SFTP with a terminal open, then click the SSH segment at the rail's head to return to it. **Start
|
||||
typing immediately, without clicking anything else.**
|
||||
|
||||
**Pass:** every character reaches the shell, including the first.
|
||||
|
||||
@@ -53,7 +55,7 @@ be typed immediately rather than after a pause.
|
||||
|
||||
### 1.3 Leaving a terminal gives the keyboard back
|
||||
|
||||
With a terminal focused, click FILES. Type into the filter box.
|
||||
With a terminal focused, click SFTP at the rail's head. Type into the filter box.
|
||||
|
||||
**Pass:** the characters appear in the box.
|
||||
|
||||
@@ -64,10 +66,10 @@ strip rework and is now on the hot path. See `docs/platform-flags.md`.
|
||||
|
||||
### 1.4 The middle click closes tabs and only tabs
|
||||
|
||||
Middle-click a tab (closes it), the strip background to the right of the last tab (closes nothing), and the
|
||||
`+` button (closes nothing, opens nothing).
|
||||
On the terminal's own in-screen tab row: middle-click a tab (closes it), the row's background to the right
|
||||
of the last tab (closes nothing), and the `+` button (closes nothing, opens nothing).
|
||||
|
||||
**Pass:** as described. Covered by `TerminalTabsTests` headlessly, so this is a confirmation that headless
|
||||
**Pass:** as described. Covered by `SessionTabRowTests` headlessly, so this is a confirmation that headless
|
||||
pointer input matches a real mouse rather than a first look.
|
||||
|
||||
### 1.5 Connecting from the palette while on another screen
|
||||
@@ -82,28 +84,28 @@ Approving connects; CANCEL leaves you on FILES.
|
||||
question that cannot be reached — or the window has jumped to HOSTS, which is what it used to do and what
|
||||
cost the palette its whole point.
|
||||
|
||||
### 1.6 The vault menu draws above the terminal's rectangle · **the one with a precedent**
|
||||
### 1.6 The user-chip popover draws above the terminal's rectangle · **the one with a precedent**
|
||||
|
||||
With a terminal open and showing, press the `⌄` beside the Vaults tab.
|
||||
With a terminal open and showing, press the user chip at the foot of the nav rail.
|
||||
|
||||
**Pass:** the window leaves the terminal for the Vaults tab as the menu opens, and the menu is drawn whole
|
||||
over the screen underneath it — no part of it clipped along the WebView's edge.
|
||||
**Pass:** the popover opens without leaving the terminal, and is drawn whole over the screen underneath it —
|
||||
no part of it clipped along the WebView's edge.
|
||||
|
||||
**Failure means:** the popup is being composited under the renderer's native child window, and the guard
|
||||
this design relies on has stopped working. It is not supposed to be possible: `OnVaultMenuPressed` selects
|
||||
the Vaults tab *before* opening the flyout, and a page surface is one where the renderer is not drawn — the
|
||||
same move QuickConnect makes. `OpeningTheVaultMenu_SelectsTheVaultsTabSoTheTerminalIsNotUnderIt` asserts
|
||||
the ordering headlessly, which is as far as a headless test can go: it has no native window, so it cannot
|
||||
see what is painted over what. This check is the other half.
|
||||
**Failure means:** the popup is being composited under the renderer's native child window. Unlike the v3–v5
|
||||
tab strip's own vault menu, which sat directly above the terminal's own rectangle and had to select the
|
||||
Vaults tab before opening for exactly that reason, the rail's popover should not need that guard at all: it
|
||||
opens inside the rail's own 255-pixel column — see `NavRail.axaml`'s own remark — which the terminal's
|
||||
native child window never occupies, so there should be no rectangle here for a popup to be composited
|
||||
under. If this fails, that assumption is the thing to re-examine, not the ordering of two calls. No headless
|
||||
test can see this either way — it has no native window, so it cannot see what is painted over what.
|
||||
|
||||
It is on this list rather than assumed because the note beside the `+` button in `TerminalTabs.axaml`
|
||||
refuses a flyout on exactly this reasoning, and `docs/platform-flags.md` records what this project has
|
||||
already paid for treating a rendering claim as settled without looking.
|
||||
It is on this list because `docs/platform-flags.md` records what this project has already paid for treating
|
||||
a rendering claim as settled without looking.
|
||||
|
||||
### 1.7 Switching a vault off does not switch it out
|
||||
|
||||
With a team vault holding at least one host: press `⌄` beside Vaults, switch the team vault off, and check
|
||||
the hosts screen, the keychain and the pins.
|
||||
With a team vault holding at least one host: press the user chip at the foot of the nav rail, switch the
|
||||
team vault off in the popover, and check the hosts screen, the keychain and the pins.
|
||||
|
||||
**Pass:** that vault's hosts, keys and pins are gone from all three; the vault is still in the "file this
|
||||
into" picker on a host editor; the sync indicator still settles rather than stalling; and a host in another
|
||||
@@ -120,7 +122,8 @@ view models — this check is the version with a real connection on the end of i
|
||||
### 2.1 The fingerprint column is readable end to end
|
||||
|
||||
Connect to two or three hosts, approving each fingerprint. Go to Pins and narrow the window to its minimum
|
||||
(1016px since the v2 sidebar; it was 880 while the rail was 54 wide), then widen it to something ordinary.
|
||||
(1081px since v5b's titlebar and rail fidelity pass; it was 1016 with the v2 sidebar, and 880 while the rail
|
||||
was 54 wide), then widen it to something ordinary.
|
||||
|
||||
**Pass:** the full `SHA256:…` is on screen at both sizes, never cut off and never ellipsised.
|
||||
|
||||
@@ -1727,9 +1730,9 @@ button that always refuses is the milder failure and is still worth removing.
|
||||
Rename a shared vault from the VAULTS screen.
|
||||
|
||||
**Pass:** the new name is on the vault list, on the badge of every host card in that vault, in the keychain
|
||||
screen's "new items go to" picker, in the host editor's vault picker, and in the tab strip's vault menu —
|
||||
and on the second account after a refresh. Nothing in the vault needs re-encrypting and everybody's key
|
||||
still opens it.
|
||||
screen's "new items file to" picker, in the host editor's vault picker, and in the nav rail's user-chip
|
||||
popover — and on the second account after a refresh. Nothing in the vault needs re-encrypting and
|
||||
everybody's key still opens it.
|
||||
|
||||
**Failure means:** a name that moved in one place and not another is the shape this rename is most likely to
|
||||
fail in, because several screens read it separately from a cached vault row. A vault that stops opening
|
||||
|
||||
Reference in New Issue
Block a user