From ed433317110f03d03455ea46f79b4853b997c043 Mon Sep 17 00:00:00 2001 From: Andrew Blakeslee Moore Date: Sun, 5 Jul 2026 18:50:07 -0700 Subject: [PATCH] Tab Bar Load Animation Nucleic-Session: EEC60FAE-8368-49CA-9202-7026C12E7F8C Co-authored-by: Nucleic --- NucleicRemote/NucleicRemote/Views/Composer.swift | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/NucleicRemote/NucleicRemote/Views/Composer.swift b/NucleicRemote/NucleicRemote/Views/Composer.swift index 9351bce..80171c2 100644 --- a/NucleicRemote/NucleicRemote/Views/Composer.swift +++ b/NucleicRemote/NucleicRemote/Views/Composer.swift @@ -235,9 +235,17 @@ struct NewChatAffordance: ViewModifier { extension View { /// Add the floating "+" start-chat affordance (glass circle → glass composer sheet). See /// `NewChatAffordance`. + /// `enabled: false` drops the affordance entirely — the compact shell hosts a single shared "+" + /// beside its tab bar, so the per-page discs (Home, a project page) apply this only at regular + /// width, where there's no tab bar to carry it. + @ViewBuilder func newChatAffordance(project: WireProject? = nil, isPresented: Binding, - showsButton: Bool = true) -> some View { - modifier(NewChatAffordance(project: project, isPresented: isPresented, showsButton: showsButton)) + showsButton: Bool = true, enabled: Bool = true) -> some View { + if enabled { + modifier(NewChatAffordance(project: project, isPresented: isPresented, showsButton: showsButton)) + } else { + self + } } }