From 779eb9ac1f3919b84fcedf088fbcbec6585a27d0 Mon Sep 17 00:00:00 2001 From: Satindar Dhillon Date: Thu, 10 Mar 2022 20:48:50 -0800 Subject: [PATCH] add toggle button to switch between list and grid layouts --- .../App/Views/Home/HomeFeedViewIOS.swift | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/apple/OmnivoreKit/Sources/App/Views/Home/HomeFeedViewIOS.swift b/apple/OmnivoreKit/Sources/App/Views/Home/HomeFeedViewIOS.swift index 6e4734ccf..a946b21d3 100644 --- a/apple/OmnivoreKit/Sources/App/Views/Home/HomeFeedViewIOS.swift +++ b/apple/OmnivoreKit/Sources/App/Views/Home/HomeFeedViewIOS.swift @@ -113,6 +113,7 @@ import Views var body: some View { if prefersListLayout { HomeFeedListView( + prefersListLayout: $prefersListLayout, searchQuery: $searchQuery, selectedLinkItem: $selectedLinkItem, snoozePresented: $snoozePresented, @@ -152,6 +153,16 @@ import Views ) } } + ToolbarItem { + if UIDevice.isIPad { + Button( + action: { prefersListLayout.toggle() }, + label: { + Label("Toggle Feed Layout", systemImage: prefersListLayout ? "square.grid.2x2" : "list.bullet") + } + ) + } + } } } } @@ -159,6 +170,7 @@ import Views struct HomeFeedListView: View { @EnvironmentObject var dataService: DataService + @Binding var prefersListLayout: Bool @Binding var searchQuery: String @Binding var selectedLinkItem: FeedItem? @Binding var snoozePresented: Bool @@ -270,6 +282,18 @@ import Views } } .listStyle(PlainListStyle()) + .toolbar { + ToolbarItem { + if UIDevice.isIPad { + Button( + action: { prefersListLayout.toggle() }, + label: { + Label("Toggle Feed Layout", systemImage: prefersListLayout ? "square.grid.2x2" : "list.bullet") + } + ) + } + } + } .onAppear { viewModel.sendProgressUpdates = false }