From 167b254d97a6d5bfcfca9f33c93eb91ac662e4ee Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 9 Oct 2025 15:23:52 +0530 Subject: [PATCH] DRYer --- kittens/choose_files/graphics.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/kittens/choose_files/graphics.go b/kittens/choose_files/graphics.go index d93ef944b..df1ca1441 100644 --- a/kittens/choose_files/graphics.go +++ b/kittens/choose_files/graphics.go @@ -85,15 +85,17 @@ func (self *GraphicsHandler) Initialize(lp *loop.Loop) error { return nil } -func (self *GraphicsHandler) Finalize(lp *loop.Loop) { +func (self *GraphicsHandler) free_image_from_terminal(lp *loop.Loop) { if self.image_transmitted > 0 { - g := self.new_graphics_command() - g.SetAction(graphics.GRT_action_delete).SetDelete(graphics.GRT_free_by_id).SetImageId(self.image_transmitted) - _ = g.WriteWithPayloadToLoop(lp, nil) + self.new_graphics_command().SetAction(graphics.GRT_action_delete).SetDelete(graphics.GRT_free_by_id).SetImageId(self.image_transmitted).WriteWithPayloadToLoop(lp, nil) self.image_transmitted = 0 } } +func (self *GraphicsHandler) Finalize(lp *loop.Loop) { + self.free_image_from_terminal(lp) +} + func (self *GraphicsHandler) ClearPlacements(lp *loop.Loop) { self.current_placement.gc = nil } @@ -189,10 +191,10 @@ func (self *GraphicsHandler) transmit(lp *loop.Loop, img *images.ImageData, m *i s := img.SerializeOnlyMetadata() m = &s } + self.image_transmitted = self.image_id_counter self.last_rendered_image.image_width = m.Width self.last_rendered_image.image_height = m.Height is_animated := len(m.Frames) > 0 - self.image_transmitted = self.image_id_counter frame_control_cmd := self.new_graphics_command() frame_control_cmd.SetAction(graphics.GRT_action_animate).SetImageId(self.image_transmitted) for frame_num, frame := range m.Frames {