mirror of
https://github.com/cranci1/Sora.git
synced 2026-04-21 16:42:01 +00:00
Dumb Show Title Bug Fix (#175)
This commit is contained in:
parent
117639514e
commit
8249d0a0f5
1 changed files with 1 additions and 19 deletions
|
|
@ -285,9 +285,6 @@ struct MediaInfoView: View {
|
||||||
@ViewBuilder
|
@ViewBuilder
|
||||||
private var headerSection: some View {
|
private var headerSection: some View {
|
||||||
VStack(alignment: .leading, spacing: 8) {
|
VStack(alignment: .leading, spacing: 8) {
|
||||||
Spacer()
|
|
||||||
|
|
||||||
// Airdate section
|
|
||||||
if !airdate.isEmpty && airdate != "N/A" && airdate != "No Data" {
|
if !airdate.isEmpty && airdate != "N/A" && airdate != "No Data" {
|
||||||
HStack(spacing: 4) {
|
HStack(spacing: 4) {
|
||||||
Image(systemName: "calendar")
|
Image(systemName: "calendar")
|
||||||
|
|
@ -299,7 +296,6 @@ struct MediaInfoView: View {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Title with copy gesture
|
|
||||||
Text(title)
|
Text(title)
|
||||||
.font(.system(size: 28, weight: .bold))
|
.font(.system(size: 28, weight: .bold))
|
||||||
.foregroundColor(.primary)
|
.foregroundColor(.primary)
|
||||||
|
|
@ -308,15 +304,12 @@ struct MediaInfoView: View {
|
||||||
copyTitleToClipboard()
|
copyTitleToClipboard()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Synopsis with expand/collapse
|
|
||||||
if !synopsis.isEmpty {
|
if !synopsis.isEmpty {
|
||||||
synopsisSection
|
synopsisSection
|
||||||
}
|
}
|
||||||
|
|
||||||
// Main action buttons
|
|
||||||
playAndBookmarkSection
|
playAndBookmarkSection
|
||||||
|
|
||||||
// Single episode special handling
|
|
||||||
if episodeLinks.count == 1 {
|
if episodeLinks.count == 1 {
|
||||||
singleEpisodeSection
|
singleEpisodeSection
|
||||||
}
|
}
|
||||||
|
|
@ -347,7 +340,6 @@ struct MediaInfoView: View {
|
||||||
@ViewBuilder
|
@ViewBuilder
|
||||||
private var playAndBookmarkSection: some View {
|
private var playAndBookmarkSection: some View {
|
||||||
HStack(spacing: 12) {
|
HStack(spacing: 12) {
|
||||||
// Play/Continue button
|
|
||||||
Button(action: { playFirstUnwatchedEpisode() }) {
|
Button(action: { playFirstUnwatchedEpisode() }) {
|
||||||
HStack(spacing: 8) {
|
HStack(spacing: 8) {
|
||||||
Image(systemName: "play.fill")
|
Image(systemName: "play.fill")
|
||||||
|
|
@ -366,7 +358,6 @@ struct MediaInfoView: View {
|
||||||
}
|
}
|
||||||
.disabled(isFetchingEpisode)
|
.disabled(isFetchingEpisode)
|
||||||
|
|
||||||
// Bookmark button
|
|
||||||
Button(action: { toggleBookmark() }) {
|
Button(action: { toggleBookmark() }) {
|
||||||
Image(systemName: isBookmarked ? "bookmark.fill" : "bookmark")
|
Image(systemName: isBookmarked ? "bookmark.fill" : "bookmark")
|
||||||
.resizable()
|
.resizable()
|
||||||
|
|
@ -384,7 +375,6 @@ struct MediaInfoView: View {
|
||||||
private var singleEpisodeSection: some View {
|
private var singleEpisodeSection: some View {
|
||||||
VStack(spacing: 12) {
|
VStack(spacing: 12) {
|
||||||
HStack(spacing: 12) {
|
HStack(spacing: 12) {
|
||||||
// Mark watched button
|
|
||||||
Button(action: { toggleSingleEpisodeWatchStatus() }) {
|
Button(action: { toggleSingleEpisodeWatchStatus() }) {
|
||||||
HStack(spacing: 4) {
|
HStack(spacing: 4) {
|
||||||
Image(systemName: singleEpisodeWatchIcon)
|
Image(systemName: singleEpisodeWatchIcon)
|
||||||
|
|
@ -400,7 +390,6 @@ struct MediaInfoView: View {
|
||||||
.gradientOutline()
|
.gradientOutline()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Download button
|
|
||||||
Button(action: { downloadSingleEpisode() }) {
|
Button(action: { downloadSingleEpisode() }) {
|
||||||
HStack(spacing: 4) {
|
HStack(spacing: 4) {
|
||||||
Image(systemName: "arrow.down.circle")
|
Image(systemName: "arrow.down.circle")
|
||||||
|
|
@ -419,7 +408,6 @@ struct MediaInfoView: View {
|
||||||
menuButton
|
menuButton
|
||||||
}
|
}
|
||||||
|
|
||||||
// Information text for single episodes
|
|
||||||
VStack(spacing: 4) {
|
VStack(spacing: 4) {
|
||||||
Text("Why am I not seeing any episodes?")
|
Text("Why am I not seeing any episodes?")
|
||||||
.font(.caption)
|
.font(.caption)
|
||||||
|
|
@ -666,7 +654,6 @@ struct MediaInfoView: View {
|
||||||
@ViewBuilder
|
@ViewBuilder
|
||||||
private var menuContent: some View {
|
private var menuContent: some View {
|
||||||
Group {
|
Group {
|
||||||
// Current match info
|
|
||||||
if let id = itemID ?? customAniListID {
|
if let id = itemID ?? customAniListID {
|
||||||
let labelText = (matchedTitle?.isEmpty == false ? matchedTitle! : "\(id)")
|
let labelText = (matchedTitle?.isEmpty == false ? matchedTitle! : "\(id)")
|
||||||
Text("Matched with: \(labelText)")
|
Text("Matched with: \(labelText)")
|
||||||
|
|
@ -677,33 +664,28 @@ struct MediaInfoView: View {
|
||||||
|
|
||||||
Divider()
|
Divider()
|
||||||
|
|
||||||
// Reset AniList ID
|
|
||||||
if let _ = customAniListID {
|
if let _ = customAniListID {
|
||||||
Button(action: { resetAniListID() }) {
|
Button(action: { resetAniListID() }) {
|
||||||
Label("Reset AniList ID", systemImage: "arrow.clockwise")
|
Label("Reset AniList ID", systemImage: "arrow.clockwise")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Open in AniList
|
|
||||||
if let id = itemID ?? customAniListID {
|
if let id = itemID ?? customAniListID {
|
||||||
Button(action: { openAniListPage(id: id) }) {
|
Button(action: { openAniListPage(id: id) }) {
|
||||||
Label("Open in AniList", systemImage: "link")
|
Label("Open in AniList", systemImage: "link")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Match with AniList
|
|
||||||
if UserDefaults.standard.string(forKey: "metadataProviders") ?? "TMDB" == "AniList" {
|
if UserDefaults.standard.string(forKey: "metadataProviders") ?? "TMDB" == "AniList" {
|
||||||
Button(action: { isMatchingPresented = true }) {
|
Button(action: { isMatchingPresented = true }) {
|
||||||
Label("Match with AniList", systemImage: "magnifyingglass")
|
Label("Match with AniList", systemImage: "magnifyingglass")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Poster options
|
|
||||||
posterMenuOptions
|
posterMenuOptions
|
||||||
|
|
||||||
Divider()
|
Divider()
|
||||||
|
|
||||||
// Debug info
|
|
||||||
Button(action: { logDebugInfo() }) {
|
Button(action: { logDebugInfo() }) {
|
||||||
Label("Log Debug Info", systemImage: "terminal")
|
Label("Log Debug Info", systemImage: "terminal")
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue