From 9f5284f56cebf49d8a13d5bbfb294c0499bb820d Mon Sep 17 00:00:00 2001 From: Ayman Bagabas Date: Tue, 13 Jan 2026 13:50:45 -0500 Subject: [PATCH] fix(ui): filepicker: defer image preview until after transmission --- internal/ui/dialog/filepicker.go | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/internal/ui/dialog/filepicker.go b/internal/ui/dialog/filepicker.go index e9705f23317c8ad9fab3874cfafafe3bc4d9eb72..8bfdbabd12f54911a7da85842152a17f0ade275a 100644 --- a/internal/ui/dialog/filepicker.go +++ b/internal/ui/dialog/filepicker.go @@ -185,14 +185,17 @@ func (f *FilePicker) HandleMsg(msg tea.Msg) Action { f.previewingImage = allowed if allowed && !fimage.HasTransmitted(selFile, f.imgPrevWidth, f.imgPrevHeight) { + f.previewingImage = false img, err := loadImage(selFile) - if err != nil { - f.previewingImage = false + if err == nil { + cmds = append(cmds, tea.Sequence( + f.imgEnc.Transmit(selFile, img, f.cellSize, f.imgPrevWidth, f.imgPrevHeight), + func() tea.Msg { + f.previewingImage = true + return nil + }, + )) } - - cmds = append(cmds, f.imgEnc.Transmit( - selFile, img, f.cellSize, f.imgPrevWidth, f.imgPrevHeight)) - f.previewingImage = true } } if cmd != nil {