From 7c19236fa6b4721fe62d344b912142bf55408bf4 Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Thu, 15 Jan 2026 15:16:12 +0100 Subject: [PATCH 1/2] fix: unrendered_input_events_count should reset on render --- src/tui/tui.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tui/tui.zig b/src/tui/tui.zig index f31369e..7052e5f 100644 --- a/src/tui/tui.zig +++ b/src/tui/tui.zig @@ -655,6 +655,7 @@ fn render(self: *Self) void { defer frame.deinit(); self.rdr_.render() catch |e| self.logger.err("render", e); tracy.frameMark(); + self.unrendered_input_events_count = 0; } self.top_layer_reset(); @@ -664,7 +665,6 @@ fn render(self: *Self) void { self.idle_frame_count + 1; if (more or self.idle_frame_count < idle_frames or self.no_sleep) { - self.unrendered_input_events_count = 0; if (!self.frame_clock_running) { self.frame_clock.start() catch {}; self.frame_clock_running = true; From ba86f3466931e46b1cb3d5b074f89c449e1ec23e Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Thu, 15 Jan 2026 15:16:38 +0100 Subject: [PATCH 2/2] fix: don't render for all plain mouse move events --- src/tui/tui.zig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/tui/tui.zig b/src/tui/tui.zig index 7052e5f..e89336c 100644 --- a/src/tui/tui.zig +++ b/src/tui/tui.zig @@ -718,7 +718,8 @@ fn dispatch_mouse(ctx: *anyopaque, y: c_int, x: c_int, cbor_msg: []const u8) voi self.update_mouse_idle_timer(); const m: tp.message = .{ .buf = cbor_msg }; const from = tp.self_pid(); - self.unrendered_input_events_count += 1; + if (!(m.match(.{ "M", tp.more }) catch false)) + self.unrendered_input_events_count += 1; const send_func = if (self.drag_source) |_| &send_mouse_drag else &send_mouse; send_func(self, y, x, from, m) catch |e| self.logger.err("dispatch mouse", e); var btn: input.MouseType = 0;