summaryrefslogtreecommitdiff
path: root/Jel/Views
diff options
context:
space:
mode:
Diffstat (limited to 'Jel/Views')
-rw-r--r--Jel/Views/Dashboard/DashboardView.swift28
-rw-r--r--Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift39
-rw-r--r--Jel/Views/Item/Series/ItemSeriesEpisodesView.swift2
-rw-r--r--Jel/Views/Utility/StickyHeaderView.swift3
4 files changed, 37 insertions, 35 deletions
diff --git a/Jel/Views/Dashboard/DashboardView.swift b/Jel/Views/Dashboard/DashboardView.swift
index 931a884..508d002 100644
--- a/Jel/Views/Dashboard/DashboardView.swift
+++ b/Jel/Views/Dashboard/DashboardView.swift
@@ -10,8 +10,7 @@ import JellyfinKit
struct DashboardView: View {
@State var showingSettingsSheet: Bool = false
- @ObservedObject var authState: AuthStateController = AuthStateController.shared
- @State var refresh: Bool = true
+
var body: some View {
ScrollView {
@@ -25,23 +24,20 @@ struct DashboardView: View {
.padding([.top, .leading])
}
}
- }
- .navigationTitle("Home")
- .toolbar {
- ToolbarItem(placement: .topBarTrailing) {
- Button {
- showingSettingsSheet.toggle()
- } label: {
- Label("Settings", systemImage: "gear")
+ .navigationTitle("Home")
+ .toolbar {
+ ToolbarItem(placement: .topBarTrailing) {
+ Button {
+ showingSettingsSheet.toggle()
+ } label: {
+ Label("Settings", systemImage: "gear")
+ }
}
}
+ .sheet(isPresented: $showingSettingsSheet) {
+ SettingsView(showingSettingsView: $showingSettingsSheet)
+ }
}
- .sheet(isPresented: $showingSettingsSheet) {
- SettingsView(showingSettingsView: $showingSettingsSheet)
- }
- .onChange(of: authState.loggedIn, {
- refresh = !authState.loggedIn
- })
}
}
diff --git a/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift b/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift
index fea8997..9217bea 100644
--- a/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift
+++ b/Jel/Views/Item/Series/ItemSeriesEpisodeIconView.swift
@@ -12,23 +12,30 @@ import ExpandableText
struct ItemSeriesEpisodeIconView: View {
var item: BaseItemDto
+ @EnvironmentObject var size: ScreenSize
+
+ var iconWidthMultiplier: CGFloat = 0.35
+
var body: some View {
- HStack(alignment: .top) {
- VStack(alignment: .leading) {
- Text("Episode \(item.indexNumber ?? 0)")
- .foregroundStyle(Color.secondary)
- .font(.callout)
- ItemIconView(item: item, width: UIScreen.screenWidth * 0.5, contentMode: .fill)
- .setAspectRatio(item.primaryImageAspectRatio ?? 1.7)
- }
- .frame(width: UIScreen.screenWidth * 0.5)
-
- VStack(alignment: .leading) {
- Text(item.name ?? "Episode \(item.indexNumber ?? 0)")
- .font(.callout)
- .bold()
- Text(item.overview ?? "")
- .frame(height: (UIScreen.screenWidth * 0.5) / (item.primaryImageAspectRatio ?? 1.7)) // Calculate optimal amount of lines based on episode image
+ VStack(alignment: .leading) {
+ HStack(alignment: .top) {
+ ItemIconView(item: item, width: (size.size.width * iconWidthMultiplier), height: (size.size.width * iconWidthMultiplier) / 1.7)
+
+ VStack(alignment: .leading) {
+ Text("Episode \(item.indexNumber ?? 0)")
+ .foregroundStyle(Color.secondary)
+ .font(.caption)
+ Text(item.name ?? "---")
+ .bold()
+ .lineLimit(nil)
+
+ Text(item.overview ?? "")
+ .foregroundStyle(Color.secondary)
+ .font(.callout)
+
+ Spacer()
+ }
+ .frame(height: (size.size.width * iconWidthMultiplier) / 1.7)
}
}
}
diff --git a/Jel/Views/Item/Series/ItemSeriesEpisodesView.swift b/Jel/Views/Item/Series/ItemSeriesEpisodesView.swift
index 2588515..17d5c9b 100644
--- a/Jel/Views/Item/Series/ItemSeriesEpisodesView.swift
+++ b/Jel/Views/Item/Series/ItemSeriesEpisodesView.swift
@@ -17,7 +17,7 @@ struct ItemSeriesEpisodesView: View {
@State var episodeItems: [BaseItemDto] = []
var body: some View {
- VStack {
+ VStack(alignment: .leading) {
ForEach(episodeItems) {episode in
ItemSeriesEpisodeIconView(item: episode)
}
diff --git a/Jel/Views/Utility/StickyHeaderView.swift b/Jel/Views/Utility/StickyHeaderView.swift
index b3bfd02..decc867 100644
--- a/Jel/Views/Utility/StickyHeaderView.swift
+++ b/Jel/Views/Utility/StickyHeaderView.swift
@@ -8,7 +8,6 @@
import SwiftUI
struct StickyHeaderView<Content: View>: View {
-
var minHeight: CGFloat
var content: Content
@@ -28,7 +27,7 @@ struct StickyHeaderView<Content: View>: View {
.frame(width: geo.size.width, height: geo.size.height + geo.frame(in: .global).minY)
}
}
- .frame(minWidth: UIScreen.current?.bounds.width ?? 200, minHeight: minHeight)
+ .frame(minWidth: UIScreen.screenWidth, minHeight: minHeight)
}
}