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
|
||
|
}
|
||
|
}
|