RoyalVNCKit prioritizes .diffieHellman (ARD) over .vnc during handshake when
both are offered. My delegate adapter was passing an empty username to
VNCUsernamePasswordCredential, so any Mac with user-account screen sharing
enabled rejected the credential before .vnc fallback could happen.
Fix: persist a username on SavedConnection and pipe it through to the
credential callback. Leave blank to use the VNC-only password path.
AddConnection footer now explains the two Mac paths:
• User account (ARD) — macOS short name + full account password
• VNC-only password — blank username + ≤8 char password
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Verifies:
- Title lives in the top 25% of the screen (guards against letterboxing regressions)
- Plus button opens Add Connection sheet; Cancel dismisses
- Settings gear opens Settings sheet; Done dismisses
- Search field accepts input and keeps the top chrome visible
- Empty-state CTA routes to Add Connection
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>