Skip to content

fix: welcome window UX polish#450

Merged
datlechin merged 2 commits intomainfrom
fix/welcome-window-ux-polish
Mar 24, 2026
Merged

fix: welcome window UX polish#450
datlechin merged 2 commits intomainfrom
fix/welcome-window-ux-polish

Conversation

@datlechin
Copy link
Collaborator

@datlechin datlechin commented Mar 24, 2026

Summary

Five UX fixes for the welcome window connection list to match native macOS conventions:

  • Escape clears search: Pressing Escape in the search field clears text and moves focus to the connection list (matches Finder, Xcode, Spotlight)
  • Initial focus on open: Search field auto-focuses when the welcome window opens (no click required before keyboard works)
  • Cmd+A select all: Selects all visible connections. Escape on the list deselects all.
  • ↵ Connect hint in footer: The most important shortcut was missing from the keyboard hints
  • Group color in Move to Group menu: Replaced Circle().fill(color) (not rendered by NSMenu) with Label(name, systemImage: "circle.fill") which renders correctly

Test plan

  • Open welcome window → search field is focused
  • Type search text → press Escape → text clears, focus moves to list
  • Click a connection → press Cmd+A → all visible connections selected
  • Press Escape on list → selection clears
  • Footer shows "↵ Connect" hint
  • Right-click → Move to Group → group colors visible in submenu

Summary by CodeRabbit

  • New Features

    • Search field auto-focuses on view load for quicker typing.
    • Keyboard shortcuts: Enter to connect; Escape clears search and moves focus to the connection list; Escape also clears selection when rows are selected; Command+A selects all visible connections.
  • Style

    • Refined group list visuals for clearer color indicators and selection display.

@coderabbitai
Copy link

coderabbitai bot commented Mar 24, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a4c96845-9473-44bd-9f72-0a0d22213ff5

📥 Commits

Reviewing files that changed from the base of the PR and between 0c1d0c8 and 5619281.

📒 Files selected for processing (1)
  • TablePro/Views/Connection/WelcomeWindowView.swift

📝 Walkthrough

Walkthrough

Initial focus is set to the search field on appear; search and list views receive new Escape/Return/Command+A keyboard behaviors for clearing text, navigating focus, connecting, and selecting all visible connections. The group move-to menu switches to a system-filled-circle image for non-default group colors.

Changes

Cohort / File(s) Summary
Keyboard navigation & selection
TablePro/Views/Connection/WelcomeWindowView.swift
Set initial focus to .search on .onAppear; search field: added Escape to clear searchText and move focus to .connectionList, preserved Return (connect) and delete/backspace navigation; connection list: added Command+A to select all visible connections and Escape to clear selection; added Enter keyboard hint ("↵" → Connect).
Group move-to menu UI
TablePro/Views/Connection/WelcomeWindowView.swift
When group has a non-default color, replaced a colored Circle with Image(systemName: "circle.fill") and applied .foregroundStyle(group.color.color); kept group name and current-group checkmark logic.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 I nudged the focus to start with a hop,
Pressed Enter to connect, Escape to stop,
Command+A gathers friends in a line,
Circles now gleam with a system shine,
Hooray — a little rabbit clap and hop! 🥕✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'fix: welcome window UX polish' directly addresses the main changes in the PR, which involve multiple UX improvements to the welcome window (focus behavior, keyboard shortcuts, menu rendering). It accurately summarizes the primary focus.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/welcome-window-ux-polish

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@datlechin datlechin merged commit 73e3f41 into main Mar 24, 2026
2 checks passed
@datlechin datlechin deleted the fix/welcome-window-ux-polish branch March 24, 2026 18:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant