From d9393a2148b48ab627547c2f488796fa61676203 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Fri, 19 Jun 2026 21:27:05 +0200 Subject: [PATCH] fix(settings): raise primary controls to the 44px touch floor Apply the canonical min-h-11 sm:min-h-9 (and min-w-11 for icon-only controls) to the primary Settings controls that sat at 32-40 px on phones: the AI fallback-chain reorder/remove/save/add icons, provider form save/test/connect actions, coach-memory forget, avatar replace and remove, section save/cancel/reset CTAs, the export and import action rows, the About external links, and the thresholds editor row. Collapse the injection-sites checkbox grid to one column on phones and stack the password-change grid below lg. --- src/components/settings/about-me-section.tsx | 2 ++ src/components/settings/about-section.tsx | 21 ++++++++++++++++--- src/components/settings/account-section.tsx | 5 +++-- src/components/settings/advanced-section.tsx | 6 +++--- .../settings/ai/anthropic-provider-form.tsx | 1 + .../settings/ai/codex-provider-form.tsx | 4 ++-- .../settings/ai/fallback-chain-card.tsx | 12 +++++++++-- .../settings/ai/local-provider-form.tsx | 1 + .../settings/ai/openai-provider-form.tsx | 1 + .../settings/ai/runtime-actions-row.tsx | 2 ++ .../settings/coach-memory-section.tsx | 2 ++ .../settings/coach-prefs-section.tsx | 1 + .../settings/cycle-tracking-card.tsx | 7 ++++++- .../settings/dashboard-layout-section.tsx | 4 +++- src/components/settings/export-section.tsx | 4 ++++ src/components/settings/import-panel.tsx | 8 +++++++ .../settings/injection-sites-card.tsx | 2 +- .../settings/insights-pill-order-section.tsx | 2 +- .../settings/thresholds-editor-section.tsx | 2 ++ 19 files changed, 71 insertions(+), 16 deletions(-) diff --git a/src/components/settings/about-me-section.tsx b/src/components/settings/about-me-section.tsx index b92cace67..6683d45a4 100644 --- a/src/components/settings/about-me-section.tsx +++ b/src/components/settings/about-me-section.tsx @@ -274,6 +274,7 @@ export function AboutMeSection({ type="button" variant="outline" size="sm" + className="min-h-11 sm:min-h-9" data-testid="settings-about-me-clear" disabled={!isAuthenticated || save.isPending} onClick={() => @@ -292,6 +293,7 @@ export function AboutMeSection({ - - @@ -206,6 +207,7 @@ export function FallbackChainCard({ aria-label={t("settings.ai.providerChain.moveDown")} disabled={idx === entries.length - 1} onClick={() => move(idx, 1)} + className="min-h-11 min-w-11 sm:min-h-9 sm:min-w-9" > @@ -214,7 +216,7 @@ export function FallbackChainCard({ size="sm" variant="outline" aria-label={t("settings.ai.providerChain.removeFromChain")} - className="text-destructive" + className="text-destructive min-h-11 min-w-11 sm:min-h-9 sm:min-w-9" onClick={() => remove(idx)} disabled={entries.length <= 1} > @@ -234,6 +236,7 @@ export function FallbackChainCard({ )} - @@ -308,6 +315,7 @@ function AddProviderControl({ type="button" size="sm" variant="outline" + className="min-h-11 sm:min-h-9" onClick={() => { if (isProviderType(picked)) onAdd(picked); }} diff --git a/src/components/settings/ai/local-provider-form.tsx b/src/components/settings/ai/local-provider-form.tsx index 7c18a92f7..a482df7e4 100644 --- a/src/components/settings/ai/local-provider-form.tsx +++ b/src/components/settings/ai/local-provider-form.tsx @@ -150,6 +150,7 @@ export function LocalProviderForm({
{enabled ? ( - ) : null} diff --git a/src/components/settings/dashboard-layout-section.tsx b/src/components/settings/dashboard-layout-section.tsx index b302eeabb..028e35e8b 100644 --- a/src/components/settings/dashboard-layout-section.tsx +++ b/src/components/settings/dashboard-layout-section.tsx @@ -337,7 +337,7 @@ export function DashboardLayoutSection({ id }: { id: string }) { size="sm" onClick={() => resetMutation.mutate()} disabled={resetMutation.isPending} - className="self-end sm:self-auto" + className="min-h-11 self-end sm:min-h-9 sm:self-auto" > {t("dashboard.layoutReset")} @@ -551,6 +551,7 @@ export function DashboardLayoutSection({ id }: { id: string }) { @@ -331,6 +332,7 @@ function MetricRow({