From 2f81a144c110505694c18e6dcf42b1650d784edd Mon Sep 17 00:00:00 2001 From: Thomas Rademaker Date: Mon, 2 Jan 2023 08:42:03 -0800 Subject: [PATCH] ContentTimelineView inside a page tabView to get a nice swipe gesture Changelog-Changed: Add swipe gesture to switch between tabs Closes: #202 --- damus/ContentView.swift | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/damus/ContentView.swift b/damus/ContentView.swift index 5c2be34b..1afb7bf1 100644 --- a/damus/ContentView.swift +++ b/damus/ContentView.swift @@ -82,17 +82,14 @@ struct ContentView: View { @Environment(\.colorScheme) var colorScheme var PostingTimelineView: some View { - VStack{ - ZStack { - if let damus = self.damus_state { - TimelineView(events: $home.events, loading: $home.loading, damus: damus, show_friend_icon: false, filter: filter_event) - } - if privkey != nil { - PostButtonContainer { - self.active_sheet = .post - } - } - }.ignoresSafeArea(.keyboard, edges: .bottom) + VStack { + TabView(selection: $filter_state) { + ContentTimelineView + .tag(FilterState.posts) + ContentTimelineView + .tag(FilterState.posts_and_replies) + } + .tabViewStyle(.page(indexDisplayMode: .never)) } .safeAreaInset(edge: .top) { VStack(spacing: 0) { @@ -106,6 +103,19 @@ struct ContentView: View { } } + var ContentTimelineView: some View { + ZStack { + if let damus = self.damus_state { + TimelineView(events: $home.events, loading: $home.loading, damus: damus, show_friend_icon: false, filter: filter_event) + } + if privkey != nil { + PostButtonContainer { + self.active_sheet = .post + } + } + } + } + var FiltersView: some View { VStack{ Picker("Filter State", selection: $filter_state) {