Merge pull request #3 from m1ngsama/feature/vim-keybindings

feat: Add Vim keybindings (j/k) for navigation in TUI
This commit is contained in:
m1ng 2025-11-19 16:52:29 +08:00 committed by GitHub
commit 1675aa80ff

View file

@ -93,9 +93,9 @@ void run_tui(const std::vector<IcsEvent> &events) {
int ch = getch(); int ch = getch();
if (ch == 'q' || ch == 'Q') { if (ch == 'q' || ch == 'Q') {
break; break;
} else if (ch == KEY_UP) { } else if (ch == KEY_UP || ch == 'k') {
if (selected > 0) selected--; if (selected > 0) selected--;
} else if (ch == KEY_DOWN) { } else if (ch == KEY_DOWN || ch == 'j') {
if (selected + 1 < (int)events.size()) selected++; if (selected + 1 < (int)events.size()) selected++;
} }
} }
@ -135,11 +135,13 @@ int run_portal_tui() {
int ch = getch(); int ch = getch();
switch (ch) { switch (ch) {
case KEY_UP: case KEY_UP:
case 'k':
if (selected > 0) { if (selected > 0) {
selected--; selected--;
} }
break; break;
case KEY_DOWN: case KEY_DOWN:
case 'j':
if (selected < (int)menu_items.size() - 1) { if (selected < (int)menu_items.size() - 1) {
selected++; selected++;
} }