summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFuwn <[email protected]>2025-03-17 05:36:30 -0700
committerFuwn <[email protected]>2025-03-17 05:36:30 -0700
commit8218f393408a0abe97ae5a9d55479bfd62faca1c (patch)
treee18c277f447e1837d483a18a8bf75c9d72da8a44
parentfeat: Development commit (diff)
downloadsora-testing-8218f393408a0abe97ae5a9d55479bfd62faca1c.tar.xz
sora-testing-8218f393408a0abe97ae5a9d55479bfd62faca1c.zip
feat: Development commit
-rw-r--r--Sora/Data/Settings/SettingsManager.swift24
-rw-r--r--Sora/Views/Generic/GenericListView.swift2
-rw-r--r--Sora/Views/Settings/Section/SettingsSettingsView.swift6
3 files changed, 16 insertions, 16 deletions
diff --git a/Sora/Data/Settings/SettingsManager.swift b/Sora/Data/Settings/SettingsManager.swift
index 39317b4..666999b 100644
--- a/Sora/Data/Settings/SettingsManager.swift
+++ b/Sora/Data/Settings/SettingsManager.swift
@@ -25,10 +25,10 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
@AppStorage("preloadedCarouselImages")
var preloadedCarouselImages = 3
- @AppStorage("enableICloudSync")
- var enableICloudSync: Bool = false
+ @AppStorage("enableSync")
+ var enableSync: Bool = false
- private var iCloudSyncObservation: NSObjectProtocol?
+ private var syncObservation: NSObjectProtocol?
#if os(macOS)
@AppStorage("saveTagsToFile")
@@ -142,12 +142,12 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
// MARK: - Initialisation
init() {
- iCloudSyncObservation = NotificationCenter.default.addObserver(
+ syncObservation = NotificationCenter.default.addObserver(
forName: NSUbiquitousKeyValueStore.didChangeExternallyNotification,
object: NSUbiquitousKeyValueStore.default,
queue: .main
) { [weak self] _ in
- self?.pullSyncedSettings()
+ self?.syncFromCloud()
}
}
@@ -166,7 +166,7 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
sort: ([T]) -> [T],
identifier: (T) -> UUID
) -> [T] {
- if enableICloudSync {
+ if enableSync {
if let iCloudData = NSUbiquitousKeyValueStore.default.data(forKey: key) {
if let iCloudValues = Self.decode([T].self, from: iCloudData) {
let localValues = Self.decode([T].self, from: localData) ?? []
@@ -198,7 +198,7 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
localData.wrappedValue = Self.encode(sortedValues) ?? Data()
- if enableICloudSync {
+ if enableSync {
var iCloudValues: [T] = []
if let iCloudData = NSUbiquitousKeyValueStore.default.data(forKey: key) {
@@ -240,8 +240,8 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
#endif
}
- func pullSyncedSettings() {
- if self.enableICloudSync {
+ func syncFromCloud() {
+ if self.enableSync {
if let data = NSUbiquitousKeyValueStore.default.data(forKey: "bookmarks") {
self.bookmarksData = data
}
@@ -258,8 +258,8 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
}
}
- func syncToICloud() {
- if enableICloudSync {
+ func syncToCloud() {
+ if enableSync {
// Merge bookmarks
var iCloudBookmarks: [SettingsBookmark] = []
@@ -402,7 +402,7 @@ class SettingsManager: ObservableObject { // swiftlint:disable:this type_body_l
// MARK: - Deinitialisation
deinit {
- if let observation = iCloudSyncObservation {
+ if let observation = syncObservation {
NotificationCenter.default.removeObserver(observation)
}
}
diff --git a/Sora/Views/Generic/GenericListView.swift b/Sora/Views/Generic/GenericListView.swift
index f6805ad..7981d8b 100644
--- a/Sora/Views/Generic/GenericListView.swift
+++ b/Sora/Views/Generic/GenericListView.swift
@@ -60,7 +60,7 @@ struct GenericListView<T: Identifiable & Hashable & GenericItem>: View {
}
.navigationTitle(title)
.searchable(text: $searchText)
- .refreshable { settings.pullSyncedSettings() }
+ .refreshable { settings.syncFromCloud() }
.toolbar {
ToolbarItem {
Button(action: {
diff --git a/Sora/Views/Settings/Section/SettingsSettingsView.swift b/Sora/Views/Settings/Section/SettingsSettingsView.swift
index 0916c99..ab6a31a 100644
--- a/Sora/Views/Settings/Section/SettingsSettingsView.swift
+++ b/Sora/Views/Settings/Section/SettingsSettingsView.swift
@@ -4,14 +4,14 @@ struct SettingsSettingsView: View {
@EnvironmentObject var settings: SettingsManager
var body: some View {
- Toggle(isOn: $settings.enableICloudSync) {
+ Toggle(isOn: $settings.enableSync) {
Text("Sync with iCloud")
Text("Keep bookmarks, search history, and providers consistent across all your devices.")
.font(.caption)
}
- .onChange(of: settings.enableICloudSync) { _, _ in
- settings.syncToICloud()
+ .onChange(of: settings.enableSync) { _, _ in
+ settings.syncToCloud()
}
Button("Reset to Defaults") {