mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-09 08:04:45 +00:00
Desktop DesktopIAccount.isHidden()/isAcceptable() were stubs (false / deletion-only) and DesktopFeedFilters never consulted them, so muting/blocking a user did nothing. - Add DesktopHiddenUsersState: assembles the kind-10000 mute list (users, hidden words, muted threads) + kind-30000 block list into a live StateFlow<LiveHiddenUsers>, decrypting the private section via the shared Mute/PeopleListDecryptionCache. - Wire DesktopIAccount.isHidden/isAcceptable + the content-filter fields to it. - Chain !note.isHiddenFor(...) into every note-rendering DesktopFeedFilter (global/following/custom/profile/reads/search/notification + thread replies). - DesktopFeedViewModel re-invalidates the feed when the choices change, so mutes hide live without a restart. - Subscribe to the account's kind-10000 mute list in Main.kt so it hydrates. Reuses the shared commons LiveHiddenUsers + Note.isHiddenFor; the chatroom DM list already called isAcceptable, so DMs now enforce mutes too. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>