The crate had two maps from a file's name to its icon, in chat and in the file tree, and they disagreed. One map now lives in primitives, over the Lucide file-* icons, and chat, agent, the file tree and the directory listing use it. FileIcon draws it for a file or a folder. FileItem is a file's row, a ListItem with its size and when it changed. FileList is the directory listing. FileGrid lays tiles in the order given, with a cursor seeded from the owner's pick: arrows by tile and by row, Home, End, Enter and a double press to open. The count of what fits a width has one home, layout's columns_for, and fit builds on it.
28 lines
712 B
Rust
28 lines
712 B
Rust
mod backdrop;
|
|
mod disclosure;
|
|
mod divider;
|
|
mod files;
|
|
mod focus;
|
|
mod ghost;
|
|
mod icon;
|
|
mod image;
|
|
mod measure;
|
|
mod pressable;
|
|
mod severity;
|
|
mod tooltip;
|
|
|
|
pub use backdrop::{Backdrop, Place};
|
|
pub use disclosure::Disclosure;
|
|
pub use divider::Divider;
|
|
pub(crate) use files::file_icon;
|
|
pub use focus::{FocusNext, FocusPrev, FocusRing, FocusScope};
|
|
pub(crate) use focus::{Takeover, give_back, hand_back, hold_focus, tab_stop, take_focus};
|
|
pub use ghost::DragGhost;
|
|
pub use icon::{Icon, IconName};
|
|
pub use image::Image;
|
|
pub(crate) use image::{checked_ratio, framed};
|
|
pub use measure::{IntersectionObserver, Measure};
|
|
pub use pressable::Pressable;
|
|
pub use severity::Severity;
|
|
pub use tooltip::{Tooltip, TooltipTrigger};
|