From 5a557f19848056a388cc6ac8596b8587d98b3860 Mon Sep 17 00:00:00 2001 From: verdant Date: Thu, 23 Jul 2026 03:02:19 +0800 Subject: Implement keys handling 'q' for quiting, j and k for scrolling up and down in the file manager --- keys.c | 29 +++++++++++++++++++++++++++++ keys.h | 9 +++++++++ 2 files changed, 38 insertions(+) create mode 100644 keys.c create mode 100644 keys.h diff --git a/keys.c b/keys.c new file mode 100644 index 0000000..7bfb2df --- /dev/null +++ b/keys.c @@ -0,0 +1,29 @@ +#include "keys.h" + +#include +#include + +#include "fm.h" +#include "log.h" +#include "wm.h" + +void handling_keys(int ch, terminal *t, fm_info *i) +{ + switch (ch) { + case KEY_RESIZE:; + /* Quit */ + case 'q': + endwin(); + exit(0); + /* Down */ + case 'j': + fm_entries_scrool(t, i, 1); + break; + case 'k': + fm_entries_scrool(t, i, -1); + break; + + default: + return; + } +} diff --git a/keys.h b/keys.h new file mode 100644 index 0000000..9562059 --- /dev/null +++ b/keys.h @@ -0,0 +1,9 @@ +#ifndef SF_KEYS_H +#define SF_KEYS_H + +#include "fm.h" +#include "wm.h" + +void handling_keys(int ch, terminal *t, fm_info *i); + +#endif /* SF_KEYS_H */ -- cgit v1.2.3