From a0202618c17e3544a88fabee30e640435ccf2c10 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Jul 2026 14:19:19 +0000 Subject: [PATCH] refactor: move per-account setting entries into Account Settings Move the bottom navigation bar entry out of App Settings and into the Account Settings section of the All Settings catalog, since its state is stored per account (AccountNavigationPreferencesInternal.bottomBarItems in the account-synced settings blob). While auditing the App Settings section for other per-account entries, two more were purely per-account and moved alongside it: - Reactions settings (reaction row actions) writes account-synced reactionRowItems and now sits next to the existing "Reactions" entry. - Messages settings writes account-scoped chat feed toggles and view modes (account.settings.enabledChatFeeds / relayGroupViewMode / concordViewMode). The remaining App Settings entries stay put: UI preferences, Home tabs, Profile UI, Calendar reminder, OTS, Namecoin and Resource usage are all device-global, and Compose/Notification settings are mixed (they hold genuine app-global preferences alongside a few per-account toggles). Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01SH88gCbbdTfdzp9wrr7buJ --- .../ui/screen/loggedIn/settings/SettingsCatalogBuilder.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/SettingsCatalogBuilder.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/SettingsCatalogBuilder.kt index d6c3644a7a..f339053981 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/SettingsCatalogBuilder.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/settings/SettingsCatalogBuilder.kt @@ -68,6 +68,7 @@ fun buildSettingsCatalog( symEntry(R.string.media_servers, MaterialSymbols.CloudUpload, R.string.media_servers_search_keywords, Route.EditMediaServers), symEntry(R.string.nests_servers_title, MaterialSymbols.CloudUpload, R.string.nests_servers_search_keywords, Route.EditNestsServers), symEntry(R.string.reactions, MaterialSymbols.FavoriteBorder, R.string.reactions_search_keywords, Route.UpdateReactionType), + symEntry(R.string.reactions_settings, MaterialSymbols.ThumbUp, R.string.reactions_settings_search_keywords, Route.ReactionsSettings), symEntry(R.string.zaps, MaterialSymbols.Bolt, R.string.zaps_search_keywords, Route.UpdateZapAmount()), symEntry(R.string.video_player_settings, MaterialSymbols.VideoSettings, R.string.video_player_search_keywords, Route.VideoPlayerSettings), symEntry(R.string.audio_visualizer_settings, MaterialSymbols.MusicNote, R.string.audio_visualizer_search_keywords, Route.AudioVisualizerSettings), @@ -79,6 +80,8 @@ fun buildSettingsCatalog( symEntry(R.string.relay_auth_settings_title, MaterialSymbols.Lock, R.string.relay_auth_search_keywords, Route.RelayAuthSettings), symEntry(R.string.security_filters, MaterialSymbols.Security, R.string.security_filters_search_keywords, Route.SecurityFilters), symEntry(R.string.call_settings, MaterialSymbols.Phone, R.string.call_settings_search_keywords, Route.CallSettings), + symEntry(R.string.messages_settings, MaterialSymbols.Mail, R.string.messages_settings_search_keywords, Route.MessagesSettings), + symEntry(R.string.bottom_bar_settings, MaterialSymbols.Dashboard, R.string.bottom_bar_search_keywords, Route.BottomBarSettings), symEntry(R.string.translations, MaterialSymbols.Translate, R.string.translations_search_keywords, Route.UserSettings), ), ) @@ -95,11 +98,8 @@ fun buildSettingsCatalog( ) { nav.nav(Route.PrivacyOptions) }, symEntry(R.string.ui_preferences, MaterialSymbols.Settings, R.string.ui_preferences_search_keywords, Route.Settings), symEntry(R.string.route_home, MaterialSymbols.Home, R.string.home_tabs_search_keywords, Route.HomeTabsSettings), - symEntry(R.string.messages_settings, MaterialSymbols.Mail, R.string.messages_settings_search_keywords, Route.MessagesSettings), symEntry(R.string.notification_settings, MaterialSymbols.Notifications, R.string.notification_settings_search_keywords, Route.NotificationSettings), symEntry(R.string.compose_settings, MaterialSymbols.Edit, R.string.compose_search_keywords, Route.ComposeSettings), - symEntry(R.string.reactions_settings, MaterialSymbols.ThumbUp, R.string.reactions_settings_search_keywords, Route.ReactionsSettings), - symEntry(R.string.bottom_bar_settings, MaterialSymbols.Dashboard, R.string.bottom_bar_search_keywords, Route.BottomBarSettings), symEntry(R.string.profile_ui_settings, MaterialSymbols.AccountCircle, R.string.profile_ui_search_keywords, Route.ProfileUiSettings), symEntry(R.string.calendar_reminder_settings_title, MaterialSymbols.CalendarMonth, R.string.calendar_reminder_search_keywords, Route.CalendarReminderSettings), symEntry(R.string.ots_explorer_settings, MaterialSymbols.Search, R.string.ots_explorer_search_keywords, Route.OtsSettings),