From c88698659a433ce9f768bf6d4448e0242527436e Mon Sep 17 00:00:00 2001 From: mjkloeckner Date: Mon, 20 Feb 2023 00:02:20 -0300 Subject: [PATCH 1/2] Fix last keystroke not being updated I noticed that while pressing tab the cursor last keystroke was not being updated: ```c for (size_t i = 0; i < 4; ++i) { editor_insert_char(&editor, ' '); } ``` it should be: ```c for (size_t i = 0; i < 4; ++i) { editor_insert_char(&editor, ' '); } editor.last_stroke = SDL_GetTicks(); ``` but instead of updating the last keystroke individualy in every keypress, it's better to update it when a key is pressed. --- src/main.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/main.c b/src/main.c index 02fef765..f1cbd9ac 100644 --- a/src/main.c +++ b/src/main.c @@ -237,7 +237,6 @@ int main(int argc, char **argv) switch (event.key.keysym.sym) { case SDLK_BACKSPACE: { editor_backspace(&editor); - editor.last_stroke = SDL_GetTicks(); } break; @@ -266,13 +265,11 @@ int main(int argc, char **argv) case SDLK_RETURN: { editor_insert_char(&editor, '\n'); - editor.last_stroke = SDL_GetTicks(); } break; case SDLK_DELETE: { editor_delete(&editor); - editor.last_stroke = SDL_GetTicks(); } break; @@ -316,14 +313,12 @@ int main(int argc, char **argv) case SDLK_UP: { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); editor_move_line_up(&editor); - editor.last_stroke = SDL_GetTicks(); } break; case SDLK_DOWN: { editor_update_selection(&editor, event.key.keysym.mod & KMOD_SHIFT); editor_move_line_down(&editor); - editor.last_stroke = SDL_GetTicks(); } break; @@ -334,7 +329,6 @@ int main(int argc, char **argv) } else { editor_move_char_left(&editor); } - editor.last_stroke = SDL_GetTicks(); } break; @@ -345,10 +339,10 @@ int main(int argc, char **argv) } else { editor_move_char_right(&editor); } - editor.last_stroke = SDL_GetTicks(); } break; } + editor.last_stroke = SDL_GetTicks(); } } break; From 08a29de19e67208aaf0accd0471d4b1c51d10962 Mon Sep 17 00:00:00 2001 From: mjkloeckner Date: Mon, 20 Feb 2023 17:14:49 -0300 Subject: [PATCH 2/2] Change tab for spaces --- src/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main.c b/src/main.c index f1cbd9ac..7befd109 100644 --- a/src/main.c +++ b/src/main.c @@ -342,7 +342,7 @@ int main(int argc, char **argv) } break; } - editor.last_stroke = SDL_GetTicks(); + editor.last_stroke = SDL_GetTicks(); } } break;