From 079420730a57763f9dd0c32fb1e2ca79fc15dd52 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Mon, 29 Jul 2024 10:55:50 -0700 Subject: [PATCH] renderer/metal: address some todos --- src/renderer/Metal.zig | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/renderer/Metal.zig b/src/renderer/Metal.zig index 06d5346b0..47112384a 100644 --- a/src/renderer/Metal.zig +++ b/src/renderer/Metal.zig @@ -1685,7 +1685,7 @@ fn prepKittyVirtualPlacement( }; const rp = p.renderPlacement( - &t.screen.kitty_images, + storage, &image, self.grid_metrics.cell_width, self.grid_metrics.cell_height, @@ -1694,14 +1694,19 @@ fn prepKittyVirtualPlacement( return; }; - // Send our image to the GPU - try self.prepKittyImage(&image); - const viewport: terminal.point.Point = t.screen.pages.pointFromPin( .viewport, rp.top_left, - ) orelse @panic("TODO: unreachable?"); + ) orelse { + // This is unreachable with virtual placements because we should + // only ever be looking at virtual placements that are in our + // viewport in the renderer and virtual placements only ever take + // up one row. + unreachable; + }; + // Send our image to the GPU and store the placement for rendering. + try self.prepKittyImage(&image); try self.image_placements.append(self.alloc, .{ .image_id = image.id, .x = @intCast(rp.top_left.x),