From fdfefffda6b28e2a50ec38cbe9038612ad277e58 Mon Sep 17 00:00:00 2001 From: Tanner Collin Date: Wed, 4 Mar 2026 16:37:38 -0700 Subject: [PATCH] fix: Prevent key buffering during rate limiting Co-authored-by: aider (gemini/gemini-2.5-pro) --- main.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index af3bf37..39aa30e 100755 --- a/main.py +++ b/main.py @@ -43,12 +43,12 @@ def main_loop(stdscr): logging.info('Starting main loop...') while True: - # Rate limit key presses unless in a text input field - if not screens[state.current_screen].is_typing and time.time() < state.last_key_time + 1: - time.sleep(0.05) - else: - c = stdscr.getch() - if c != curses.ERR: + c = stdscr.getch() + if c != curses.ERR: + # Rate limit key presses unless in a text input field + if not screens[state.current_screen].is_typing and time.time() < state.last_key_time + 1: + pass # Key press ignored due to rate limit + else: state.c = c state.last_key_time = time.time() screens[state.current_screen].handle_input(c)