diff options
| author | Can Celik <ogulcancelik@gmail.com> | 2026-09-27 21:05:25 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-09-27 21:05:25 +0300 |
| commit | 25aaa0b7e31b0b271ce72a69c9dd272d7ee83376 (patch) | |
| tree | 9cb45a72cfaa973434532bdf4b872338d64da2f8 /src/kitty_graphics.rs | |
| parent | 2552d101afe46b8622a7695f38f6cd1766dd1afc (diff) | |
fix: keep offscreen kitty images loaded instead of resending them on scroll (#4686)
Diffstat (limited to 'src/kitty_graphics.rs')
| -rw-r--r-- | src/kitty_graphics.rs | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/kitty_graphics.rs b/src/kitty_graphics.rs index e69b9df3..f26cd8d9 100644 --- a/src/kitty_graphics.rs +++ b/src/kitty_graphics.rs @@ -335,16 +335,20 @@ fn collect_visible_placements( } }; let mut requested_images = HashSet::new(); - for placement in runtime.kitty_image_placements_with_data_filter(|descriptor| { + let pane_placements = runtime.kitty_image_placements_with_data_filter(|descriptor| { if descriptor.source_file { return false; } terminal_image_needs_data(info.id, descriptor, delivered_images, &mut requested_images) - }) { - let scrollback_offset = runtime - .scroll_metrics() - .map(|m| m.offset_from_bottom as u32) - .unwrap_or(0); + }); + if pane_placements.is_empty() { + continue; + } + let scrollback_offset = runtime + .scroll_metrics() + .map(|m| m.offset_from_bottom as u32) + .unwrap_or(0); + for placement in pane_placements { placements.push(HostPlacement { raw_data: None, pane_id: info.id, |
