Fix issues with search view hierarchy
This commit is contained in:
@ -493,7 +493,8 @@ struct AnimatingCellHeight: AnimatableModifier {
|
||||
options: PresentationLinkTransition.SlideTransitionOptions(edge: .trailing,
|
||||
options:
|
||||
PresentationLinkTransition.Options(
|
||||
modalPresentationCapturesStatusBarAppearance: true
|
||||
modalPresentationCapturesStatusBarAppearance: true,
|
||||
preferredPresentationBackgroundColor: ThemeManager.currentBgColor
|
||||
))),
|
||||
isPresented: $viewModel.presentWebContainer,
|
||||
destination: {
|
||||
|
||||
@ -73,7 +73,12 @@ enum LoadingBarStyle {
|
||||
self.linkIsActive = true
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
func pushLinkedRequest(request: LinkRequest) {
|
||||
self.linkRequest = request
|
||||
self.presentWebContainer = true
|
||||
}
|
||||
|
||||
private var filterState: FetcherFilterState? {
|
||||
if let appliedFilter = appliedFilter {
|
||||
return FetcherFilterState(
|
||||
|
||||
@ -101,7 +101,8 @@
|
||||
Spacer()
|
||||
Image(systemName: "chevron.right")
|
||||
}.onTapGesture {
|
||||
viewModel.linkRequest = LinkRequest(id: UUID(), serverID: item.id)
|
||||
homeFeedViewModel.pushLinkedRequest(request: LinkRequest(id: UUID(), serverID: item.id))
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -10,6 +10,11 @@ import Views
|
||||
@Published var errorMessage: String?
|
||||
|
||||
func loadItem(dataService: DataService, username: String, requestID: String) async {
|
||||
if let cached = Models.LibraryItem.lookup(byID: requestID, inContext: dataService.viewContext) {
|
||||
item = cached
|
||||
return
|
||||
}
|
||||
|
||||
guard let objectID = try? await dataService.loadItemContentUsingRequestID(username: username,
|
||||
requestID: requestID)
|
||||
else {
|
||||
@ -57,8 +62,6 @@ public struct WebReaderLoadingContainer: View {
|
||||
PDFWrapperView(pdfURL: pdfURL)
|
||||
}
|
||||
#endif
|
||||
} else if item.state == "CONTENT_NOT_FETCHED" {
|
||||
ProgressView()
|
||||
} else {
|
||||
WebReaderContainerView(item: item)
|
||||
#if os(iOS)
|
||||
@ -72,11 +75,7 @@ public struct WebReaderLoadingContainer: View {
|
||||
} else {
|
||||
ProgressView()
|
||||
.task {
|
||||
if let username = dataService.currentViewer?.username {
|
||||
await viewModel.loadItem(dataService: dataService, username: username, requestID: requestID)
|
||||
} else {
|
||||
viewModel.errorMessage = "You are not logged in."
|
||||
}
|
||||
await viewModel.loadItem(dataService: dataService, username: "me", requestID: requestID)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user