Asset browser: implement fixed-width grid cells
Goal
Implement fixed-width grid cells in the asset browser grid view (instead of variable-width cells that stretch based on filename length), making the layout more organized and professional. Cells scale with zoom level. Filenames that don't fit are trimmed, with the full name shown in a tooltip on hover. Optionally hide file extensions for a cleaner appearance.
Context / integration points
- Current grid cells have inconsistent widths, making the layout look disorganized ("amateurish").
- Many modern asset browsers (Unity, Unreal) use uniform cell sizes.
- Related to zoom improvements (#8 (closed) theme settings) and display options.
- Can coexist with grid size/zoom slider in the settings menu (#3 (closed)).
Design
- Define a cell size (e.g., 80x80 + 16px label area) that scales with zoom.
- Render filenames with text-overflow: ellipsis; show full name in tooltip on hover.
- Optionally hide file extensions (e.g., show
MyTextureinstead ofMyTexture.png) — make this a setting in #3 (closed). - Maintain icon alignment and preview generation.
Tasks
- Define fixed cell dimensions and zoom scaling
- Update grid layout to use fixed-width cells
- Implement text truncation and tooltip on hover (full filename)
- Add a setting to toggle file extension visibility
- Adjust zoom slider to affect cell size proportionally
- Ensure icon rendering stays crisp at all zoom levels
Acceptance criteria
- All grid cells are uniform width/height.
- Filenames are truncated with tooltip fallback.
- The layout looks organized and professional.
- Zoom slider adjusts cell size smoothly.
- File extension toggle works correctly.
Dependencies
Related to #8 (closed) (theme/zoom settings). Can ship independently but benefits from the settings panel.
Out of scope
- Custom column layouts or list view mode (future enhancement).
- Filename editing inline in cells.