diff options
Diffstat (limited to 'Jel/Views/Library/Item/ItemMediaView.swift')
-rw-r--r-- | Jel/Views/Library/Item/ItemMediaView.swift | 64 |
1 files changed, 10 insertions, 54 deletions
diff --git a/Jel/Views/Library/Item/ItemMediaView.swift b/Jel/Views/Library/Item/ItemMediaView.swift index 2e6f133..1d1e53d 100644 --- a/Jel/Views/Library/Item/ItemMediaView.swift +++ b/Jel/Views/Library/Item/ItemMediaView.swift @@ -9,68 +9,24 @@ import SwiftUI import JellyfinKit import VisibilityTrackingScrollView -struct ItemMediaView<Content: View>: View { +struct ItemMediaView: View { @EnvironmentObject var jellyfinClient: JellyfinClientController @StateObject var authState: AuthStateController = AuthStateController.shared - @State var item: BaseItemDto - @ViewBuilder var playButton: () -> Content + var item: BaseItemDto - @State var pageScrolled: Bool = false var body: some View { - GeometryReader {geo in - ScrollView() { - ItemHeaderView(item: item) - .padding(.bottom) - .background { - GeometryReader {geo in - EmptyView() - .onChange(of: geo.frame(in: .global).minY) { - let minY = geo.frame(in: .global).minY - - pageScrolled = minY < 0 - } - } - } - - playButton() - - VStack(alignment: .leading) { - Text(item.taglines?.count ?? 0 > 0 ? item.taglines?[0] ?? "" : "") - .font(.headline) - .frame(maxWidth: .infinity, alignment: .leading) - .padding(.bottom) - - ForEach(item.overview?.components(separatedBy: "<br>") ?? [], id: \.self) {overview in - Text(overview) - } - - ItemGenresView(item: item) - .padding(.vertical) - } - .if(max(geo.safeAreaInsets.leading, geo.safeAreaInsets.trailing) > 0) {view in - view - .padding(max(geo.safeAreaInsets.leading, geo.safeAreaInsets.trailing)) - } - .if(max(geo.safeAreaInsets.leading, geo.safeAreaInsets.trailing) <= 0) {view in - view - .padding() - } + VStack(alignment: .leading) { + Text(item.taglines?.count ?? 0 > 0 ? item.taglines?[0] ?? "" : "") + .font(.headline) + .frame(maxWidth: .infinity, alignment: .leading) + .padding(.bottom) + + ForEach(item.overview?.components(separatedBy: "<br>") ?? [], id: \.self) {overview in + Text(overview) } - .ignoresSafeArea() } - .navigationBarTitleDisplayMode(.inline) - .navigationTitle(item.name ?? "Untitled") - .toolbarRole(.editor) - .toolbar { - ToolbarItem(placement: .principal) { - Text(pageScrolled ? item.name ?? "Untitled" : "") - .bold() - } - } - .scrollIndicators(.hidden) - } } |