From e370842072bfd12272fd35d48583254b3aea4a69 Mon Sep 17 00:00:00 2001 From: chahinebrini Date: Sat, 16 May 2026 02:20:38 +0200 Subject: [PATCH] fix(native): domains-section flat, mails-section collapsible only DomainSection bekommt collapsible-Prop (default false). Domains-Section: kein Chevron, kein useState, Content immer sichtbar. Mails-Section: collapsible={true} + open/onToggle wie bisher. Co-Authored-By: Claude Sonnet 4.6 --- apps/rebreak-native/app/(app)/blocker.tsx | 31 ++++++++++++----------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/apps/rebreak-native/app/(app)/blocker.tsx b/apps/rebreak-native/app/(app)/blocker.tsx index 9cab1a1..8b87b23 100644 --- a/apps/rebreak-native/app/(app)/blocker.tsx +++ b/apps/rebreak-native/app/(app)/blocker.tsx @@ -61,8 +61,6 @@ export default function BlockerScreen() { }, [refreshDomains, syncBlocklist, refresh]); useDomainSubmissionRealtime(onDomainChange, true); - // Section collapse state — beide Sections starten offen - const [webOpen, setWebOpen] = useState(true); const [mailOpen, setMailOpen] = useState(true); // AddSheet state: tracks which section opened it @@ -369,8 +367,6 @@ export default function BlockerScreen() { title={t('blocker.section_domains')} count={countsByType.web} max={limits.web} - open={webOpen} - onToggle={() => setWebOpen((v) => !v)} onAdd={() => openAddSheet('web')} atLimit={countsByType.web >= limits.web} > @@ -388,6 +384,7 @@ export default function BlockerScreen() { title={t('blocker.section_mails')} count={countsByType.mail} max={limits.mail} + collapsible open={mailOpen} onToggle={() => setMailOpen((v) => !v)} onAdd={() => openAddSheet('mail')} @@ -448,7 +445,8 @@ function DomainSection({ title, count, max, - open, + collapsible = false, + open = true, onToggle, onAdd, atLimit, @@ -457,8 +455,9 @@ function DomainSection({ title: string; count: number; max: number; - open: boolean; - onToggle: () => void; + collapsible?: boolean; + open?: boolean; + onToggle?: () => void; onAdd: () => void; atLimit: boolean; children: React.ReactNode; @@ -496,8 +495,8 @@ function DomainSection({ > {/* Section Header */} - + {collapsible && ( + + )} - {open && ( + {(!collapsible || open) && ( {/* Progressbar */}