refactor(files): files page rework with unified gcode loader, metadata page and USB mount fixes - #291
Open
gmmcosta15 wants to merge 31 commits into
Open
refactor(files): files page rework with unified gcode loader, metadata page and USB mount fixes#291gmmcosta15 wants to merge 31 commits into
gmmcosta15 wants to merge 31 commits into
Conversation
…a, USB embedded-thumbnail fallback, themed material-filter combobox (+VLAN), subdir add/remove/selection fixes, LRU caches
…nd metadata detail page
… file list and metadata detail page with touch-scroll and themed combobox
…tyle combobox (centered, gray bg, black arrow, non-bold)
…mlink dir auto-refresh, file-info button in confirm box
…x, trim/reorder/enlarge metadata rows, USB symlink dir auto-refresh, crash-safe list model
… in confirm box, cleaner unified metadata rows
…ta rows and combobox popup
…t, Nozzle Temp label
…pand-arrow double-tap, O(N^2) rebuild, late thumbnail repaint
…on opens metadata, drop chamber temp
… metadata parse, drop history loader
…erver-side thumbnail probe, shared gcode loader base
… add symlink-liveness tests, and flatten _raw_value/editorEvent complexity
…aths and USB DRIVE names, add a settle refresh, plus mutation/typecheck/semgrep tooling gates
… under a literal ~
…cate hardware_removed connection
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Rework of the files page and its data layer, plus the USB mount path that fed it. 30 commits, 32 files, +3491/-1790.
Files page and metadata
gcode_loaderunifying gcode metadata and thumbnail parsing, table-driven, with a tail RAM cap.metadataPagewith categorized 2x2 cards, units, key-left/value-right rows and touch scroll.blocks_comboboxfor material filtering, opaque popup, matched row font.estimated_time, new sort_asc/sort_desc icons.Fixes
~because the cfg value was never expanded, so no drive ever appeared and stale links could not be reaped.device_mounted/device_unmountedwere declared and wired but never emitted, so drives showed on unplug instead of insert.os.path.existsfollows the link, nowos.path.ismount(os.path.realpath(...)).Motivation
The files page mixed data ownership, parsing and presentation, which made USB behaviour unfixable in place. The USB layer was separately broken end to end: the symlink was never created on any printer, so the UI had nothing to show and a manual refresh was the only workaround.
Tests