From 87acab5e94e131647ecd09e6210c93a20fa7e451 Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 30 May 2026 12:32:01 -0700 Subject: [PATCH] feat(preview): sort directories before files in directory preview Group directories ahead of files in the directory preview table (Windows Explorer / VSCode style), while preserving the active column sort within each group. The ".." entry remains pinned to the top. Closes #2541 --- frontend/app/view/preview/preview-directory.tsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/frontend/app/view/preview/preview-directory.tsx b/frontend/app/view/preview/preview-directory.tsx index 0940ba43b3..945237f35d 100644 --- a/frontend/app/view/preview/preview-directory.tsx +++ b/frontend/app/view/preview/preview-directory.tsx @@ -431,7 +431,13 @@ function TableBody({ const allRows = table.getRowModel().flatRows; const dotdotRow = allRows.find((row) => row.getValue("name") === ".."); - const otherRows = allRows.filter((row) => row.getValue("name") !== ".."); + const nonDotDotRows = allRows.filter((row) => row.getValue("name") !== ".."); + // group directories ahead of files (Windows Explorer style) while keeping the + // active column sort within each group + const otherRows = [ + ...nonDotDotRows.filter((row) => row.original.isdir), + ...nonDotDotRows.filter((row) => !row.original.isdir), + ]; return (