Skip to content

Commit 8763472

Browse files
authored
Refine gateway setup wizard UX and fix accessibility gaps (#940)
Refine the gateway setup wizard UX, improve accessibility names, make wizard text selectable, and fix the expanded-provider step id handling. Follow-up included in this merge: remove the stale 'More' overflow button when resetting wizard steps so it cannot leak onto later steps. Validation: local build.ps1, Shared tests, Tray tests; GitHub Build and Test, CodeQL gate, Socket checks all passed.
1 parent 74fd2c1 commit 8763472

20 files changed

Lines changed: 477 additions & 138 deletions
139 KB
Loading
115 KB
Loading
116 KB
Loading
102 KB
Loading
103 KB
Loading
123 KB
Loading
119 KB
Loading
121 KB
Loading

docs/setup-wizard-ux/README.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Setup wizard UX refresh — screens & accessibility proof
2+
3+
Screenshots captured from the live isolated dev app (`OPENCLAW_FORCE_ONBOARDING=1`,
4+
`run-app-local.ps1 -NoBuild -Isolated`) walking the full gateway setup + onboard flow.
5+
Accessibility was scanned per-screen with a standalone Axe.Windows (v2.4.1) scanner
6+
against the live process — the same engine Accessibility Insights uses.
7+
8+
## Screens
9+
10+
| # | Screen | Notes |
11+
|---|--------|-------|
12+
| 01 | Welcome + security notice | Selectable RichTextBlock body |
13+
| 02 | Setup mode | Single-selection `ListView` (ItemContainer), first item selected by default |
14+
| 03 | Config handling | Single-selection list, standardized bottom bar |
15+
| 04 | Model/auth provider (collapsed) | "Skip for now" pinned to top, subtle **More ▾** expander |
16+
| 05 | Model/auth provider (expanded) | One-click expand keeps "Skip for now"; full provider list |
17+
| 06 | Auth method | Single-selection list |
18+
| 07 | Text input step | API-key entry |
19+
| 08 | Capabilities | Radio group with accessible names (a11y fix) |
20+
21+
Bottom action bar across steps: standard **Back** button, `AccentButtonStyle`
22+
primary (Continue), subtle **More options** / **Skip** / **Start over** controls.
23+
24+
## Accessibility results (Axe.Windows, actionable violations)
25+
26+
All refactored surfaces flagged `NameNotNull` (focusable element with a null
27+
accessible Name) before the fix; every one is 0 after.
28+
29+
| Screen | Before | After |
30+
|--------|:------:|:-----:|
31+
| Capabilities radio group | 3 | 0 |
32+
| Setup mode ListView | 2 | 0 |
33+
| Provider list (collapsed) | 6 | 0 |
34+
| Provider list (expanded) | 7 | 0 |
35+
| Welcome / Confirm / Auth / Text input | 0 | 0 |
36+
37+
### Fixes
38+
- `WizardPage` option lists: each `ListViewItem` (and multiselect `CheckBox`) now
39+
gets `AutomationProperties.Name` = label + hint via a shared `CreateOptionItem`
40+
helper.
41+
- `CapabilitiesPage`: the three profile radio buttons (Read-only / Standard /
42+
Full access) now set `AutomationProperties.Name`.
43+
44+
### Known framework limitation (not fixed)
45+
Inline `Hyperlink` elements inside a `RichTextBlock` (security disclaimer link)
46+
report a null `BoundingRectangle` to UIA when scrolled out of view. This is a
47+
WinUI framework behavior for inline hyperlinks, not a control we construct.

src/OpenClaw.SetupEngine.UI/Pages/AdvancedSetupPage.xaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,10 @@
8686
<Border Width="8" Height="8" CornerRadius="4" VerticalAlignment="Center" Background="{ThemeResource SetupInactiveDotBrush}" />
8787
</StackPanel>
8888
<Button x:Name="BackButton" Grid.Column="0" Content="Back"
89-
Height="44" MinWidth="96" HorizontalAlignment="Left"
89+
MinWidth="100" HorizontalAlignment="Left"
9090
Click="Back_Click" />
9191
<Button x:Name="OpenConnectionButton" Grid.Column="1" Content="Open Companion Settings"
92-
Height="44" MinWidth="200" HorizontalAlignment="Right"
92+
MinWidth="100" HorizontalAlignment="Right"
9393
Style="{StaticResource AccentButtonStyle}"
9494
Click="OpenConnection_Click" />
9595
</Grid>

0 commit comments

Comments
 (0)