From ff20fe4f61f3b5691c08e8c364eb1f4c6c3a9d74 Mon Sep 17 00:00:00 2001 From: Hongming Wang Date: Sun, 3 May 2026 22:28:41 -0700 Subject: [PATCH] canvas/{OrgImportPreflightModal,SkillsTab}: hover sweep + custom-source focus ring MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OrgImportPreflightModal: - 3× bg-accent-strong hover:bg-accent (Import + 2 add-key buttons) — accent is the LIGHTER variant, drops below AA on white text → bg-accent hover:bg-accent-strong. - Cancel: bg-surface-card hover:bg-surface-card no-op → surface- elevated + focus-visible ring. SkillsTab: - Custom-source input had focus:border-violet-600 but no focus-visible ring — keyboard users only got a 1px border swap. Added focus-visible:ring-violet-600/50 (kept the violet to match the surrounding "custom install" UI's brand). Co-Authored-By: Claude Opus 4.7 (1M context) --- canvas/src/components/OrgImportPreflightModal.tsx | 8 ++++---- canvas/src/components/tabs/SkillsTab.tsx | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/canvas/src/components/OrgImportPreflightModal.tsx b/canvas/src/components/OrgImportPreflightModal.tsx index 3f645900..0949e223 100644 --- a/canvas/src/components/OrgImportPreflightModal.tsx +++ b/canvas/src/components/OrgImportPreflightModal.tsx @@ -293,7 +293,7 @@ export function OrgImportPreflightModal({ @@ -308,7 +308,7 @@ export function OrgImportPreflightModal({ type="button" onClick={onProceed} disabled={!canProceed} - className="px-4 py-1.5 text-[11px] font-semibold rounded bg-accent-strong hover:bg-accent text-white disabled:bg-surface-card disabled:text-white-soft disabled:cursor-not-allowed" + className="px-4 py-1.5 text-[11px] font-semibold rounded bg-accent hover:bg-accent-strong text-white disabled:bg-surface-card disabled:text-white-soft disabled:cursor-not-allowed" > Import @@ -428,7 +428,7 @@ function StrictEnvRow({ type="button" onClick={() => onSave(envKey)} disabled={d?.saving || !d?.value.trim()} - className="px-2 py-1 text-[10px] rounded bg-accent-strong hover:bg-accent text-white disabled:opacity-40 disabled:cursor-not-allowed" + className="px-2 py-1 text-[10px] rounded bg-accent hover:bg-accent-strong text-white disabled:opacity-40 disabled:cursor-not-allowed" > {d?.saving ? "…" : "Save"} @@ -520,7 +520,7 @@ function AnyOfEnvGroup({ type="button" onClick={() => onSave(m)} disabled={d?.saving || !d?.value.trim()} - className="px-2 py-1 text-[10px] rounded bg-accent-strong hover:bg-accent text-white disabled:opacity-40 disabled:cursor-not-allowed" + className="px-2 py-1 text-[10px] rounded bg-accent hover:bg-accent-strong text-white disabled:opacity-40 disabled:cursor-not-allowed" > {d?.saving ? "…" : "Save"} diff --git a/canvas/src/components/tabs/SkillsTab.tsx b/canvas/src/components/tabs/SkillsTab.tsx index 1ed36da7..bcd69400 100644 --- a/canvas/src/components/tabs/SkillsTab.tsx +++ b/canvas/src/components/tabs/SkillsTab.tsx @@ -403,7 +403,7 @@ export function SkillsTab({ workspaceId, data }: Props) { }} placeholder="e.g. github://owner/repo#v1.0" spellCheck={false} - className="flex-1 rounded border border-line bg-surface px-2 py-1 text-[10px] text-ink placeholder:text-ink-soft focus:border-violet-600 focus:outline-none" + className="flex-1 rounded border border-line bg-surface px-2 py-1 text-[10px] text-ink placeholder:text-ink-soft focus:outline-none focus:border-violet-600 focus-visible:ring-2 focus-visible:ring-violet-600/50" />