mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-09 16:14:40 +00:00
Add a "Conversations to load" section to Settings › Messages that lets users choose which chat protocols the inbox loads: NIP-04, NIP-17, NIP-28, NIP-29, Marmot (MLS), Concord, Geolocation (geohash) and Ephemeral chats. Disabling a type both hides its rows from the inbox and drops its kinds/ assemblers from the always-on downloading routes: - New ChatFeedType enum (commons) with stable persisted codes. - AccountSettings.enabledChatFeeds (defaults to all-on); persisted per-device in LocalPreferences as the disabled set, so absence = everything on and any future type defaults enabled. - ChatroomListKnown/NewFeedFilter gate each section (NIP-04 vs NIP-17 split by event type) in both the full build and the incremental update paths. - Each downloading route (rooms-list NIP-04/28/ephemeral/geohash, account gift wraps + Marmot, NIP-29 joined groups, Concord) returns no filters when its type is off and re-arms via a shared launchChatFeedToggleObserver. - AccountFeedContentStates rebuilds both tabs when a toggle flips. - Modernized MessagesSettingsScreen: colorful accent switch cards per type; the NIP-29/Concord display-mode options now only appear while their type is on. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016RbzL9cZk1h88kE7ErgjG5