Skip to content

UI/UX review: Watch folders switch, screen-reader names, keyboard donut editing (plan for approval) #524

Open

Description

@cre8ive-marketing

@KnifeLemon, I went through the main window and the editors on current main (e492ec2), using the screenshots RenderTests saves plus the XAML. Here's what I found and a plan. Nothing is started; I'd only begin after 2.1.0 is out, and only the points you OK.

Bugs

  1. Watch folders: the switch reads "On" while it's off. The rule card's switch uses watch.enabled ("On") as both OnContent and OffContent, and the status next to it says "Off", so an off rule shows "On Off" (see page-watch-en.png).
    Plan: drop the switch's own label there (OnContent="" OffContent="", as the Shortcuts cards do), so the status ("Watching" / "Off" / the error) is the only text.

Accessibility (screen readers and keyboard)

  1. Icon-only buttons have no name for screen readers. 23 of them have a tooltip but no AutomationProperties.Name, so a screen reader may announce just "button". Some examples: duplicate / delete preset, delete gesture, remove watch folder, the rename tool's add / move / remove buttons, the PDF page editor's move up / down, and the close buttons of the notice windows.
    The newer windows (clip cutter, print studio, crop) already set AutomationProperties.Name next to ToolTip.Tip.
    Plan: add the same AutomationProperties.Name, with the tooltip's resource, on each. These are XAML-only changes and need no new strings.

  2. Fields read as "combo box" / "slider" with no name. In the preset editor (about 40 fields), Watch folders and Shortcuts, each field's label is a TextBlock above it that isn't linked to the field.
    Plan: name the label with x:Name and set AutomationProperties.LabeledBy on the field. This needs no new strings.

  3. The donut can only be arranged with the mouse. Preset chips in "Available presets" are Borders. They can't be focused, so adding (double-click), editing (right-click) and ordering (drag) have no keyboard path.
    Plan, smallest version: make each chip focusable, with Enter = add to the donut and the context-menu key / Shift+F10 = edit, plus a visible focus ring. I'd leave reordering slices by keyboard out unless you want it.

Look

  1. Secondary buttons look disabled. Plain buttons (Revert, Retry gestures, Use my copy…, Browse…, Record) use the Fluent grey fill. That's nearly the same grey as a disabled field (the DPI box in page-presets-en.png is right next to them), and only the text colour tells them apart.
    This is a design call, so two options:

    • (a) Leave them as they are.
    • (b) Give plain buttons a lighter SurfaceAltBrush fill with a subtle border, so disabled stays the only flat grey.

    I'd only do (b) if you like it, and I'd post before/after screenshots first.

Not included: #363 (the theme preview's switch) is already assigned to @Saad-elnagar.

Questions

  • Which of 1–5 would you like, and should they come as one PR or one per point? I'd suggest 1 + 2 + 3 together (XAML-only), 4 on its own, and 5 only if you pick (b).
  • For 4: is Enter to add / Shift+F10 to edit OK, or do you have other keys in mind?

None of this touches the settings schema or the donut's slots.

Activity

  1. KnifeLemon commented on Oct 24, 2026

    @KnifeLemon
    Owner

    Thanks, this is a careful review. All of 1–4 are welcome after 2.1.0: 1 + 2 + 3 together as one PR (XAML only), and 4 on its own. For 4, Enter to add and Shift+F10 / the context-menu key to edit are good; leave keyboard reordering out for now.

    For 5, let's try (b): post before/after screenshots first (light and dark, a page with a disabled field next to plain buttons), and we'll decide from those.

  2. cre8ive-marketing commented on Oct 24, 2026

    @cre8ive-marketing
    CollaboratorAuthor

    Thanks @KnifeLemon! Starting now. 1 + 2 + 3 will come as one XAML-only PR and 4 on its own, both opened after 2.1.0 is tagged. For 5, I'll post the before/after screenshots here (light and dark) before changing anything.

  3. cre8ive-marketing commented on Oct 24, 2026

    @cre8ive-marketing
    CollaboratorAuthor

    @KnifeLemon, here are the before/after screenshots for point 5 (b). Nothing is in a PR yet.

    What (b) changes: only the Fluent ButtonBackground* / ButtonBorderBrush* resources in Soft.axaml's light and dark dictionaries.

    • Plain buttons get the surface colour (white / #262624) with a thin border, and the old fill only on hover.
    • Accent, icon, ghost and nav buttons, the modifier-key toggles, disabled controls and the Material You theme stay as they are.
    • Soft.axaml is linked by Setup too, so its buttons would follow.

    Presets: disabled DPI box next to Revert (light, dark)

    presets light
    presets dark

    Engines (light, dark)

    engines light
    engines dark

    Watch folders (light, dark)

    watch light
    watch dark

    If you like it, I'll open it as its own small PR. If not, I'll drop it.

  4. cre8ive-marketing commented on Oct 25, 2026

    @cre8ive-marketing
    CollaboratorAuthor

    @KnifeLemon, thanks for merging #537 (screen-reader names, Watch folders switch) and #538 (palette chips by keyboard). They came after 2.1.0, so they ship in the next release. Point 5 (button look, option b) still waits for your call; the screenshots are above.

  5. KnifeLemon commented on Oct 25, 2026

    @KnifeLemon
    Owner

    Thanks for the screenshots, they make it clear: with (b) Revert, Browse… and the others no longer look like the disabled DPI box next to them. Yes to (b), as its own small PR. Please include a Setup screenshot too, since Soft.axaml is shared with it.

  6. cre8ive-marketing commented on Oct 25, 2026

    @cre8ive-marketing
    CollaboratorAuthor

    @KnifeLemon, point 5 (b) is built, tested and pushed: #570. It includes the Setup Options screenshots (light and dark). It also makes Material You and a theme.json surface reach the buttons, so they do not stay white on a tinted card. The full test suite passes locally; I will ask you to merge once CI is green.

  7. added 2 commits that reference this issue on Oct 25, 2026
  8. jojofox0815 commented on Oct 25, 2026

    @jojofox0815

    FYI: #583 contains an accessibility part for the donut. It is based on main with #537 and #538 already in, and adds the following on top. Happy to drop anything that overlaps with your plan:

    • DonutMenuAutomationPeer: the donut is a list for screen readers. Each slice is a list item with:

      • its label and caption,
      • the reason it's disabled, as help text,
      • the selection and invoke patterns.

      Keyboard selection changes are announced.

    • The donut can take the focus and has a focus ring. In the toolbar editor:

      • arrows choose a slice,
      • Enter / Space / F2 / the context-menu key edit it,
      • Ctrl + arrow moves it.
    • With the system's high-contrast theme, the ring is drawn in the theme's colours.

    Which parts would you like to keep, and in which PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions