diff --git a/ios/Platform/Platform/ContentView.swift b/ios/Platform/Platform/ContentView.swift index 7faa181..3bc0712 100644 --- a/ios/Platform/Platform/ContentView.swift +++ b/ios/Platform/Platform/ContentView.swift @@ -73,23 +73,12 @@ struct MainTabView: View { .tint(Color.accentWarm) .tabBarMinimizeBehavior(.onScrollDown) - // Feedback button (not on Reader) - if selectedTab != 2 { - VStack { - Spacer() - HStack { - FeedbackButton() - .padding(.leading, 20) - Spacer() - } - .padding(.bottom, 70) - } - } + // Bottom floating controls + VStack(spacing: 10) { + Spacer() - // Auto-scroll speed controls (overlay when playing on Reader) - if isAutoScrolling && selectedTab == 2 { - VStack { - Spacer() + // Speed pill (only when auto-scrolling on Reader) + if isAutoScrolling && selectedTab == 2 { HStack(spacing: 12) { Button { scrollSpeed = max(0.25, scrollSpeed - 0.25) @@ -117,11 +106,20 @@ struct MainTabView: View { .padding(.vertical, 10) .background(.regularMaterial, in: Capsule()) .shadow(color: .black.opacity(0.15), radius: 12, y: 4) - .padding(.bottom, 50) .transition(.move(edge: .bottom).combined(with: .opacity)) } - .animation(.spring(duration: 0.3), value: isAutoScrolling) + + // Feedback button (not on Reader) + if selectedTab != 2 { + HStack { + FeedbackButton() + .padding(.leading, 20) + Spacer() + } + } } + .padding(.bottom, 70) + .animation(.spring(duration: 0.3), value: isAutoScrolling) } .confettiCannon( trigger: $confettiTrigger,