From ddaa9cbfe0cc8d254d4901ad192918d91dd627d4 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Wed, 1 Apr 2026 13:59:52 +0000 Subject: Migrate settings manager to Swift Observation --- Sora/Views/Post/Details/Carousel/PostDetailsCarouselView.swift | 3 ++- Sora/Views/Post/Details/PostDetailsImageView.swift | 3 ++- Sora/Views/Post/Details/PostDetailsTagsView.swift | 5 +++-- Sora/Views/Post/Details/PostDetailsView.swift | 3 ++- 4 files changed, 9 insertions(+), 5 deletions(-) (limited to 'Sora/Views/Post/Details') diff --git a/Sora/Views/Post/Details/Carousel/PostDetailsCarouselView.swift b/Sora/Views/Post/Details/Carousel/PostDetailsCarouselView.swift index e43be47..55d6243 100644 --- a/Sora/Views/Post/Details/Carousel/PostDetailsCarouselView.swift +++ b/Sora/Views/Post/Details/Carousel/PostDetailsCarouselView.swift @@ -2,7 +2,8 @@ import SwiftUI struct PostDetailsCarouselView: View { @EnvironmentObject var manager: BooruManager - @EnvironmentObject var settings: SettingsManager + @Environment(SettingsManager.self) + private var settings let posts: [BooruPost] let focusedPost: BooruPost? let onFocusedPostChange: (BooruPost) -> Void diff --git a/Sora/Views/Post/Details/PostDetailsImageView.swift b/Sora/Views/Post/Details/PostDetailsImageView.swift index 5b954a6..009dbed 100644 --- a/Sora/Views/Post/Details/PostDetailsImageView.swift +++ b/Sora/Views/Post/Details/PostDetailsImageView.swift @@ -3,7 +3,8 @@ import SwiftUI import UserNotifications struct PostDetailsImageView: View { // swiftlint:disable:this type_body_length - @EnvironmentObject var settings: SettingsManager + @Environment(SettingsManager.self) + private var settings @EnvironmentObject var manager: BooruManager var url: URL? @Binding var loadingState: BooruPostLoadingState diff --git a/Sora/Views/Post/Details/PostDetailsTagsView.swift b/Sora/Views/Post/Details/PostDetailsTagsView.swift index 72ba757..f843b6c 100644 --- a/Sora/Views/Post/Details/PostDetailsTagsView.swift +++ b/Sora/Views/Post/Details/PostDetailsTagsView.swift @@ -2,7 +2,8 @@ import SwiftUI struct PostDetailsTagsView: View { @EnvironmentObject var manager: BooruManager - @EnvironmentObject var settings: SettingsManager + @Environment(SettingsManager.self) + private var settings @Binding var isPresented: Bool @Binding var navigationPath: NavigationPath var tags: [String] @@ -101,5 +102,5 @@ struct PostDetailsTagsView: View { tags: ["hololive", "absurdres", "nekomimi"] ) .environmentObject(BooruManager(.danbooru)) - .environmentObject(SettingsManager()) + .environment(SettingsManager()) } diff --git a/Sora/Views/Post/Details/PostDetailsView.swift b/Sora/Views/Post/Details/PostDetailsView.swift index bb58c49..d8a77c6 100644 --- a/Sora/Views/Post/Details/PostDetailsView.swift +++ b/Sora/Views/Post/Details/PostDetailsView.swift @@ -2,7 +2,8 @@ import SwiftUI struct PostDetailsView: View { @EnvironmentObject var manager: BooruManager - @EnvironmentObject var settings: SettingsManager + @Environment(SettingsManager.self) + private var settings let post: BooruPost @Binding var navigationPath: NavigationPath @State private var loadingStage: BooruPostLoadingState = .loadingPreview -- cgit v1.2.3