diff --git a/apps/ios/Shared/Views/ChatList/ChatsView.swift b/apps/ios/Shared/Views/ChatList/ChatsView.swift index 0049a09df0..b285c5f62e 100644 --- a/apps/ios/Shared/Views/ChatList/ChatsView.swift +++ b/apps/ios/Shared/Views/ChatList/ChatsView.swift @@ -28,19 +28,11 @@ struct ChatsView: View { } private var viewBody: some View { - NavStackCompat( - isActive: Binding( - get: { chatModel.chatId != nil }, - set: { _ in } - ), - destination: chatView - ) { - VStack { - if chatModel.chats.isEmpty { - onboardingButtons() - } - chatsView + VStack { + if chatModel.chats.isEmpty { + onboardingButtons() } + chatsView } } @@ -146,14 +138,6 @@ struct ChatsView: View { .clipShape(RoundedRectangle(cornerRadius: 16)) } - @ViewBuilder private func chatView() -> some View { - if let chatId = chatModel.chatId, let chat = chatModel.getChat(chatId) { - ChatView(chat: chat).onAppear { - loadChat(chat: chat) - } - } - } - private func filteredChats() -> [Chat] { if let linkChatId = searchChatFilteredBySimplexLink { return chatModel.chats.filter { $0.id == linkChatId } diff --git a/apps/ios/Shared/Views/Home/HomeView.swift b/apps/ios/Shared/Views/Home/HomeView.swift index 574c2a4298..628b033499 100644 --- a/apps/ios/Shared/Views/Home/HomeView.swift +++ b/apps/ios/Shared/Views/Home/HomeView.swift @@ -18,12 +18,35 @@ struct HomeView: View { var body: some View { ZStack(alignment: .bottomLeading) { - switch homeTab { - case .settings: settingsView() - case .contacts: contactsView() - case .chats: chatsView() - case .newChat: newChatView() + NavStackCompat( + isActive: Binding( + get: { chatModel.chatId != nil }, + set: { _ in } + ), + destination: chatView + ) { + VStack { + switch homeTab { + case .settings: settingsView() + case .contacts: contactsView() + case .chats: chatsView() + case .newChat: newChatView() + } + } + .toolbar { + ToolbarItemGroup(placement: .bottomBar) { + settingsButton() + Spacer() + contactsButton() + Spacer() + chatsButton() + Spacer() + newChatButton() + } + } } + .navigationViewStyle(.stack) + if userPickerVisible { Rectangle().fill(.white.opacity(0.001)).onTapGesture { withAnimation { @@ -37,17 +60,6 @@ struct HomeView: View { userPickerVisible: $userPickerVisible ) } - .toolbar { - ToolbarItemGroup(placement: .bottomBar) { - settingsButton() - Spacer() - contactsButton() - Spacer() - chatsButton() - Spacer() - newChatButton() - } - } .sheet(isPresented: $showConnectDesktop) { ConnectDesktopView() } @@ -187,6 +199,14 @@ struct HomeView: View { EmptyView() } } + + @ViewBuilder private func chatView() -> some View { + if let chatId = chatModel.chatId, let chat = chatModel.getChat(chatId) { + ChatView(chat: chat).onAppear { + loadChat(chat: chat) + } + } + } } #Preview {