From e004d8103ba52b8dbe383061d6b609ce6024d45c Mon Sep 17 00:00:00 2001 From: Fringg Date: Sun, 29 Mar 2026 03:18:21 +0300 Subject: [PATCH] fix: mobile layout and touch target improvements for admin settings - SettingsTableRow: stack name above controls on mobile, show action buttons without hover (max-lg:opacity-100) - SettingsMobileTabs: increase touch targets to 44px, add scroll spacers - QuickToggles: increase chip touch targets - SettingInput: increase display button touch target - AdminSettings: add bottom padding buffer to mobile layout --- src/components/admin/QuickToggles.tsx | 2 +- src/components/admin/SettingInput.tsx | 2 +- src/components/admin/SettingsMobileTabs.tsx | 10 ++++++---- src/components/admin/SettingsTableRow.tsx | 19 ++++++++++++++----- src/pages/AdminSettings.tsx | 2 +- 5 files changed, 23 insertions(+), 12 deletions(-) diff --git a/src/components/admin/QuickToggles.tsx b/src/components/admin/QuickToggles.tsx index 2c40841..84fd030 100644 --- a/src/components/admin/QuickToggles.tsx +++ b/src/components/admin/QuickToggles.tsx @@ -39,7 +39,7 @@ export function QuickToggles({ settings, onUpdate, disabled, className }: QuickT onClick={() => onUpdate(setting.key, isOn ? 'false' : 'true')} disabled={disabled} className={cn( - 'flex items-center gap-2 rounded-lg border px-2.5 py-1.5 text-xs font-medium transition-all', + 'flex items-center gap-2 rounded-lg border px-2.5 py-2.5 text-xs font-medium transition-all', isOn ? 'border-success-500/20 bg-success-500/[0.08] text-dark-100' : 'border-dark-600/50 bg-dark-700/20 text-dark-400', diff --git a/src/components/admin/SettingInput.tsx b/src/components/admin/SettingInput.tsx index 42da472..aef267e 100644 --- a/src/components/admin/SettingInput.tsx +++ b/src/components/admin/SettingInput.tsx @@ -184,7 +184,7 @@ export function SettingInput({ setting, onUpdate, disabled }: SettingInputProps) ); })} + {/* Level 2: Sub-item chips (shown when a group is expanded) */} @@ -164,7 +165,7 @@ export function SettingsMobileTabs({ ); })} + )} diff --git a/src/components/admin/SettingsTableRow.tsx b/src/components/admin/SettingsTableRow.tsx index 8d3c6c1..df76f8f 100644 --- a/src/components/admin/SettingsTableRow.tsx +++ b/src/components/admin/SettingsTableRow.tsx @@ -67,9 +67,13 @@ export function SettingsTableRow({ className, )} > -
+
{/* Left side: name, badges, key */} -
+
{/* Name + badges row */}
{displayName} @@ -106,7 +110,12 @@ export function SettingsTableRow({
{/* Right side: control + action buttons */} -
+
{setting.read_only ? ( {isBool @@ -133,7 +142,7 @@ export function SettingsTableRow({