From 020cd8893add9d7649c5a3f350d1d8ace8a9c1c2 Mon Sep 17 00:00:00 2001 From: cheykrym Date: Sun, 5 Oct 2025 06:08:05 +0300 Subject: [PATCH] settings to burger menu --- yobble/Views/Tab/SideMenuView.swift | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/yobble/Views/Tab/SideMenuView.swift b/yobble/Views/Tab/SideMenuView.swift index b550d7f..a7ef299 100644 --- a/yobble/Views/Tab/SideMenuView.swift +++ b/yobble/Views/Tab/SideMenuView.swift @@ -67,6 +67,7 @@ struct SideMenuView: View { @Environment(\.colorScheme) var colorScheme @Binding var isPresented: Bool @State private var isAccountListExpanded = false + @State private var navigateToSettings = false // Adjustable paddings private let topPadding: CGFloat = 66 @@ -107,6 +108,13 @@ struct SideMenuView: View { var body: some View { VStack(alignment: .leading, spacing: 0) { + NavigationLink( + destination: SettingsView(viewModel: viewModel), + isActive: $navigateToSettings + ) { + EmptyView() + } + ScrollView(showsIndicators: false) { VStack(alignment: .leading, spacing: 0) { // Parent VStack @@ -241,7 +249,12 @@ struct SideMenuView: View { Spacer() SideMenuFooterButton(icon: "qrcode.viewfinder", title: "Scan", action: {}) SideMenuFooterButton(icon: "questionmark.circle", title: "Help Center", action: {}) - SideMenuFooterButton(icon: "gear", title: "Settings", action: {}) + SideMenuFooterButton(icon: "wrench", title: "Settings") { + withAnimation(.easeInOut) { + isPresented = false + } + navigateToSettings = true + } Spacer() } .padding() @@ -256,7 +269,9 @@ struct SideMenuView: View { struct SideMenuView_Previews: PreviewProvider { static var previews: some View { let mockViewModel = LoginViewModel() - SideMenuView(viewModel: mockViewModel, isPresented: .constant(true)) - .environmentObject(ThemeManager()) + NavigationView { + SideMenuView(viewModel: mockViewModel, isPresented: .constant(true)) + .environmentObject(ThemeManager()) + } } }