diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/Preference.kt b/app/src/main/java/eu/kanade/presentation/more/settings/Preference.kt
index 3a01eb339..231bf8fef 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/Preference.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/Preference.kt
@@ -20,7 +20,7 @@ sealed class Preference {
 
         // SY <--
         abstract val icon: ImageVector?
-        abstract val onValueChanged: suspend (newValue: T) -> Boolean
+        abstract val onValueChanged: suspend (value: T) -> Boolean
 
         /**
          * A basic [PreferenceItem] that only displays texts.
@@ -28,24 +28,25 @@ sealed class Preference {
         data class TextPreference(
             override val title: String,
             override val subtitle: CharSequence? = null,
-            override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: String) -> Boolean = { true },
-
             val onClick: (() -> Unit)? = null,
-        ) : PreferenceItem<String>()
+        ) : PreferenceItem<String>() {
+            override val icon: ImageVector? = null
+            override val onValueChanged: suspend (value: String) -> Boolean = { true }
+        }
 
         /**
          * A [PreferenceItem] that provides a two-state toggleable option.
          */
         data class SwitchPreference(
-            val pref: PreferenceData<Boolean>,
+            val preference: PreferenceData<Boolean>,
             override val title: String,
             override val subtitle: CharSequence? = null,
-            override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: Boolean) -> Boolean = { true },
-        ) : PreferenceItem<Boolean>()
+            override val onValueChanged: suspend (value: Boolean) -> Boolean = { true },
+        ) : PreferenceItem<Boolean>() {
+            override val icon: ImageVector? = null
+        }
 
         /**
          * A [PreferenceItem] that provides a slider to select an integer number.
@@ -55,31 +56,31 @@ sealed class Preference {
             val max: Int,
             val min: Int = 0,
             val steps: Int = 0,
-            override val title: String = "",
+            override val title: String,
             override val subtitle: String? = null,
-            override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: Int) -> Boolean = { true },
-        ) : PreferenceItem<Int>()
+            override val onValueChanged: suspend (value: Int) -> Boolean = { true },
+        ) : PreferenceItem<Int>() {
+            override val icon: ImageVector? = null
+        }
 
         /**
          * A [PreferenceItem] that displays a list of entries as a dialog.
          */
         @Suppress("UNCHECKED_CAST")
         data class ListPreference<T>(
-            val pref: PreferenceData<T>,
+            val preference: PreferenceData<T>,
+            val entries: ImmutableMap<T, String>,
             override val title: String,
             override val subtitle: String? = "%s",
             val subtitleProvider: @Composable (value: T, entries: ImmutableMap<T, String>) -> String? =
                 { v, e -> subtitle?.format(e[v]) },
             override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: T) -> Boolean = { true },
-
-            val entries: ImmutableMap<T, String>,
+            override val onValueChanged: suspend (value: T) -> Boolean = { true },
         ) : PreferenceItem<T>() {
-            internal fun internalSet(newValue: Any) = pref.set(newValue as T)
-            internal suspend fun internalOnValueChanged(newValue: Any) = onValueChanged(newValue as T)
+            internal fun internalSet(value: Any) = preference.set(value as T)
+            internal suspend fun internalOnValueChanged(value: Any) = onValueChanged(value as T)
 
             @Composable
             internal fun internalSubtitleProvider(value: Any?, entries: ImmutableMap<out Any?, String>) =
@@ -91,15 +92,14 @@ sealed class Preference {
          */
         data class BasicListPreference(
             val value: String,
+            val entries: ImmutableMap<String, String>,
             override val title: String,
             override val subtitle: String? = "%s",
             val subtitleProvider: @Composable (value: String, entries: ImmutableMap<String, String>) -> String? =
                 { v, e -> subtitle?.format(e[v]) },
             override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: String) -> Boolean = { true },
-
-            val entries: ImmutableMap<String, String>,
+            override val onValueChanged: suspend (value: String) -> Boolean = { true },
         ) : PreferenceItem<String>()
 
         /**
@@ -107,52 +107,51 @@ sealed class Preference {
          * Multiple entries can be selected at the same time.
          */
         data class MultiSelectListPreference(
-            val pref: PreferenceData<Set<String>>,
+            val preference: PreferenceData<Set<String>>,
+            val entries: ImmutableMap<String, String>,
             override val title: String,
             override val subtitle: String? = "%s",
-            val subtitleProvider: @Composable (
-                value: Set<String>,
-                entries: ImmutableMap<String, String>,
-            ) -> String? = { v, e ->
-                val combined = remember(v) {
-                    v.map { e[it] }
-                        .takeIf { it.isNotEmpty() }
-                        ?.joinToString()
-                } ?: stringResource(MR.strings.none)
-                subtitle?.format(combined)
-            },
+            val subtitleProvider: @Composable (value: Set<String>, entries: ImmutableMap<String, String>) -> String? =
+                { v, e ->
+                    val combined = remember(v, e) {
+                        v.mapNotNull { e[it] }
+                            .joinToString()
+                            .takeUnless { it.isBlank() }
+                    }
+                        ?: stringResource(MR.strings.none)
+                    subtitle?.format(combined)
+                },
             override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: Set<String>) -> Boolean = { true },
-
-            val entries: ImmutableMap<String, String>,
+            override val onValueChanged: suspend (value: Set<String>) -> Boolean = { true },
         ) : PreferenceItem<Set<String>>()
 
         /**
          * A [PreferenceItem] that shows a EditText in the dialog.
          */
         data class EditTextPreference(
-            val pref: PreferenceData<String>,
+            val preference: PreferenceData<String>,
             override val title: String,
             override val subtitle: String? = "%s",
-            override val icon: ImageVector? = null,
             override val enabled: Boolean = true,
-            override val onValueChanged: suspend (newValue: String) -> Boolean = { true },
-        ) : PreferenceItem<String>()
+            override val onValueChanged: suspend (value: String) -> Boolean = { true },
+        ) : PreferenceItem<String>() {
+            override val icon: ImageVector? = null
+        }
 
         /**
          * A [PreferenceItem] for individual tracker.
          */
         data class TrackerPreference(
             val tracker: Tracker,
-            override val title: String,
             val login: () -> Unit,
             val logout: () -> Unit,
         ) : PreferenceItem<String>() {
+            override val title: String = ""
             override val enabled: Boolean = true
             override val subtitle: String? = null
             override val icon: ImageVector? = null
-            override val onValueChanged: suspend (newValue: String) -> Boolean = { true }
+            override val onValueChanged: suspend (value: String) -> Boolean = { true }
         }
 
         data class InfoPreference(
@@ -161,7 +160,7 @@ sealed class Preference {
             override val enabled: Boolean = true
             override val subtitle: String? = null
             override val icon: ImageVector? = null
-            override val onValueChanged: suspend (newValue: String) -> Boolean = { true }
+            override val onValueChanged: suspend (value: String) -> Boolean = { true }
         }
 
         data class CustomPreference(
@@ -171,7 +170,7 @@ sealed class Preference {
             override val enabled: Boolean = true
             override val subtitle: String? = null
             override val icon: ImageVector? = null
-            override val onValueChanged: suspend (newValue: Unit) -> Boolean = { true }
+            override val onValueChanged: suspend (value: Unit) -> Boolean = { true }
         }
     }
 
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt b/app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt
index 45ab258b0..9f97d3a83 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/PreferenceItem.kt
@@ -61,7 +61,7 @@ internal fun PreferenceItem(
     ) {
         when (item) {
             is Preference.PreferenceItem.SwitchPreference -> {
-                val value by item.pref.collectAsState()
+                val value by item.preference.collectAsState()
                 SwitchPreferenceWidget(
                     title = item.title,
                     subtitle = item.subtitle,
@@ -70,7 +70,7 @@ internal fun PreferenceItem(
                     onCheckedChanged = { newValue ->
                         scope.launch {
                             if (item.onValueChanged(newValue)) {
-                                item.pref.set(newValue)
+                                item.preference.set(newValue)
                             }
                         }
                     },
@@ -93,7 +93,7 @@ internal fun PreferenceItem(
                 )
             }
             is Preference.PreferenceItem.ListPreference<*> -> {
-                val value by item.pref.collectAsState()
+                val value by item.preference.collectAsState()
                 ListPreferenceWidget(
                     value = value,
                     title = item.title,
@@ -120,14 +120,14 @@ internal fun PreferenceItem(
                 )
             }
             is Preference.PreferenceItem.MultiSelectListPreference -> {
-                val values by item.pref.collectAsState()
+                val values by item.preference.collectAsState()
                 MultiSelectListPreferenceWidget(
                     preference = item,
                     values = values,
                     onValuesChange = { newValues ->
                         scope.launch {
                             if (item.onValueChanged(newValues)) {
-                                item.pref.set(newValues.toMutableSet())
+                                item.preference.set(newValues.toMutableSet())
                             }
                         }
                     },
@@ -142,7 +142,7 @@ internal fun PreferenceItem(
                 )
             }
             is Preference.PreferenceItem.EditTextPreference -> {
-                val values by item.pref.collectAsState()
+                val values by item.preference.collectAsState()
                 EditTextPreferenceWidget(
                     title = item.title,
                     subtitle = item.subtitle,
@@ -150,7 +150,7 @@ internal fun PreferenceItem(
                     value = values,
                     onConfirm = {
                         val accepted = item.onValueChanged(it)
-                        if (accepted) item.pref.set(it)
+                        if (accepted) item.preference.set(it)
                         accepted
                     },
                 )
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
index 48851c323..a15a81d29 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
@@ -126,7 +126,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                 },
             ),
             /* SY --> Preference.PreferenceItem.SwitchPreference(
-                pref = networkPreferences.verboseLogging(),
+                preference = networkPreferences.verboseLogging(),
                 title = stringResource(MR.strings.pref_verbose_logging),
                 subtitle = stringResource(MR.strings.pref_verbose_logging_summary),
                 onValueChanged = {
@@ -272,8 +272,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = networkPreferences.dohProvider(),
-                    title = stringResource(MR.strings.pref_dns_over_https),
+                    preference = networkPreferences.dohProvider(),
                     entries = persistentMapOf(
                         -1 to stringResource(MR.strings.disabled),
                         PREF_DOH_CLOUDFLARE to "Cloudflare",
@@ -289,13 +288,14 @@ object SettingsAdvancedScreen : SearchableSettings {
                         PREF_DOH_NJALLA to "Njalla",
                         PREF_DOH_SHECAN to "Shecan",
                     ),
+                    title = stringResource(MR.strings.pref_dns_over_https),
                     onValueChanged = {
                         context.toast(MR.strings.requires_app_restart)
                         true
                     },
                 ),
                 Preference.PreferenceItem.EditTextPreference(
-                    pref = userAgentPref,
+                    preference = userAgentPref,
                     title = stringResource(MR.strings.pref_user_agent_string),
                     onValueChanged = {
                         try {
@@ -372,13 +372,7 @@ object SettingsAdvancedScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_category_reader),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = basePreferences.hardwareBitmapThreshold(),
-                    title = stringResource(MR.strings.pref_hardware_bitmap_threshold),
-                    subtitleProvider = { value, options ->
-                        stringResource(MR.strings.pref_hardware_bitmap_threshold_summary, options[value].orEmpty())
-                    },
-                    enabled = !ImageUtil.HARDWARE_BITMAP_UNSUPPORTED &&
-                        GLUtil.DEVICE_TEXTURE_LIMIT > GLUtil.SAFE_TEXTURE_LIMIT,
+                    preference = basePreferences.hardwareBitmapThreshold(),
                     entries = GLUtil.CUSTOM_TEXTURE_LIMIT_OPTIONS
                         .mapIndexed { index, option ->
                             val display = if (index == 0) {
@@ -390,9 +384,15 @@ object SettingsAdvancedScreen : SearchableSettings {
                         }
                         .toMap()
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_hardware_bitmap_threshold),
+                    subtitleProvider = { value, options ->
+                        stringResource(MR.strings.pref_hardware_bitmap_threshold_summary, options[value].orEmpty())
+                    },
+                    enabled = !ImageUtil.HARDWARE_BITMAP_UNSUPPORTED &&
+                        GLUtil.DEVICE_TEXTURE_LIMIT > GLUtil.SAFE_TEXTURE_LIMIT,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = basePreferences.alwaysDecodeLongStripWithSSIV(),
+                    preference = basePreferences.alwaysDecodeLongStripWithSSIV(),
                     title = stringResource(MR.strings.pref_always_decode_long_strip_with_ssiv),
                     subtitle = stringResource(MR.strings.pref_always_decode_long_strip_with_ssiv_summary),
                 ),
@@ -444,8 +444,7 @@ object SettingsAdvancedScreen : SearchableSettings {
             title = stringResource(MR.strings.label_extensions),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = extensionInstallerPref,
-                    title = stringResource(MR.strings.ext_installer_pref),
+                    preference = extensionInstallerPref,
                     entries = extensionInstallerPref.entries
                         .filter {
                             // TODO: allow private option in stable versions once URL handling is more fleshed out
@@ -457,6 +456,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                         }
                         .associateWith { stringResource(it.titleRes) }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.ext_installer_pref),
                     onValueChanged = {
                         if (it == BasePreferences.ExtensionInstaller.SHIZUKU &&
                             !context.isShizukuInstalled
@@ -618,7 +618,7 @@ object SettingsAdvancedScreen : SearchableSettings {
             title = stringResource(SYMR.strings.data_saver),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = sourcePreferences.dataSaver(),
+                    preference = sourcePreferences.dataSaver(),
                     title = stringResource(SYMR.strings.data_saver),
                     subtitle = stringResource(SYMR.strings.data_saver_summary),
                     entries = persistentMapOf(
@@ -628,28 +628,28 @@ object SettingsAdvancedScreen : SearchableSettings {
                     ),
                 ),
                 Preference.PreferenceItem.EditTextPreference(
-                    pref = sourcePreferences.dataSaverServer(),
+                    preference = sourcePreferences.dataSaverServer(),
                     title = stringResource(SYMR.strings.bandwidth_data_saver_server),
                     subtitle = stringResource(SYMR.strings.data_saver_server_summary),
                     enabled = dataSaver == DataSaver.BANDWIDTH_HERO,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = sourcePreferences.dataSaverDownloader(),
+                    preference = sourcePreferences.dataSaverDownloader(),
                     title = stringResource(SYMR.strings.data_saver_downloader),
                     enabled = dataSaver != DataSaver.NONE,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = sourcePreferences.dataSaverIgnoreJpeg(),
+                    preference = sourcePreferences.dataSaverIgnoreJpeg(),
                     title = stringResource(SYMR.strings.data_saver_ignore_jpeg),
                     enabled = dataSaver != DataSaver.NONE,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = sourcePreferences.dataSaverIgnoreGif(),
+                    preference = sourcePreferences.dataSaverIgnoreGif(),
                     title = stringResource(SYMR.strings.data_saver_ignore_gif),
                     enabled = dataSaver != DataSaver.NONE,
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = sourcePreferences.dataSaverImageQuality(),
+                    preference = sourcePreferences.dataSaverImageQuality(),
                     title = stringResource(SYMR.strings.data_saver_image_quality),
                     subtitle = stringResource(SYMR.strings.data_saver_image_quality_summary),
                     entries = listOf(
@@ -668,7 +668,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     val dataSaverImageFormatJpeg by sourcePreferences.dataSaverImageFormatJpeg()
                         .collectAsState()
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = sourcePreferences.dataSaverImageFormatJpeg(),
+                        preference = sourcePreferences.dataSaverImageFormatJpeg(),
                         title = stringResource(SYMR.strings.data_saver_image_format),
                         subtitle = if (dataSaverImageFormatJpeg) {
                             stringResource(SYMR.strings.data_saver_image_format_summary_on)
@@ -679,7 +679,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     )
                 },
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = sourcePreferences.dataSaverColorBW(),
+                    preference = sourcePreferences.dataSaverColorBW(),
                     title = stringResource(SYMR.strings.data_saver_color_bw),
                     enabled = dataSaver == DataSaver.BANDWIDTH_HERO,
                 ),
@@ -699,7 +699,7 @@ object SettingsAdvancedScreen : SearchableSettings {
             title = stringResource(SYMR.strings.developer_tools),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = unsortedPreferences.isHentaiEnabled(),
+                    preference = unsortedPreferences.isHentaiEnabled(),
                     title = stringResource(SYMR.strings.toggle_hentai_features),
                     subtitle = stringResource(SYMR.strings.toggle_hentai_features_summary),
                     onValueChanged = {
@@ -714,7 +714,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = delegateSourcePreferences.delegateSources(),
+                    preference = delegateSourcePreferences.delegateSources(),
                     title = stringResource(SYMR.strings.toggle_delegated_sources),
                     subtitle = stringResource(
                         SYMR.strings.toggle_delegated_sources_summary,
@@ -724,7 +724,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     ),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = unsortedPreferences.logLevel(),
+                    preference = unsortedPreferences.logLevel(),
                     title = stringResource(SYMR.strings.log_level),
                     subtitle = stringResource(SYMR.strings.log_level_summary),
                     entries = EHLogLevel.entries.mapIndexed { index, ehLogLevel ->
@@ -734,7 +734,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     }.toMap().toImmutableMap(),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = sourcePreferences.enableSourceBlacklist(),
+                    preference = sourcePreferences.enableSourceBlacklist(),
                     title = stringResource(SYMR.strings.enable_source_blacklist),
                     subtitle = stringResource(
                         SYMR.strings.enable_source_blacklist_summary,
@@ -778,7 +778,7 @@ object SettingsAdvancedScreen : SearchableSettings {
                     }
                     Preference.PreferenceItem.SwitchPreference(
                         title = stringResource(SYMR.strings.encrypt_database),
-                        pref = securityPreferences.encryptDatabase(),
+                        preference = securityPreferences.encryptDatabase(),
                         subtitle = stringResource(SYMR.strings.encrypt_database_subtitle),
                         onValueChanged = {
                             if (it) {
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
index c8366f106..fd28b33ad 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
@@ -88,7 +88,7 @@ object SettingsAppearanceScreen : SearchableSettings {
                     }
                 },
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = amoledPref,
+                    preference = amoledPref,
                     title = stringResource(MR.strings.pref_dark_theme_pure_black),
                     enabled = themeMode != ThemeMode.LIGHT,
                     onValueChanged = {
@@ -122,28 +122,28 @@ object SettingsAppearanceScreen : SearchableSettings {
                     onClick = { navigator.push(AppLanguageScreen()) },
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = uiPreferences.tabletUiMode(),
-                    title = stringResource(MR.strings.pref_tablet_ui_mode),
+                    preference = uiPreferences.tabletUiMode(),
                     entries = TabletUiMode.entries
                         .associateWith { stringResource(it.titleRes) }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_tablet_ui_mode),
                     onValueChanged = {
                         context.toast(MR.strings.requires_app_restart)
                         true
                     },
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = uiPreferences.dateFormat(),
-                    title = stringResource(MR.strings.pref_date_format),
+                    preference = uiPreferences.dateFormat(),
                     entries = DateFormats
                         .associateWith {
                             val formattedDate = UiPreferences.dateFormat(it).format(now)
                             "${it.ifEmpty { stringResource(MR.strings.label_default) }} ($formattedDate)"
                         }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_date_format),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.relativeTime(),
+                    preference = uiPreferences.relativeTime(),
                     title = stringResource(MR.strings.pref_relative_format),
                     subtitle = stringResource(
                         MR.strings.pref_relative_format_summary,
@@ -164,16 +164,16 @@ object SettingsAppearanceScreen : SearchableSettings {
             stringResource(SYMR.strings.pref_category_fork),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.expandFilters(),
+                    preference = uiPreferences.expandFilters(),
                     title = stringResource(SYMR.strings.toggle_expand_search_filters),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.recommendsInOverflow(),
+                    preference = uiPreferences.recommendsInOverflow(),
                     title = stringResource(SYMR.strings.put_recommends_in_overflow),
                     subtitle = stringResource(SYMR.strings.put_recommends_in_overflow_summary),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.mergeInOverflow(),
+                    preference = uiPreferences.mergeInOverflow(),
                     title = stringResource(SYMR.strings.put_merge_in_overflow),
                     subtitle = stringResource(SYMR.strings.put_merge_in_overflow_summary),
                 ),
@@ -206,15 +206,15 @@ object SettingsAppearanceScreen : SearchableSettings {
             stringResource(SYMR.strings.pref_category_navbar),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.showNavUpdates(),
+                    preference = uiPreferences.showNavUpdates(),
                     title = stringResource(SYMR.strings.pref_hide_updates_button),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.showNavHistory(),
+                    preference = uiPreferences.showNavHistory(),
                     title = stringResource(SYMR.strings.pref_hide_history_button),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = uiPreferences.bottomBarLabels(),
+                    preference = uiPreferences.bottomBarLabels(),
                     title = stringResource(SYMR.strings.pref_show_bottom_bar_labels),
                 ),
             ),
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
index 40d23eb20..056a8ec1b 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
@@ -67,17 +67,17 @@ object SettingsBrowseScreen : SearchableSettings {
                         )
                     },
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = sourcePreferences.sourcesTabCategoriesFilter(),
+                        preference = sourcePreferences.sourcesTabCategoriesFilter(),
                         title = stringResource(SYMR.strings.pref_source_source_filtering),
                         subtitle = stringResource(SYMR.strings.pref_source_source_filtering_summery),
                     ),
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = uiPreferences.useNewSourceNavigation(),
+                        preference = uiPreferences.useNewSourceNavigation(),
                         title = stringResource(SYMR.strings.pref_source_navigation),
                         subtitle = stringResource(SYMR.strings.pref_source_navigation_summery),
                     ),
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = unsortedPreferences.allowLocalSourceHiddenFolders(),
+                        preference = unsortedPreferences.allowLocalSourceHiddenFolders(),
                         title = stringResource(SYMR.strings.pref_local_source_hidden_folders),
                         subtitle = stringResource(SYMR.strings.pref_local_source_hidden_folders_summery),
                     ),
@@ -87,11 +87,11 @@ object SettingsBrowseScreen : SearchableSettings {
                 title = stringResource(SYMR.strings.feed),
                 preferenceItems = persistentListOf(
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = uiPreferences.hideFeedTab(),
+                        preference = uiPreferences.hideFeedTab(),
                         title = stringResource(SYMR.strings.pref_hide_feed),
                     ),
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = uiPreferences.feedTabInFront(),
+                        preference = uiPreferences.feedTabInFront(),
                         title = stringResource(SYMR.strings.pref_feed_position),
                         subtitle = stringResource(SYMR.strings.pref_feed_position_summery),
                         enabled = hideFeedTab.not(),
@@ -103,7 +103,7 @@ object SettingsBrowseScreen : SearchableSettings {
                 title = stringResource(MR.strings.label_sources),
                 preferenceItems = persistentListOf(
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = sourcePreferences.hideInLibraryItems(),
+                        preference = sourcePreferences.hideInLibraryItems(),
                         title = stringResource(MR.strings.pref_hide_in_library_items),
                     ),
                     Preference.PreferenceItem.TextPreference(
@@ -119,7 +119,7 @@ object SettingsBrowseScreen : SearchableSettings {
                 title = stringResource(MR.strings.pref_category_nsfw_content),
                 preferenceItems = persistentListOf(
                     Preference.PreferenceItem.SwitchPreference(
-                        pref = sourcePreferences.showNsfwSource(),
+                        preference = sourcePreferences.showNsfwSource(),
                         title = stringResource(MR.strings.pref_show_nsfw_source),
                         subtitle = stringResource(MR.strings.requires_app_restart),
                         onValueChanged = {
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
index 9474b6894..cf8253bd5 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
@@ -255,8 +255,7 @@ object SettingsDataScreen : SearchableSettings {
 
                 // Automatic backups
                 Preference.PreferenceItem.ListPreference(
-                    pref = backupPreferences.backupInterval(),
-                    title = stringResource(MR.strings.pref_backup_interval),
+                    preference = backupPreferences.backupInterval(),
                     entries = persistentMapOf(
                         0 to stringResource(MR.strings.off),
                         6 to stringResource(MR.strings.update_6hour),
@@ -265,6 +264,7 @@ object SettingsDataScreen : SearchableSettings {
                         48 to stringResource(MR.strings.update_48hour),
                         168 to stringResource(MR.strings.update_weekly),
                     ),
+                    title = stringResource(MR.strings.pref_backup_interval),
                     onValueChanged = {
                         BackupCreateJob.setupTask(context, it)
                         true
@@ -348,7 +348,7 @@ object SettingsDataScreen : SearchableSettings {
                 ),
                 // SY <--
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = libraryPreferences.autoClearChapterCache(),
+                    preference = libraryPreferences.autoClearChapterCache(),
                     title = stringResource(MR.strings.pref_auto_clear_chapter_cache),
                 ),
             ),
@@ -362,7 +362,7 @@ object SettingsDataScreen : SearchableSettings {
                 title = stringResource(SYMR.strings.pref_sync_service_category),
                 preferenceItems = persistentListOf(
                     Preference.PreferenceItem.ListPreference(
-                        pref = syncPreferences.syncService(),
+                        preference = syncPreferences.syncService(),
                         title = stringResource(SYMR.strings.pref_sync_service),
                         entries = persistentMapOf(
                             SyncManager.SyncService.NONE.value to stringResource(MR.strings.off),
@@ -506,7 +506,7 @@ object SettingsDataScreen : SearchableSettings {
             Preference.PreferenceItem.EditTextPreference(
                 title = stringResource(SYMR.strings.pref_sync_host),
                 subtitle = stringResource(SYMR.strings.pref_sync_host_summ),
-                pref = syncPreferences.clientHost(),
+                preference = syncPreferences.clientHost(),
                 onValueChanged = { newValue ->
                     scope.launch {
                         // Trim spaces at the beginning and end, then remove trailing slash if present
@@ -520,7 +520,7 @@ object SettingsDataScreen : SearchableSettings {
             Preference.PreferenceItem.EditTextPreference(
                 title = stringResource(SYMR.strings.pref_sync_api_key),
                 subtitle = stringResource(SYMR.strings.pref_sync_api_key_summ),
-                pref = syncPreferences.clientAPIKey(),
+                preference = syncPreferences.clientAPIKey(),
             ),
         )
     }
@@ -567,7 +567,7 @@ object SettingsDataScreen : SearchableSettings {
             title = stringResource(SYMR.strings.pref_sync_automatic_category),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = syncIntervalPref,
+                    preference = syncIntervalPref,
                     title = stringResource(SYMR.strings.pref_sync_interval),
                     entries = persistentMapOf(
                         0 to stringResource(MR.strings.off),
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDownloadScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDownloadScreen.kt
index 680d73405..46608659e 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDownloadScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDownloadScreen.kt
@@ -39,15 +39,15 @@ object SettingsDownloadScreen : SearchableSettings {
         val downloadPreferences = remember { Injekt.get<DownloadPreferences>() }
         return listOf(
             Preference.PreferenceItem.SwitchPreference(
-                pref = downloadPreferences.downloadOnlyOverWifi(),
+                preference = downloadPreferences.downloadOnlyOverWifi(),
                 title = stringResource(MR.strings.connected_to_wifi),
             ),
             Preference.PreferenceItem.SwitchPreference(
-                pref = downloadPreferences.saveChaptersAsCBZ(),
+                preference = downloadPreferences.saveChaptersAsCBZ(),
                 title = stringResource(MR.strings.save_chapter_as_cbz),
             ),
             Preference.PreferenceItem.SwitchPreference(
-                pref = downloadPreferences.splitTallImages(),
+                preference = downloadPreferences.splitTallImages(),
                 title = stringResource(MR.strings.split_tall_images),
                 subtitle = stringResource(MR.strings.split_tall_images_summary),
             ),
@@ -72,12 +72,11 @@ object SettingsDownloadScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_category_delete_chapters),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = downloadPreferences.removeAfterMarkedAsRead(),
+                    preference = downloadPreferences.removeAfterMarkedAsRead(),
                     title = stringResource(MR.strings.pref_remove_after_marked_as_read),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = downloadPreferences.removeAfterReadSlots(),
-                    title = stringResource(MR.strings.pref_remove_after_read),
+                    preference = downloadPreferences.removeAfterReadSlots(),
                     entries = persistentMapOf(
                         -1 to stringResource(MR.strings.disabled),
                         0 to stringResource(MR.strings.last_read_chapter),
@@ -86,9 +85,10 @@ object SettingsDownloadScreen : SearchableSettings {
                         3 to stringResource(MR.strings.fourth_to_last),
                         4 to stringResource(MR.strings.fifth_to_last),
                     ),
+                    title = stringResource(MR.strings.pref_remove_after_read),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = downloadPreferences.removeBookmarkedChapters(),
+                    preference = downloadPreferences.removeBookmarkedChapters(),
                     title = stringResource(MR.strings.pref_remove_bookmarked_chapters),
                 ),
                 getExcludedCategoriesPreference(
@@ -105,11 +105,11 @@ object SettingsDownloadScreen : SearchableSettings {
         categories: () -> List<Category>,
     ): Preference.PreferenceItem.MultiSelectListPreference {
         return Preference.PreferenceItem.MultiSelectListPreference(
-            pref = downloadPreferences.removeExcludeCategories(),
-            title = stringResource(MR.strings.pref_remove_exclude_categories),
+            preference = downloadPreferences.removeExcludeCategories(),
             entries = categories()
                 .associate { it.id.toString() to it.visualName }
                 .toImmutableMap(),
+            title = stringResource(MR.strings.pref_remove_exclude_categories),
         )
     }
 
@@ -149,11 +149,11 @@ object SettingsDownloadScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_category_auto_download),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = downloadNewChaptersPref,
+                    preference = downloadNewChaptersPref,
                     title = stringResource(MR.strings.pref_download_new),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = downloadNewUnreadChaptersOnlyPref,
+                    preference = downloadNewUnreadChaptersOnlyPref,
                     title = stringResource(MR.strings.pref_download_new_unread_chapters_only),
                     enabled = downloadNewChapters,
                 ),
@@ -164,8 +164,8 @@ object SettingsDownloadScreen : SearchableSettings {
                         included = included,
                         excluded = excluded,
                     ),
-                    onClick = { showDialog = true },
                     enabled = downloadNewChapters,
+                    onClick = { showDialog = true },
                 ),
             ),
         )
@@ -179,8 +179,7 @@ object SettingsDownloadScreen : SearchableSettings {
             title = stringResource(MR.strings.download_ahead),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = downloadPreferences.autoDownloadWhileReading(),
-                    title = stringResource(MR.strings.auto_download_while_reading),
+                    preference = downloadPreferences.autoDownloadWhileReading(),
                     entries = listOf(0, 2, 3, 5, 10)
                         .associateWith {
                             if (it == 0) {
@@ -190,6 +189,7 @@ object SettingsDownloadScreen : SearchableSettings {
                             }
                         }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.auto_download_while_reading),
                 ),
                 Preference.PreferenceItem.InfoPreference(stringResource(MR.strings.download_ahead_info)),
             ),
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsEhScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsEhScreen.kt
index 72136b9da..bf9e94542 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsEhScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsEhScreen.kt
@@ -43,7 +43,6 @@ import androidx.compose.ui.platform.LocalContext
 import androidx.compose.ui.unit.dp
 import androidx.compose.ui.window.Dialog
 import androidx.compose.ui.window.DialogProperties
-import androidx.core.content.ContextCompat.startActivity
 import eu.kanade.presentation.library.components.SyncFavoritesWarningDialog
 import eu.kanade.presentation.more.settings.Preference
 import eu.kanade.tachiyomi.ui.webview.WebViewActivity
@@ -194,7 +193,7 @@ object SettingsEhScreen : SearchableSettings {
         val context = LocalContext.current
         val value by unsortedPreferences.enableExhentai().collectAsState()
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.enableExhentai(),
+            preference = unsortedPreferences.enableExhentai(),
             title = stringResource(SYMR.strings.enable_exhentai),
             subtitle = if (!value) {
                 stringResource(SYMR.strings.requires_login)
@@ -219,7 +218,7 @@ object SettingsEhScreen : SearchableSettings {
         unsortedPreferences: UnsortedPreferences,
     ): Preference.PreferenceItem.ListPreference<Int> {
         return Preference.PreferenceItem.ListPreference(
-            pref = unsortedPreferences.useHentaiAtHome(),
+            preference = unsortedPreferences.useHentaiAtHome(),
             title = stringResource(SYMR.strings.use_hentai_at_home),
             subtitle = stringResource(SYMR.strings.use_hentai_at_home_summary),
             entries = persistentMapOf(
@@ -237,7 +236,7 @@ object SettingsEhScreen : SearchableSettings {
     ): Preference.PreferenceItem.SwitchPreference {
         val value by unsortedPreferences.useJapaneseTitle().collectAsState()
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.useJapaneseTitle(),
+            preference = unsortedPreferences.useJapaneseTitle(),
             title = stringResource(SYMR.strings.show_japanese_titles),
             subtitle = if (value) {
                 stringResource(SYMR.strings.show_japanese_titles_option_1)
@@ -255,7 +254,7 @@ object SettingsEhScreen : SearchableSettings {
     ): Preference.PreferenceItem.SwitchPreference {
         val value by unsortedPreferences.exhUseOriginalImages().collectAsState()
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.exhUseOriginalImages(),
+            preference = unsortedPreferences.exhUseOriginalImages(),
             title = stringResource(SYMR.strings.use_original_images),
             subtitle = if (value) {
                 stringResource(SYMR.strings.use_original_images_on)
@@ -273,8 +272,7 @@ object SettingsEhScreen : SearchableSettings {
             title = stringResource(SYMR.strings.watched_tags),
             subtitle = stringResource(SYMR.strings.watched_tags_summary),
             onClick = {
-                startActivity(
-                    context,
+                context.startActivity(
                     WebViewActivity.newIntent(
                         context,
                         url = "https://exhentai.org/mytags",
@@ -802,7 +800,7 @@ object SettingsEhScreen : SearchableSettings {
         unsortedPreferences: UnsortedPreferences,
     ): Preference.PreferenceItem.SwitchPreference {
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.exhWatchedListDefaultState(),
+            preference = unsortedPreferences.exhWatchedListDefaultState(),
             title = stringResource(SYMR.strings.watched_list_default),
             subtitle = stringResource(SYMR.strings.watched_list_state_summary),
             enabled = exhentaiEnabled,
@@ -815,7 +813,7 @@ object SettingsEhScreen : SearchableSettings {
         unsortedPreferences: UnsortedPreferences,
     ): Preference.PreferenceItem.ListPreference<String> {
         return Preference.PreferenceItem.ListPreference(
-            pref = unsortedPreferences.imageQuality(),
+            preference = unsortedPreferences.imageQuality(),
             title = stringResource(SYMR.strings.eh_image_quality_summary),
             subtitle = stringResource(SYMR.strings.eh_image_quality),
             entries = persistentMapOf(
@@ -833,7 +831,7 @@ object SettingsEhScreen : SearchableSettings {
     @Composable
     fun enhancedEhentaiView(unsortedPreferences: UnsortedPreferences): Preference.PreferenceItem.SwitchPreference {
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.enhancedEHentaiView(),
+            preference = unsortedPreferences.enhancedEHentaiView(),
             title = stringResource(SYMR.strings.pref_enhanced_e_hentai_view),
             subtitle = stringResource(SYMR.strings.pref_enhanced_e_hentai_view_summary),
         )
@@ -842,7 +840,7 @@ object SettingsEhScreen : SearchableSettings {
     @Composable
     fun readOnlySync(unsortedPreferences: UnsortedPreferences): Preference.PreferenceItem.SwitchPreference {
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.exhReadOnlySync(),
+            preference = unsortedPreferences.exhReadOnlySync(),
             title = stringResource(SYMR.strings.disable_favorites_uploading),
             subtitle = stringResource(SYMR.strings.disable_favorites_uploading_summary),
         )
@@ -867,7 +865,7 @@ object SettingsEhScreen : SearchableSettings {
     @Composable
     fun lenientSync(unsortedPreferences: UnsortedPreferences): Preference.PreferenceItem.SwitchPreference {
         return Preference.PreferenceItem.SwitchPreference(
-            pref = unsortedPreferences.exhLenientSync(),
+            preference = unsortedPreferences.exhLenientSync(),
             title = stringResource(SYMR.strings.ignore_sync_errors),
             subtitle = stringResource(SYMR.strings.ignore_sync_errors_summary),
         )
@@ -942,7 +940,7 @@ object SettingsEhScreen : SearchableSettings {
         val value by unsortedPreferences.exhAutoUpdateFrequency().collectAsState()
         val context = LocalContext.current
         return Preference.PreferenceItem.ListPreference(
-            pref = unsortedPreferences.exhAutoUpdateFrequency(),
+            preference = unsortedPreferences.exhAutoUpdateFrequency(),
             title = stringResource(SYMR.strings.time_between_batches),
             subtitle = if (value == 0) {
                 stringResource(SYMR.strings.time_between_batches_summary_1, stringResource(MR.strings.app_name))
@@ -978,7 +976,7 @@ object SettingsEhScreen : SearchableSettings {
         val value by unsortedPreferences.exhAutoUpdateRequirements().collectAsState()
         val context = LocalContext.current
         return Preference.PreferenceItem.MultiSelectListPreference(
-            pref = unsortedPreferences.exhAutoUpdateRequirements(),
+            preference = unsortedPreferences.exhAutoUpdateRequirements(),
             title = stringResource(SYMR.strings.auto_update_restrictions),
             subtitle = remember(value) {
                 context.stringResource(
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
index 57dcbb83d..f802723ec 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
@@ -100,12 +100,12 @@ object SettingsLibraryScreen : SearchableSettings {
                     onClick = { navigator.push(CategoryScreen()) },
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = libraryPreferences.defaultCategory(),
-                    title = stringResource(MR.strings.default_category),
+                    preference = libraryPreferences.defaultCategory(),
                     entries = ids.zip(labels).toMap().toImmutableMap(),
+                    title = stringResource(MR.strings.default_category),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = libraryPreferences.categorizedDisplaySettings(),
+                    preference = libraryPreferences.categorizedDisplaySettings(),
                     title = stringResource(MR.strings.categorized_display_settings),
                     onValueChanged = {
                         if (!it) {
@@ -157,8 +157,7 @@ object SettingsLibraryScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_category_library_update),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = autoUpdateIntervalPref,
-                    title = stringResource(MR.strings.pref_library_update_interval),
+                    preference = autoUpdateIntervalPref,
                     entries = persistentMapOf(
                         0 to stringResource(MR.strings.update_never),
                         12 to stringResource(MR.strings.update_12hour),
@@ -167,21 +166,22 @@ object SettingsLibraryScreen : SearchableSettings {
                         72 to stringResource(MR.strings.update_72hour),
                         168 to stringResource(MR.strings.update_weekly),
                     ),
+                    title = stringResource(MR.strings.pref_library_update_interval),
                     onValueChanged = {
                         LibraryUpdateJob.setupTask(context, it)
                         true
                     },
                 ),
                 Preference.PreferenceItem.MultiSelectListPreference(
-                    pref = libraryPreferences.autoUpdateDeviceRestrictions(),
-                    enabled = autoUpdateInterval > 0,
-                    title = stringResource(MR.strings.pref_library_update_restriction),
-                    subtitle = stringResource(MR.strings.restrictions),
+                    preference = libraryPreferences.autoUpdateDeviceRestrictions(),
                     entries = persistentMapOf(
                         DEVICE_ONLY_ON_WIFI to stringResource(MR.strings.connected_to_wifi),
                         DEVICE_NETWORK_NOT_METERED to stringResource(MR.strings.network_not_metered),
                         DEVICE_CHARGING to stringResource(MR.strings.charging),
                     ),
+                    title = stringResource(MR.strings.pref_library_update_restriction),
+                    subtitle = stringResource(MR.strings.restrictions),
+                    enabled = autoUpdateInterval > 0,
                     onValueChanged = {
                         // Post to event looper to allow the preference to be updated.
                         ContextCompat.getMainExecutor(context).execute { LibraryUpdateJob.setupTask(context) }
@@ -199,7 +199,7 @@ object SettingsLibraryScreen : SearchableSettings {
                 ),
                 // SY -->
                 Preference.PreferenceItem.ListPreference(
-                    pref = libraryPreferences.groupLibraryUpdateType(),
+                    preference = libraryPreferences.groupLibraryUpdateType(),
                     title = stringResource(SYMR.strings.library_group_updates),
                     entries = persistentMapOf(
                         GroupLibraryMode.GLOBAL to stringResource(SYMR.strings.library_group_updates_global),
@@ -210,27 +210,27 @@ object SettingsLibraryScreen : SearchableSettings {
                 ),
                 // SY <--
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = libraryPreferences.autoUpdateMetadata(),
+                    preference = libraryPreferences.autoUpdateMetadata(),
                     title = stringResource(MR.strings.pref_library_update_refresh_metadata),
                     subtitle = stringResource(MR.strings.pref_library_update_refresh_metadata_summary),
                 ),
                 Preference.PreferenceItem.MultiSelectListPreference(
-                    pref = libraryPreferences.autoUpdateMangaRestrictions(),
-                    title = stringResource(MR.strings.pref_library_update_smart_update),
+                    preference = libraryPreferences.autoUpdateMangaRestrictions(),
                     entries = persistentMapOf(
                         MANGA_HAS_UNREAD to stringResource(MR.strings.pref_update_only_completely_read),
                         MANGA_NON_READ to stringResource(MR.strings.pref_update_only_started),
                         MANGA_NON_COMPLETED to stringResource(MR.strings.pref_update_only_non_completed),
                         MANGA_OUTSIDE_RELEASE_PERIOD to stringResource(MR.strings.pref_update_only_in_release_period),
                     ),
+                    title = stringResource(MR.strings.pref_library_update_smart_update),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = libraryPreferences.newShowUpdatesCount(),
+                    preference = libraryPreferences.newShowUpdatesCount(),
                     title = stringResource(MR.strings.pref_library_update_show_tab_badge),
                 ),
                 // SY -->
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = libraryPreferences.libraryReadDuplicateChapters(),
+                    preference = libraryPreferences.libraryReadDuplicateChapters(),
                     title = stringResource(SYMR.strings.pref_library_mark_duplicate_chapters),
                     subtitle = stringResource(SYMR.strings.pref_library_mark_duplicate_chapters_summary),
                 ),
@@ -247,8 +247,7 @@ object SettingsLibraryScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_chapter_swipe),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = libraryPreferences.swipeToStartAction(),
-                    title = stringResource(MR.strings.pref_chapter_swipe_start),
+                    preference = libraryPreferences.swipeToStartAction(),
                     entries = persistentMapOf(
                         LibraryPreferences.ChapterSwipeAction.Disabled to
                             stringResource(MR.strings.disabled),
@@ -259,10 +258,10 @@ object SettingsLibraryScreen : SearchableSettings {
                         LibraryPreferences.ChapterSwipeAction.Download to
                             stringResource(MR.strings.action_download),
                     ),
+                    title = stringResource(MR.strings.pref_chapter_swipe_start),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = libraryPreferences.swipeToEndAction(),
-                    title = stringResource(MR.strings.pref_chapter_swipe_end),
+                    preference = libraryPreferences.swipeToEndAction(),
                     entries = persistentMapOf(
                         LibraryPreferences.ChapterSwipeAction.Disabled to
                             stringResource(MR.strings.disabled),
@@ -273,6 +272,7 @@ object SettingsLibraryScreen : SearchableSettings {
                         LibraryPreferences.ChapterSwipeAction.Download to
                             stringResource(MR.strings.action_download),
                     ),
+                    title = stringResource(MR.strings.pref_chapter_swipe_end),
                 ),
             ),
         )
@@ -305,7 +305,7 @@ object SettingsLibraryScreen : SearchableSettings {
             enabled = skipPreMigration || migrationSources.isNotEmpty(),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = unsortedPreferences.skipPreMigration(),
+                    preference = unsortedPreferences.skipPreMigration(),
                     title = stringResource(SYMR.strings.skip_pre_migration),
                     subtitle = stringResource(SYMR.strings.pref_skip_pre_migration_summary),
                 ),
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMangadexScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMangadexScreen.kt
index 66a84062c..b97737fa8 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMangadexScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMangadexScreen.kt
@@ -178,7 +178,7 @@ object SettingsMangadexScreen : SearchableSettings {
         sourcePreferences: SourcePreferences,
     ): Preference.PreferenceItem.ListPreference<String> {
         return Preference.PreferenceItem.ListPreference(
-            pref = unsortedPreferences.preferredMangaDexId(),
+            preference = unsortedPreferences.preferredMangaDexId(),
             title = stringResource(SYMR.strings.mangadex_preffered_source),
             subtitle = stringResource(SYMR.strings.mangadex_preffered_source_summary),
             entries = MdUtil.getEnabledMangaDexs(sourcePreferences)
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
index 8605aaed8..c160aafb7 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
@@ -39,45 +39,45 @@ object SettingsReaderScreen : SearchableSettings {
 
         return listOf(
             Preference.PreferenceItem.ListPreference(
-                pref = readerPref.defaultReadingMode(),
-                title = stringResource(MR.strings.pref_viewer_type),
+                preference = readerPref.defaultReadingMode(),
                 entries = ReadingMode.entries.drop(1)
                     .associate { it.flagValue to stringResource(it.stringRes) }
                     .toImmutableMap(),
+                title = stringResource(MR.strings.pref_viewer_type),
             ),
             Preference.PreferenceItem.ListPreference(
-                pref = readerPref.doubleTapAnimSpeed(),
-                title = stringResource(MR.strings.pref_double_tap_anim_speed),
+                preference = readerPref.doubleTapAnimSpeed(),
                 entries = persistentMapOf(
                     1 to stringResource(MR.strings.double_tap_anim_speed_0),
                     500 to stringResource(MR.strings.double_tap_anim_speed_normal),
                     250 to stringResource(MR.strings.double_tap_anim_speed_fast),
                 ),
+                title = stringResource(MR.strings.pref_double_tap_anim_speed),
             ),
             Preference.PreferenceItem.SwitchPreference(
-                pref = readerPref.showReadingMode(),
+                preference = readerPref.showReadingMode(),
                 title = stringResource(MR.strings.pref_show_reading_mode),
                 subtitle = stringResource(MR.strings.pref_show_reading_mode_summary),
             ),
             Preference.PreferenceItem.SwitchPreference(
-                pref = readerPref.showNavigationOverlayOnStart(),
+                preference = readerPref.showNavigationOverlayOnStart(),
                 title = stringResource(MR.strings.pref_show_navigation_mode),
                 subtitle = stringResource(MR.strings.pref_show_navigation_mode_summary),
             ),
             // SY -->
             Preference.PreferenceItem.SwitchPreference(
-                pref = readerPref.forceHorizontalSeekbar(),
+                preference = readerPref.forceHorizontalSeekbar(),
                 title = stringResource(SYMR.strings.pref_force_horz_seekbar),
                 subtitle = stringResource(SYMR.strings.pref_force_horz_seekbar_summary),
             ),
             Preference.PreferenceItem.SwitchPreference(
-                pref = readerPref.landscapeVerticalSeekbar(),
+                preference = readerPref.landscapeVerticalSeekbar(),
                 title = stringResource(SYMR.strings.pref_show_vert_seekbar_landscape),
                 subtitle = stringResource(SYMR.strings.pref_show_vert_seekbar_landscape_summary),
                 enabled = !forceHorizontalSeekbar,
             ),
             Preference.PreferenceItem.SwitchPreference(
-                pref = readerPref.leftVerticalSeekbar(),
+                preference = readerPref.leftVerticalSeekbar(),
                 title = stringResource(SYMR.strings.pref_left_handed_vertical_seekbar),
                 subtitle = stringResource(SYMR.strings.pref_left_handed_vertical_seekbar_summary),
                 enabled = !forceHorizontalSeekbar,
@@ -85,7 +85,7 @@ object SettingsReaderScreen : SearchableSettings {
             // SY <--
             /* SY -->
             Preference.PreferenceItem.SwitchPreference(
-                pref = readerPref.pageTransitions(),
+                preference = readerPref.pageTransitions(),
                 title = stringResource(MR.strings.pref_page_transitions),
             ),
             SY <-- */
@@ -114,39 +114,39 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_category_display),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.defaultOrientationType(),
-                    title = stringResource(MR.strings.pref_rotation_type),
+                    preference = readerPreferences.defaultOrientationType(),
                     entries = ReaderOrientation.entries.drop(1)
                         .associate { it.flagValue to stringResource(it.stringRes) }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_rotation_type),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.readerTheme(),
-                    title = stringResource(MR.strings.pref_reader_theme),
+                    preference = readerPreferences.readerTheme(),
                     entries = persistentMapOf(
                         1 to stringResource(MR.strings.black_background),
                         2 to stringResource(MR.strings.gray_background),
                         0 to stringResource(MR.strings.white_background),
                         3 to stringResource(MR.strings.automatic_background),
                     ),
+                    title = stringResource(MR.strings.pref_reader_theme),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = fullscreenPref,
+                    preference = fullscreenPref,
                     title = stringResource(MR.strings.pref_fullscreen),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.cutoutShort(),
+                    preference = readerPreferences.cutoutShort(),
                     title = stringResource(MR.strings.pref_cutout_short),
                     enabled = fullscreen &&
                         Build.VERSION.SDK_INT >= Build.VERSION_CODES.P &&
                         LocalView.current.rootWindowInsets?.displayCutout != null, // has cutout
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.keepScreenOn(),
+                    preference = readerPreferences.keepScreenOn(),
                     title = stringResource(MR.strings.pref_keep_screen_on),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.showPageNumber(),
+                    preference = readerPreferences.showPageNumber(),
                     title = stringResource(MR.strings.pref_show_page_number),
                 ),
             ),
@@ -169,45 +169,45 @@ object SettingsReaderScreen : SearchableSettings {
             title = "E-Ink",
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.flashOnPageChange(),
+                    preference = readerPreferences.flashOnPageChange(),
                     title = stringResource(MR.strings.pref_flash_page),
                     subtitle = stringResource(MR.strings.pref_flash_page_summ),
                 ),
                 Preference.PreferenceItem.SliderPreference(
                     value = flashMillis / ReaderPreferences.MILLI_CONVERSION,
-                    min = 1,
                     max = 15,
+                    min = 1,
                     steps = 13,
                     title = stringResource(MR.strings.pref_flash_duration),
                     subtitle = stringResource(MR.strings.pref_flash_duration_summary, flashMillis),
+                    enabled = flashPageState,
                     onValueChanged = {
                         flashMillisPref.set(it * ReaderPreferences.MILLI_CONVERSION)
                         true
                     },
-                    enabled = flashPageState,
                 ),
                 Preference.PreferenceItem.SliderPreference(
                     value = flashInterval,
-                    min = 1,
                     max = 10,
+                    min = 1,
                     steps = 8,
                     title = stringResource(MR.strings.pref_flash_page_interval),
                     subtitle = pluralStringResource(MR.plurals.pref_pages, flashInterval, flashInterval),
+                    enabled = flashPageState,
                     onValueChanged = {
                         flashIntervalPref.set(it)
                         true
                     },
-                    enabled = flashPageState,
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = flashColorPref,
-                    title = stringResource(MR.strings.pref_flash_with),
+                    preference = flashColorPref,
                     entries = persistentMapOf(
                         ReaderPreferences.FlashColor.BLACK to stringResource(MR.strings.pref_flash_style_black),
                         ReaderPreferences.FlashColor.WHITE to stringResource(MR.strings.pref_flash_style_white),
                         ReaderPreferences.FlashColor.WHITE_BLACK
                             to stringResource(MR.strings.pref_flash_style_white_black),
                     ),
+                    title = stringResource(MR.strings.pref_flash_with),
                     enabled = flashPageState,
                 ),
             ),
@@ -220,26 +220,26 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_category_reading),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.skipRead(),
+                    preference = readerPreferences.skipRead(),
                     title = stringResource(MR.strings.pref_skip_read_chapters),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.skipFiltered(),
+                    preference = readerPreferences.skipFiltered(),
                     title = stringResource(MR.strings.pref_skip_filtered_chapters),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.skipDupe(),
+                    preference = readerPreferences.skipDupe(),
                     title = stringResource(MR.strings.pref_skip_dupe_chapters),
                 ),
                 // SY -->
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.markReadDupe(),
+                    preference = readerPreferences.markReadDupe(),
                     title = stringResource(SYMR.strings.pref_mark_read_dupe_chapters),
                     subtitle = stringResource(SYMR.strings.pref_mark_read_dupe_chapters_summary),
                 ),
                 // SY <--
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.alwaysShowChapterTransition(),
+                    preference = readerPreferences.alwaysShowChapterTransition(),
                     title = stringResource(MR.strings.pref_always_show_chapter_transition),
                 ),
             ),
@@ -262,16 +262,15 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.pager_viewer),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = navModePref,
-                    title = stringResource(MR.strings.pref_viewer_nav),
+                    preference = navModePref,
                     entries = ReaderPreferences.TapZones
                         .mapIndexed { index, it -> index to stringResource(it) }
                         .toMap()
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_viewer_nav),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.pagerNavInverted(),
-                    title = stringResource(MR.strings.pref_read_with_tapping_inverted),
+                    preference = readerPreferences.pagerNavInverted(),
                     entries = persistentListOf(
                         ReaderPreferences.TappingInvertMode.NONE,
                         ReaderPreferences.TappingInvertMode.HORIZONTAL,
@@ -280,46 +279,47 @@ object SettingsReaderScreen : SearchableSettings {
                     )
                         .associateWith { stringResource(it.titleRes) }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_read_with_tapping_inverted),
                     enabled = navMode != 5,
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = imageScaleTypePref,
-                    title = stringResource(MR.strings.pref_image_scale_type),
+                    preference = imageScaleTypePref,
                     entries = ReaderPreferences.ImageScaleType
                         .mapIndexed { index, it -> index + 1 to stringResource(it) }
                         .toMap()
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_image_scale_type),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.zoomStart(),
-                    title = stringResource(MR.strings.pref_zoom_start),
+                    preference = readerPreferences.zoomStart(),
                     entries = ReaderPreferences.ZoomStart
                         .mapIndexed { index, it -> index + 1 to stringResource(it) }
                         .toMap()
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_zoom_start),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.cropBorders(),
+                    preference = readerPreferences.cropBorders(),
                     title = stringResource(MR.strings.pref_crop_borders),
                 ),
                 // SY -->
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.pageTransitionsPager(),
+                    preference = readerPreferences.pageTransitionsPager(),
                     title = stringResource(MR.strings.pref_page_transitions),
                 ),
                 // SY <--
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.landscapeZoom(),
+                    preference = readerPreferences.landscapeZoom(),
                     title = stringResource(MR.strings.pref_landscape_zoom),
                     enabled = imageScaleType == 1,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.navigateToPan(),
+                    preference = readerPreferences.navigateToPan(),
                     title = stringResource(MR.strings.pref_navigate_pan),
                     enabled = navMode != 5,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = dualPageSplitPref,
+                    preference = dualPageSplitPref,
                     title = stringResource(MR.strings.pref_dual_page_split),
                     onValueChanged = {
                         rotateToFitPref.set(false)
@@ -327,13 +327,13 @@ object SettingsReaderScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.dualPageInvertPaged(),
+                    preference = readerPreferences.dualPageInvertPaged(),
                     title = stringResource(MR.strings.pref_dual_page_invert),
                     subtitle = stringResource(MR.strings.pref_dual_page_invert_summary),
                     enabled = dualPageSplit,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = rotateToFitPref,
+                    preference = rotateToFitPref,
                     title = stringResource(MR.strings.pref_page_rotate),
                     onValueChanged = {
                         dualPageSplitPref.set(false)
@@ -341,7 +341,7 @@ object SettingsReaderScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.dualPageRotateToFitInvert(),
+                    preference = readerPreferences.dualPageRotateToFitInvert(),
                     title = stringResource(MR.strings.pref_page_rotate_invert),
                     enabled = rotateToFit,
                 ),
@@ -367,16 +367,15 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.webtoon_viewer),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = navModePref,
-                    title = stringResource(MR.strings.pref_viewer_nav),
+                    preference = navModePref,
                     entries = ReaderPreferences.TapZones
                         .mapIndexed { index, it -> index to stringResource(it) }
                         .toMap()
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_viewer_nav),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.webtoonNavInverted(),
-                    title = stringResource(MR.strings.pref_read_with_tapping_inverted),
+                    preference = readerPreferences.webtoonNavInverted(),
                     entries = persistentListOf(
                         ReaderPreferences.TappingInvertMode.NONE,
                         ReaderPreferences.TappingInvertMode.HORIZONTAL,
@@ -385,35 +384,36 @@ object SettingsReaderScreen : SearchableSettings {
                     )
                         .associateWith { stringResource(it.titleRes) }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.pref_read_with_tapping_inverted),
                     enabled = navMode != 5,
                 ),
                 Preference.PreferenceItem.SliderPreference(
                     value = webtoonSidePadding,
+                    max = ReaderPreferences.WEBTOON_PADDING_MAX,
+                    min = ReaderPreferences.WEBTOON_PADDING_MIN,
                     title = stringResource(MR.strings.pref_webtoon_side_padding),
                     subtitle = numberFormat.format(webtoonSidePadding / 100f),
-                    min = ReaderPreferences.WEBTOON_PADDING_MIN,
-                    max = ReaderPreferences.WEBTOON_PADDING_MAX,
                     onValueChanged = {
                         webtoonSidePaddingPref.set(it)
                         true
                     },
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.readerHideThreshold(),
-                    title = stringResource(MR.strings.pref_hide_threshold),
+                    preference = readerPreferences.readerHideThreshold(),
                     entries = persistentMapOf(
                         ReaderPreferences.ReaderHideThreshold.HIGHEST to stringResource(MR.strings.pref_highest),
                         ReaderPreferences.ReaderHideThreshold.HIGH to stringResource(MR.strings.pref_high),
                         ReaderPreferences.ReaderHideThreshold.LOW to stringResource(MR.strings.pref_low),
                         ReaderPreferences.ReaderHideThreshold.LOWEST to stringResource(MR.strings.pref_lowest),
                     ),
+                    title = stringResource(MR.strings.pref_hide_threshold),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.cropBordersWebtoon(),
+                    preference = readerPreferences.cropBordersWebtoon(),
                     title = stringResource(MR.strings.pref_crop_borders),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = dualPageSplitPref,
+                    preference = dualPageSplitPref,
                     title = stringResource(MR.strings.pref_dual_page_split),
                     onValueChanged = {
                         rotateToFitPref.set(false)
@@ -421,13 +421,13 @@ object SettingsReaderScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.dualPageInvertWebtoon(),
+                    preference = readerPreferences.dualPageInvertWebtoon(),
                     title = stringResource(MR.strings.pref_dual_page_invert),
                     subtitle = stringResource(MR.strings.pref_dual_page_invert_summary),
                     enabled = dualPageSplit,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = rotateToFitPref,
+                    preference = rotateToFitPref,
                     title = stringResource(MR.strings.pref_page_rotate),
                     onValueChanged = {
                         dualPageSplitPref.set(false)
@@ -435,21 +435,21 @@ object SettingsReaderScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.dualPageRotateToFitInvertWebtoon(),
+                    preference = readerPreferences.dualPageRotateToFitInvertWebtoon(),
                     title = stringResource(MR.strings.pref_page_rotate_invert),
                     enabled = rotateToFit,
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.webtoonDoubleTapZoomEnabled(),
+                    preference = readerPreferences.webtoonDoubleTapZoomEnabled(),
                     title = stringResource(MR.strings.pref_double_tap_zoom),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.webtoonDisableZoomOut(),
+                    preference = readerPreferences.webtoonDisableZoomOut(),
                     title = stringResource(MR.strings.pref_webtoon_disable_zoom_out),
                 ),
                 // SY -->
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.pageTransitionsWebtoon(),
+                    preference = readerPreferences.pageTransitionsWebtoon(),
                     title = stringResource(MR.strings.pref_page_transitions),
                 ),
                 // SY <--
@@ -464,12 +464,12 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.vertical_plus_viewer),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.continuousVerticalTappingByPage(),
+                    preference = readerPreferences.continuousVerticalTappingByPage(),
                     title = stringResource(SYMR.strings.tap_scroll_page),
                     subtitle = stringResource(SYMR.strings.tap_scroll_page_summary),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.cropBordersContinuousVertical(),
+                    preference = readerPreferences.cropBordersContinuousVertical(),
                     title = stringResource(MR.strings.pref_crop_borders),
                 ),
             ),
@@ -485,11 +485,11 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_reader_navigation),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readWithVolumeKeysPref,
+                    preference = readWithVolumeKeysPref,
                     title = stringResource(MR.strings.pref_read_with_volume_keys),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.readWithVolumeKeysInverted(),
+                    preference = readerPreferences.readWithVolumeKeysInverted(),
                     title = stringResource(MR.strings.pref_read_with_volume_keys_inverted),
                     enabled = readWithVolumeKeys,
                 ),
@@ -503,11 +503,11 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_reader_actions),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.readWithLongTap(),
+                    preference = readerPreferences.readWithLongTap(),
                     title = stringResource(MR.strings.pref_read_with_long_tap),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.folderPerManga(),
+                    preference = readerPreferences.folderPerManga(),
                     title = stringResource(MR.strings.pref_create_folder_per_manga),
                     subtitle = stringResource(MR.strings.pref_create_folder_per_manga_summary),
                 ),
@@ -522,7 +522,7 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(SYMR.strings.page_downloading),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.preloadSize(),
+                    preference = readerPreferences.preloadSize(),
                     title = stringResource(SYMR.strings.reader_preload_amount),
                     subtitle = stringResource(SYMR.strings.reader_preload_amount_summary),
                     entries = persistentMapOf(
@@ -537,13 +537,13 @@ object SettingsReaderScreen : SearchableSettings {
                     ),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.readerThreads(),
+                    preference = readerPreferences.readerThreads(),
                     title = stringResource(SYMR.strings.download_threads),
                     subtitle = stringResource(SYMR.strings.download_threads_summary),
                     entries = List(5) { it }.associateWith { it.toString() }.toImmutableMap(),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.cacheSize(),
+                    preference = readerPreferences.cacheSize(),
                     title = stringResource(SYMR.strings.reader_cache_size),
                     subtitle = stringResource(SYMR.strings.reader_cache_size_summary),
                     entries = persistentMapOf(
@@ -566,7 +566,7 @@ object SettingsReaderScreen : SearchableSettings {
                     ),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.aggressivePageLoading(),
+                    preference = readerPreferences.aggressivePageLoading(),
                     title = stringResource(SYMR.strings.aggressively_load_pages),
                     subtitle = stringResource(SYMR.strings.aggressively_load_pages_summary),
                 ),
@@ -581,21 +581,21 @@ object SettingsReaderScreen : SearchableSettings {
             title = stringResource(SYMR.strings.pref_category_fork),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.readerInstantRetry(),
+                    preference = readerPreferences.readerInstantRetry(),
                     title = stringResource(SYMR.strings.skip_queue_on_retry),
                     subtitle = stringResource(SYMR.strings.skip_queue_on_retry_summary),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.preserveReadingPosition(),
+                    preference = readerPreferences.preserveReadingPosition(),
                     title = stringResource(SYMR.strings.preserve_reading_position),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.useAutoWebtoon(),
+                    preference = readerPreferences.useAutoWebtoon(),
                     title = stringResource(SYMR.strings.auto_webtoon_mode),
                     subtitle = stringResource(SYMR.strings.auto_webtoon_mode_summary),
                 ),
                 Preference.PreferenceItem.MultiSelectListPreference(
-                    pref = readerPreferences.readerBottomButtons(),
+                    preference = readerPreferences.readerBottomButtons(),
                     title = stringResource(SYMR.strings.reader_bottom_buttons),
                     subtitle = stringResource(SYMR.strings.reader_bottom_buttons_summary),
                     entries = ReaderBottomButton.entries
@@ -603,7 +603,7 @@ object SettingsReaderScreen : SearchableSettings {
                         .toImmutableMap(),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.pageLayout(),
+                    preference = readerPreferences.pageLayout(),
                     title = stringResource(SYMR.strings.page_layout),
                     subtitle = stringResource(SYMR.strings.automatic_can_still_switch),
                     entries = ReaderPreferences.PageLayouts
@@ -612,12 +612,12 @@ object SettingsReaderScreen : SearchableSettings {
                         .toImmutableMap(),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = readerPreferences.invertDoublePages(),
+                    preference = readerPreferences.invertDoublePages(),
                     title = stringResource(SYMR.strings.invert_double_pages),
                     enabled = pageLayout != PagerConfig.PageLayout.SINGLE_PAGE,
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.centerMarginType(),
+                    preference = readerPreferences.centerMarginType(),
                     title = stringResource(SYMR.strings.center_margin),
                     subtitle = stringResource(SYMR.strings.pref_center_margin_summary),
                     entries = ReaderPreferences.CenterMarginTypes
@@ -626,7 +626,7 @@ object SettingsReaderScreen : SearchableSettings {
                         .toImmutableMap(),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = readerPreferences.archiveReaderMode(),
+                    preference = readerPreferences.archiveReaderMode(),
                     title = stringResource(SYMR.strings.pref_archive_reader_mode),
                     subtitle = stringResource(SYMR.strings.pref_archive_reader_mode_summary),
                     entries = ReaderPreferences.archiveModeTypes
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
index 2aef01827..8bae22750 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
@@ -96,7 +96,7 @@ object SettingsSecurityScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_security),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = useAuthPref,
+                    preference = useAuthPref,
                     title = stringResource(MR.strings.lock_with_biometrics),
                     enabled = authSupported,
                     onValueChanged = {
@@ -106,9 +106,7 @@ object SettingsSecurityScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = securityPreferences.lockAppAfter(),
-                    title = stringResource(MR.strings.lock_when_idle),
-                    enabled = authSupported && useAuth,
+                    preference = securityPreferences.lockAppAfter(),
                     entries = LockAfterValues
                         .associateWith {
                             when (it) {
@@ -118,6 +116,8 @@ object SettingsSecurityScreen : SearchableSettings {
                             }
                         }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.lock_when_idle),
+                    enabled = authSupported && useAuth,
                     onValueChanged = {
                         (context as FragmentActivity).authenticate(
                             title = context.stringResource(MR.strings.lock_when_idle),
@@ -125,25 +125,25 @@ object SettingsSecurityScreen : SearchableSettings {
                     },
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = securityPreferences.hideNotificationContent(),
+                    preference = securityPreferences.hideNotificationContent(),
                     title = stringResource(MR.strings.hide_notification_content),
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = securityPreferences.secureScreen(),
-                    title = stringResource(MR.strings.secure_screen),
+                    preference = securityPreferences.secureScreen(),
                     entries = SecurityPreferences.SecureScreenMode.entries
                         .associateWith { stringResource(it.titleRes) }
                         .toImmutableMap(),
+                    title = stringResource(MR.strings.secure_screen),
                 ),
                 // SY -->
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = securityPreferences.passwordProtectDownloads(),
+                    preference = securityPreferences.passwordProtectDownloads(),
                     title = stringResource(SYMR.strings.password_protect_downloads),
                     subtitle = stringResource(SYMR.strings.password_protect_downloads_summary),
                     enabled = isCbzPasswordSet,
                 ),
                 Preference.PreferenceItem.ListPreference(
-                    pref = securityPreferences.encryptionType(),
+                    preference = securityPreferences.encryptionType(),
                     title = stringResource(SYMR.strings.encryption_type),
                     entries = SecurityPreferences.EncryptionType.entries
                         .associateWith { stringResource(it.titleRes) }
@@ -384,12 +384,12 @@ object SettingsSecurityScreen : SearchableSettings {
             title = stringResource(MR.strings.pref_firebase),
             preferenceItems = persistentListOf(
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = privacyPreferences.crashlytics(),
+                    preference = privacyPreferences.crashlytics(),
                     title = stringResource(MR.strings.onboarding_permission_crashlytics),
                     subtitle = stringResource(MR.strings.onboarding_permission_crashlytics_description),
                 ),
                 Preference.PreferenceItem.SwitchPreference(
-                    pref = privacyPreferences.analytics(),
+                    preference = privacyPreferences.analytics(),
                     title = stringResource(MR.strings.onboarding_permission_analytics),
                     subtitle = stringResource(MR.strings.onboarding_permission_analytics_description),
                 ),
diff --git a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsTrackingScreen.kt b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsTrackingScreen.kt
index 54e3ada14..7c2a5caac 100644
--- a/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsTrackingScreen.kt
+++ b/app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsTrackingScreen.kt
@@ -126,19 +126,19 @@ object SettingsTrackingScreen : SearchableSettings {
 
         return listOf(
             Preference.PreferenceItem.SwitchPreference(
-                pref = trackPreferences.autoUpdateTrack(),
+                preference = trackPreferences.autoUpdateTrack(),
                 title = stringResource(MR.strings.pref_auto_update_manga_sync),
             ),
             Preference.PreferenceItem.ListPreference(
-                pref = trackPreferences.autoUpdateTrackOnMarkRead(),
-                title = stringResource(MR.strings.pref_auto_update_manga_on_mark_read),
+                preference = trackPreferences.autoUpdateTrackOnMarkRead(),
                 entries = AutoTrackState.entries
                     .associateWith { stringResource(it.titleRes) }
                     .toPersistentMap(),
+                title = stringResource(MR.strings.pref_auto_update_manga_on_mark_read),
             ),
             // SY -->
             Preference.PreferenceItem.SwitchPreference(
-                pref = trackPreferences.resolveUsingSourceMetadata(),
+                preference = trackPreferences.resolveUsingSourceMetadata(),
                 title = stringResource(SYMR.strings.pref_tracker_resolve_using_source_metadata),
                 subtitle = stringResource(SYMR.strings.pref_tracker_resolve_using_source_metadata_summary),
             ),
@@ -147,37 +147,31 @@ object SettingsTrackingScreen : SearchableSettings {
                 title = stringResource(MR.strings.services),
                 preferenceItems = persistentListOf(
                     Preference.PreferenceItem.TrackerPreference(
-                        title = trackerManager.myAnimeList.name,
                         tracker = trackerManager.myAnimeList,
                         login = { context.openInBrowser(MyAnimeListApi.authUrl(), forceDefaultBrowser = true) },
                         logout = { dialog = LogoutDialog(trackerManager.myAnimeList) },
                     ),
                     Preference.PreferenceItem.TrackerPreference(
-                        title = trackerManager.aniList.name,
                         tracker = trackerManager.aniList,
                         login = { context.openInBrowser(AnilistApi.authUrl(), forceDefaultBrowser = true) },
                         logout = { dialog = LogoutDialog(trackerManager.aniList) },
                     ),
                     Preference.PreferenceItem.TrackerPreference(
-                        title = trackerManager.kitsu.name,
                         tracker = trackerManager.kitsu,
                         login = { dialog = LoginDialog(trackerManager.kitsu, MR.strings.email) },
                         logout = { dialog = LogoutDialog(trackerManager.kitsu) },
                     ),
                     Preference.PreferenceItem.TrackerPreference(
-                        title = trackerManager.mangaUpdates.name,
                         tracker = trackerManager.mangaUpdates,
                         login = { dialog = LoginDialog(trackerManager.mangaUpdates, MR.strings.username) },
                         logout = { dialog = LogoutDialog(trackerManager.mangaUpdates) },
                     ),
                     Preference.PreferenceItem.TrackerPreference(
-                        title = trackerManager.shikimori.name,
                         tracker = trackerManager.shikimori,
                         login = { context.openInBrowser(ShikimoriApi.authUrl(), forceDefaultBrowser = true) },
                         logout = { dialog = LogoutDialog(trackerManager.shikimori) },
                     ),
                     Preference.PreferenceItem.TrackerPreference(
-                        title = trackerManager.bangumi.name,
                         tracker = trackerManager.bangumi,
                         login = { context.openInBrowser(BangumiApi.authUrl(), forceDefaultBrowser = true) },
                         logout = { dialog = LogoutDialog(trackerManager.bangumi) },
@@ -191,7 +185,6 @@ object SettingsTrackingScreen : SearchableSettings {
                     enhancedTrackers.first
                         .map { service ->
                             Preference.PreferenceItem.TrackerPreference(
-                                title = service.name,
                                 tracker = service,
                                 login = { (service as EnhancedTracker).loginNoop() },
                                 logout = service::logout,