aboutsummaryrefslogtreecommitdiff
path: root/src/kitty_graphics.rs
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-09-27 21:05:25 +0300
committerGitHub <noreply@github.com>2026-09-27 21:05:25 +0300
commit25aaa0b7e31b0b271ce72a69c9dd272d7ee83376 (patch)
tree9cb45a72cfaa973434532bdf4b872338d64da2f8 /src/kitty_graphics.rs
parent2552d101afe46b8622a7695f38f6cd1766dd1afc (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.rs16
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,