From 8fa00affda48e06a759915bf12e01a5ffca65e45 Mon Sep 17 00:00:00 2001 From: verdant Date: Mon, 3 Aug 2026 21:01:05 +0800 Subject: Add width character and icon support --- src/fm.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src/fm.c') diff --git a/src/fm.c b/src/fm.c index 865822c..ea6a816 100644 --- a/src/fm.c +++ b/src/fm.c @@ -2,6 +2,7 @@ #include "fm.h" #include "display.h" #include "err.h" +#include "icon.h" #include "log.h" #include "process.h" #include "utils.h" @@ -323,18 +324,23 @@ fm_draw_entries(window *window, file_list *list, size_t cursor, int top, for (int i = top; i < bottom && (size_t)i < list->count; i++) { int y = i - top; - int color = 0; - if ((size_t)i == cursor) + + const char *icon = + get_file_icon(list->items[i].name, list->items[i].is_dir); + + if ((size_t)i == cursor) { color = COLOR_PAIR_FM_HL; - else if (list->items[i].is_dir) + } else if (list->items[i].is_dir) { color = COLOR_PAIR_FM_DIR; + } if (color != 0) { wattron(window->win, COLOR_PAIR(color)); } - mvwprintw(window->win, y, 0, "%s", list->items[i].name); + mvwprintw(window->win, y, 0, "%s %s", icon, + list->items[i].name); if (color != 0) { wattroff(window->win, COLOR_PAIR(color)); -- cgit v1.2.3