Files · Explorer: a folder as a list, tiles or columns, with one path and one order

FileExplorer shows the folder at the end of a path three ways: the
directory listing, a grid of tiles, or a column per folder along the
path with the next folder lit. Its name, its count and a switch of views
sit above one path bar that climbs. A folder opens in place; a file goes
to the host, which lists each folder it goes to. A pick in an earlier
column closes the columns past it, and a new deepest column scrolls into
view. The directory listing takes its pick from its owner and reports
it, so the pick carries across views; its path bar and its first order
are shared. The gallery walks a small file system and shows the tree,
the context menu, renaming in place and a drop zone in use.
This commit is contained in:
ZacharyZhang-NY committed 2026-09-26 20:07:33 -04:00
1 parent 501d1b0f1a
commit 14de69fed6
17 files changed
+991 -41

No files matched your search

+1 -3
View File
@@ -6,7 +6,7 @@ use gpui::{
rems, transparent_black,
};
use super::FileIcon;
use super::{FileIcon, OnEntry};
use crate::{
forms::OnValue,
layout::{columns_for, seeded::use_seeded},
@@ -16,8 +16,6 @@ use crate::{
typography::{LEADING, MiddleEllipsis},
};
type OnEntry = Rc<dyn Fn(&DirEntry, &mut Window, &mut App)>;
/// The tile a key moves to from `at` in `count` tiles laid `columns` a row: across by one, up and down by a row, Home and End to the ends; down from over a short last row lands on its last tile.
pub(crate) fn stepped(at: usize, count: usize, columns: usize, key: &str) -> Option<usize> {
let last = count.checked_sub(1)?;