summaryrefslogtreecommitdiff
path: root/Jel/Views/Item/Types
diff options
context:
space:
mode:
Diffstat (limited to 'Jel/Views/Item/Types')
-rw-r--r--Jel/Views/Item/Types/ItemMovieView.swift57
1 files changed, 57 insertions, 0 deletions
diff --git a/Jel/Views/Item/Types/ItemMovieView.swift b/Jel/Views/Item/Types/ItemMovieView.swift
new file mode 100644
index 0000000..5cb5c3b
--- /dev/null
+++ b/Jel/Views/Item/Types/ItemMovieView.swift
@@ -0,0 +1,57 @@
+//
+// ItemMovieView.swift
+// Jel
+//
+// Created by zerocool on 12/26/23.
+//
+
+import SwiftUI
+import JellyfinKit
+
+struct ItemMovieView: View {
+ var item: BaseItemDto
+
+ @State var pageScrolled: Bool = false
+
+ var body: some View {
+ VStack {
+ ItemHeaderView(item: item)
+ .foregroundStyle(.white)
+ .background {
+ GeometryReader {geo in
+ EmptyView()
+ .onChange(of: geo.frame(in: .global).minY) {
+ let minY = geo.frame(in: .global).minY
+
+ pageScrolled = minY < -150
+ }
+ }
+ }
+
+ ItemMediaView(item: item)
+ .padding()
+
+ ItemGenresView(item: item)
+ .padding(.bottom)
+ .foregroundStyle(Color.primary)
+
+ ItemPeopleView(item: item)
+ .padding(.bottom)
+ .foregroundStyle(Color.primary)
+ }
+ .navigationBarTitleDisplayMode(.inline)
+ .navigationTitle(item.name ?? "Untitled")
+ .toolbarRole(.editor)
+ .toolbar {
+ ToolbarItem(placement: .principal) {
+ Text(pageScrolled ? item.name ?? "Untitled" : "")
+ .bold()
+ }
+ }
+ .toolbarBackground(pageScrolled ? .visible : .hidden)
+ }
+}
+
+//#Preview {
+// ItemMovieView()
+//}