diff --git a/src/Surface.zig b/src/Surface.zig index 84d8cec2b..1cbf256b0 100644 --- a/src/Surface.zig +++ b/src/Surface.zig @@ -3008,18 +3008,25 @@ pub fn performBindingAction(self: *Surface, action: input.Binding.Action) !bool ), .increase_font_size => |delta| { - log.debug("increase font size={}", .{delta}); + // Max delta is somewhat arbitrary. + const clamped_delta = @max(0, @min(255, delta)); + + log.debug("increase font size={}", .{clamped_delta}); var size = self.font_size; - size.points = size.points + delta; + // Max point size is somewhat arbitrary. + size.points = @min(size.points + clamped_delta, 255); try self.setFontSize(size); }, .decrease_font_size => |delta| { - log.debug("decrease font size={}", .{delta}); + // Max delta is somewhat arbitrary. + const clamped_delta = @max(0, @min(255, delta)); + + log.debug("decrease font size={}", .{clamped_delta}); var size = self.font_size; - size.points = @max(1, size.points - delta); + size.points = @max(1, size.points - clamped_delta); try self.setFontSize(size); },