From e8a8b189ba8cc17c3942372da7ad8de3a35f1513 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Thu, 4 Jul 2024 20:10:34 -0700 Subject: [PATCH] core: when over a link we must set the whole screen dirty on move --- src/Surface.zig | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/Surface.zig b/src/Surface.zig index 7df990ad4..cae55e6f7 100644 --- a/src/Surface.zig +++ b/src/Surface.zig @@ -2795,16 +2795,7 @@ pub fn cursorPosCallback( if (self.mouse.link_point) |last_vp| { // Mark the link's row as dirty. if (over_link) { - // TODO: This doesn't handle soft-wrapped links. Ideally this would - // be storing the link's start and end points and marking all rows - // between and including those as dirty, instead of just the row - // containing the part the cursor is hovering. This can result in - // a bit of jank. - if (self.renderer_state.terminal.screen.pages.pin(.{ - .viewport = last_vp, - })) |pin| { - pin.markDirty(); - } + self.renderer_state.terminal.screen.dirty.hyperlink_hover = true; } // If our last link viewport point is unchanged, then don't process