73 lines
3.5 KiB
Swift
73 lines
3.5 KiB
Swift
//
|
|
// PreferenceStore+Migrate.swift
|
|
// TuskerPreferences
|
|
//
|
|
// Created by Shadowfacts on 4/13/24.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
extension PreferenceStore {
|
|
func migrate(from legacy: LegacyPreferences) {
|
|
self.theme = switch legacy.theme {
|
|
case .light: .light
|
|
case .dark: .dark
|
|
default: .unspecified
|
|
}
|
|
self.pureBlackDarkMode = legacy.pureBlackDarkMode
|
|
self.accentColor = legacy.accentColor
|
|
self.avatarStyle = legacy.avatarStyle
|
|
self.hideCustomEmojiInUsernames = legacy.hideCustomEmojiInUsernames
|
|
self.showIsStatusReplyIcon = legacy.showIsStatusReplyIcon
|
|
self.alwaysShowStatusVisibilityIcon = legacy.alwaysShowStatusVisibilityIcon
|
|
self.hideActionsInTimeline = legacy.hideActionsInTimeline
|
|
self.showLinkPreviews = legacy.showLinkPreviews
|
|
self.leadingStatusSwipeActions = legacy.leadingStatusSwipeActions
|
|
self.trailingStatusSwipeActions = legacy.trailingStatusSwipeActions
|
|
if legacy.widescreenNavigationMode != .splitScreen {
|
|
self.widescreenNavigationMode = legacy.widescreenNavigationMode
|
|
}
|
|
self.underlineTextLinks = legacy.underlineTextLinks
|
|
self.showAttachmentsInTimeline = legacy.showAttachmentsInTimeline
|
|
|
|
self.defaultPostVisibility = legacy.defaultPostVisibility
|
|
self.defaultReplyVisibility = legacy.defaultReplyVisibility
|
|
self.requireAttachmentDescriptions = legacy.requireAttachmentDescriptions
|
|
self.contentWarningCopyMode = legacy.contentWarningCopyMode
|
|
self.mentionReblogger = legacy.mentionReblogger
|
|
self.useTwitterKeyboard = legacy.useTwitterKeyboard
|
|
|
|
self.attachmentBlurMode = legacy.attachmentBlurMode
|
|
self.blurMediaBehindContentWarning = legacy.blurMediaBehindContentWarning
|
|
self.automaticallyPlayGifs = legacy.automaticallyPlayGifs
|
|
self.showUncroppedMediaInline = legacy.showUncroppedMediaInline
|
|
self.showAttachmentBadges = legacy.showAttachmentBadges
|
|
self.attachmentAltBadgeInverted = legacy.attachmentAltBadgeInverted
|
|
|
|
self.openLinksInApps = legacy.openLinksInApps
|
|
self.useInAppSafari = legacy.useInAppSafari
|
|
self.inAppSafariAutomaticReaderMode = legacy.inAppSafariAutomaticReaderMode
|
|
self.expandAllContentWarnings = legacy.expandAllContentWarnings
|
|
self.collapseLongPosts = legacy.collapseLongPosts
|
|
self.oppositeCollapseKeywords = legacy.oppositeCollapseKeywords
|
|
self.confirmBeforeReblog = legacy.confirmBeforeReblog
|
|
self.timelineStateRestoration = legacy.timelineStateRestoration
|
|
self.timelineSyncMode = legacy.timelineSyncMode
|
|
self.hideReblogsInTimelines = legacy.hideReblogsInTimelines
|
|
self.hideRepliesInTimelines = legacy.hideRepliesInTimelines
|
|
|
|
self.showFavoriteAndReblogCounts = legacy.showFavoriteAndReblogCounts
|
|
self.defaultNotificationsMode = legacy.defaultNotificationsMode
|
|
self.grayscaleImages = legacy.grayscaleImages
|
|
self.disableInfiniteScrolling = legacy.disableInfiniteScrolling
|
|
self.hideTrends = legacy.hideTrends
|
|
|
|
self.statusContentType = legacy.statusContentType
|
|
self.reportErrorsAutomatically = legacy.reportErrorsAutomatically
|
|
self.enabledFeatureFlags = legacy.enabledFeatureFlags
|
|
|
|
self.hasShownLocalTimelineDescription = legacy.hasShownLocalTimelineDescription
|
|
self.hasShownFederatedTimelineDescription = legacy.hasShownFederatedTimelineDescription
|
|
}
|
|
}
|