diff --git a/docs/android-port.md b/docs/android-port.md index 4ae7fc9..6a137b4 100644 --- a/docs/android-port.md +++ b/docs/android-port.md @@ -568,9 +568,16 @@ go at 360dp: believing they typed an `l`. **The surface has since taken the whole screen.** `PhoneShell` collapses the header, the session strip - and the bottom bar while a terminal is showing — one binding on `IsShowingPages` each — and the screen - draws a 35-pixel bar in their place: back, the session pills, and a `+` raising a sheet with the three - connections there are. That sheet is the head's first control that could be drawn over the renderer, so + and the bottom bar while a shell is showing, and the screen draws a 35-pixel bar in their place: back, + the session pills, and a `+` raising a sheet with the three connections there are. + + *A shell rather than the surface, and the two parted company once that surface gained a connect page.* + With nothing running, Connections is a box, a CONNECT button and the machines connected to before — a + page in everything but which enum it is in — so `RefreshChrome` keeps the bar (and, wide, the rail) under + it and the Connections entry lights for the first time. It is the one screen reachable by closing your + last tab, and collapsing the nav there left the system back gesture as the only route to Hosts or + Settings. The header is not part of that: the surface draws its own bar, and a vault header above it is + the second row of chrome this head exists to avoid. That sheet is the head's first control that could be drawn over the renderer, so it collapses it rather than covering it, exactly as the desktop's palette does; whether Android's WebView actually composites above Avalonia content is still the unverified question recorded below, and collapsing is correct under either answer. diff --git a/docs/manual-checks.md b/docs/manual-checks.md index 590641b..f87331d 100644 --- a/docs/manual-checks.md +++ b/docs/manual-checks.md @@ -1277,12 +1277,13 @@ headless surface has a native view to answer with. `docs/android-port.md` still Open a shell from HOSTS. -**Pass:** the vault header, the session strip and the four-entry bottom bar are all gone. What is left is +**Pass:** the vault header, the session strip and the three-entry bottom bar are all gone. What is left is one bar — a back arrow, the session pills, a `+` — and then the terminal down to the accessory keys. Press back: all three come back, the tab is still in the strip and its dot is still green. -**Failure means:** one of the three rows is not bound on `IsShowingPages`, or the terminal is being reached -by a route that leaves `Surface` on `Page`. +**Failure means:** the strip is not bound on `IsShowingPages`, `RefreshChrome` is not reading `HasTabs`, or +the terminal is being reached by a route that leaves `Surface` on `Page`. A bar still there **with a shell +showing** is the one that matters: that is the third of the screen this arrangement exists to give back. ### 11.2 The connect menu is not drawn over the renderer · **the important one** @@ -1348,6 +1349,14 @@ Close every tab, then press Connections in the bottom bar. keychain has ever connected to anything — a RECENT list underneath. The whole thing scrolls with the keyboard up, and the password box shows dots with **no suggestion strip** above the keyboard. +**And the bottom bar is still there, with Connections lit.** Press Hosts: it goes straight there, without +the back gesture. Then open a shell — the bar goes, which is 11.1. Wide, the same holds for the rail. + +**Failure means:** for the bar, `RefreshChrome` is back to collapsing the nav for the whole terminal +surface rather than for a shell — which strands anybody who reaches this screen by closing their last tab. +For an unlit Connections entry, `IsCurrent` lost its binding: on this screen it is the only true thing the +bar could say about where you are. + Type a machine you can reach and press CONNECT: a tab appears in the bar and the shell opens. Type something malformed — no `user@`, or `:70000` — and the refusal appears under the boxes, in the warning colour, with no tab and nothing dialled. diff --git a/src/DodoSSH.Client.Android/Views/PhoneRail.axaml b/src/DodoSSH.Client.Android/Views/PhoneRail.axaml index 8a5bc13..fc6d7be 100644 --- a/src/DodoSSH.Client.Android/Views/PhoneRail.axaml +++ b/src/DodoSSH.Client.Android/Views/PhoneRail.axaml @@ -134,15 +134,17 @@ -