From 04243d8dfa003c808bd42de57204fa87c41390f5 Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 29 Jul 2026 16:19:17 +0000 Subject: [PATCH] fix: open edit-draft screen when tapping a draft in ThreadView Tapping a note in the thread view toggles the collapse/expand state of its children. For the user's own drafts, tap now opens the edit-draft screen (via routeEditDraftTo) so the post can be resumed, matching the behavior everywhere else a draft is tapped. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01VQCNuxdYkfouNN3ujxm3mR --- .../loggedIn/threadview/ThreadFeedView.kt | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/threadview/ThreadFeedView.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/threadview/ThreadFeedView.kt index 6e603ab36a..735e3a9175 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/threadview/ThreadFeedView.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/threadview/ThreadFeedView.kt @@ -95,6 +95,7 @@ import com.vitorpamplona.amethyst.ui.components.ZoomableContentView import com.vitorpamplona.amethyst.ui.feeds.RefresheableBox import com.vitorpamplona.amethyst.ui.navigation.navs.EmptyNav import com.vitorpamplona.amethyst.ui.navigation.navs.INav +import com.vitorpamplona.amethyst.ui.navigation.routes.routeEditDraftTo import com.vitorpamplona.amethyst.ui.navigation.routes.routeFor import com.vitorpamplona.amethyst.ui.navigation.routes.routeToMessage import com.vitorpamplona.amethyst.ui.note.CheckAndDisplayEditStatus @@ -512,7 +513,23 @@ fun RenderThreadFeed( if (item.idHex == noteId) mutableStateOf(selectedNoteColor) else null } - val onCollapse = remember(item) { { viewModel.toggleCollapsed(item.idHex) } } + // Tapping a reply collapses/expands its children, except for the user's own + // drafts: those open the edit-draft screen so the post can be resumed, matching + // the behavior everywhere else a draft is tapped. + val onClick = + remember(item) { + { + if (item.isDraft()) { + nav.nav { + withContext(Dispatchers.IO) { + routeEditDraftTo(item, accountViewModel.account) + } + } + } else { + viewModel.toggleCollapsed(item.idHex) + } + } + } NoteCompose( baseNote = item, @@ -523,7 +540,7 @@ fun RenderThreadFeed( parentBackgroundColor = background, accountViewModel = accountViewModel, nav = nav, - onClick = onCollapse, + onClick = onClick, ) }