Releases
v14.114.0
v14.114.0 — Architecture Overhaul, Performance, Dead Code Cleanup
Compare
Sorry, something went wrong.
No results found
Architecture Overhaul
Decomposed monolithic god-files into focused modules
EventLoopCtx — 24 handler methods extracted from main.rs (1,476 → 421 lines, -71%)
file_mouse.rs — 647-line mouse handler extracted from file_manager.rs (-43%)
file_actions.rs — keyboard action handlers
nav_helpers.rs — navigation history module
clipboard.rs — clipboard utilities with OSC 52 fallback
refresh.rs — async file refresh loop
UI split into 14 modules (5,060 → 386 lines, -92%)
App: 120 flat fields → 13 sub-structs; FileState → 4 sub-structs
Performance
Fixed unconditional redraw on every 250ms Tick (4 redraws/sec → on-demand)
Short-circuit path_colors HashMap lookups when empty
Zero-allocation DIVIDER check
New Features
Marquee drag selection — transparent border rect, Ctrl+drag toggles, Escape cancels
Cross-pane drop on empty space — DropTarget::CurrentDir(pane_idx)
Undo close tab (Ctrl+Shift+T) — max 10 closed tabs restored
14 theme presets — Legacy Red (default), Cyberpunk, Ocean Deep, Solarized, Gruvbox, Dracula, Tokyo Night, Nord, Catppuccin, Rose Pine, One Dark, Monokai, Paper, Terminal
Quality
Tests: 78 → 129 (+65%)
Zero production unwraps
Zero TODO/FIXME/HACK markers
All clippy clean, all doc warnings fixed
Criterion benchmarks for hot paths
Dead code cleanup: removed tile_queue, duplicate path_colors, layout.rs, dead parameter chains
You can’t perform that action at this time.